Systems and methods of directory entry encodings
First Claim
Patent Images
1. A system for filename lookup that supports multiple character encodings, comprising:
- a computer system comprising a processor, a memory accessible by the processor, an indexed data structure stored on the memory, and at least one executable software module stored on the memory, wherein the at least one executable software module is executed by the processor, and wherein the at least one executable software module is configured to;
receive a request from a first process to store a name into an indexed data structure, the name in a first character encoding;
convert the name in the first character encoding into a first key, the first key based on a standard character encoding;
store a data element associated with the first key into the indexed data structure, the data element comprising an encoding tag identifying the first character encoding, the byte values of the name in the first character encoding, and address data for locating file data associated with the name;
receive a request from a second process to retrieve the data element, the request comprising the name in a second character encoding;
convert the name in the second character encoding into a second key, the second key based on the standard character encoding;
retrieve at least the address data of a data element indexed by the second key, from the indexed data structure if there is a data element indexed by the second key; and
return at least the retrieved address data, if any, to the second process if there is a data element indexed by the second key.
12 Assignments
0 Petitions
Accused Products
Abstract
In general, the invention relates to supporting multiple different character encodings in the same file system. In one embodiment, a method is provided for filename lookup that supports multiple character encodings. The method comprises storing filename data in a first character encoding into an indexed data structure. The method further comprises receiving filename data in a second encoding. The method also comprises looking up filename data in the indexed data structure using the second encoding.
258 Citations
22 Claims
-
1. A system for filename lookup that supports multiple character encodings, comprising:
a computer system comprising a processor, a memory accessible by the processor, an indexed data structure stored on the memory, and at least one executable software module stored on the memory, wherein the at least one executable software module is executed by the processor, and wherein the at least one executable software module is configured to; receive a request from a first process to store a name into an indexed data structure, the name in a first character encoding; convert the name in the first character encoding into a first key, the first key based on a standard character encoding; store a data element associated with the first key into the indexed data structure, the data element comprising an encoding tag identifying the first character encoding, the byte values of the name in the first character encoding, and address data for locating file data associated with the name; receive a request from a second process to retrieve the data element, the request comprising the name in a second character encoding; convert the name in the second character encoding into a second key, the second key based on the standard character encoding; retrieve at least the address data of a data element indexed by the second key, from the indexed data structure if there is a data element indexed by the second key; and return at least the retrieved address data, if any, to the second process if there is a data element indexed by the second key. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14)
-
12. A method for filename lookup that supports multiple character encodings, comprising:
-
storing, on a computer system, an indexed data structure, the computer system comprising a processor and memory; receiving, at the computer system, a request from a first process to store a name into an indexed data structure, the name in a first character encoding; converting, by the computer system, the name in the first character encoding into a first converted name in a standard character encoding; converting, by the computer system, the first converted name in the standard character encoding into a first key; storing a data element associated with the first key into the indexed data structure, the data element comprising an encoding tag identifying the first character encoding, the byte values of the name in the first character encoding, and address data for locating file data associated with the name; receiving a request, by the computer system, from a second process to retrieve the data element, the request comprising the name in a second character encoding; converting, by the computer system, the name in the second character encoding into a second converted name in a standard character encoding; converting, by the computer system, the second converted name in the standard character encoding into a second key; determining, by the computer system, whether one or more data elements within the indexed data structure correspond to the second key; if it is determined that one or more data elements within the indexed data structure correspond to the second key; traversing, by the computer system, one or more data elements within the indexed data structure that correspond to the second key; comparing, by the computer system, the name to the one or more data elements that correspond to the second key; determining, by the computer system, an exact match, if any, between the one or more data elements that correspond to the second key and the name; if an exact match is determined, returning, by the computer system, the data associated with the exact matched data element to the second process, otherwise if an exact match is not determined, determining, by the computer system, the best match between the one or more data elements that correspond to the second key and the name; and returning, by the computer system, data associated with the best matched data element to the second process. - View Dependent Claims (13, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification