An operating system provides a common name space for both long filenames and short filenames. In this common namespace, a long filename and a short filename are provided for each file. Each file has a short filename directory entry and may have at least one long filename directory entry associated with it. The number of long filename directory entries that are associated with a file depends on the number of characters in the long filename of the file. The long filename directory entries are configured to minimize compatibility problems with existing installed program bases. |
Citations|
| US4780821 | Jul 29, 1986 | Oct 25, 1988 | International Business Machines Corp. | Method for multiple programs management within a network having a server computer and a plurality of remote computers | | US4987531 | May 18, 1988 | Jan 22, 1991 | Hitachi, Ltd. | File system management method and file management system | | US5307494 | Feb 26, 1993 | Apr 26, 1994 | Fuji Xerox Co., Ltd. | File name length augmentation method | | US5313646 | Jun 10, 1991 | May 17, 1994 | Sun Microsystems, Inc. | Method and apparatus for translucent file system | | US5359725 | Oct 15, 1991 | Oct 25, 1994 | Time Warner Interactive Group, Inc. | Method of creating CD-ROM image of files of different format with proper directories to be read by respective operating systems | | US5363487 | Aug 29, 1989 | Nov 8, 1994 | Microsoft Corporation | Method and system for dynamic volume tracking in an installable file system | | US5371885 | Aug 29, 1989 | Dec 6, 1994 | Microsoft Corporation | High performance file system | | US5388257 | May 23, 1994 | Feb 7, 1995 | AT&T Corp. | Method and apparatus for operating a computer based file system | | US5392427 | May 18, 1993 | Feb 21, 1995 | Microsoft Corporation | System for updating data stored on a flash-erasable, programmable, read-only memory (FEPROM) based upon predetermined bit value of indicating pointers | | US5412808 | Mar 10, 1993 | May 2, 1995 | AT&T Corp. | System for parsing extended file names in an operating system | | US5421001 | May 1, 1992 | May 30, 1995 | Wang Laboratories, Inc. | Computer method and apparatus for a table driven file interface | | US5434974 | Mar 30, 1992 | Jul 18, 1995 | International Business Machines Corporation | Name resolution for a multisystem network | | US5437029 | Mar 30, 1994 | Jul 25, 1995 | Matsushita Electric Industrial Co., Ltd. | Path name resolution method providing fixed speed of file accessing in computer network | | US5483652 | Jan 24, 1994 | Jan 9, 1996 | Digital Equipment Corporation | Mechanism for locating without search discrete application resources known by common name only in a distributed network computing environment | | US5535375 | Oct 11, 1994 | Jul 9, 1996 | International Business Machines Corporation | File manager for files shared by heterogeneous clients |
Referenced by|
| US6065053 | Oct 1, 1997 | May 16, 2000 | Micron Electronics, Inc. | System for resetting a server | | US6073255 | Oct 1, 1997 | Jun 6, 2000 | Micron Electronics, Inc. | Method of reading system log | | US6088816 | Oct 1, 1997 | Jul 11, 2000 | Micron Electronics, Inc. | Method of displaying system status | | US6122758 | Oct 1, 1997 | Sep 19, 2000 | Micron Electronics, Inc. | System for mapping environmental resources to memory for program access | | US6134668 | Oct 1, 1997 | Oct 17, 2000 | Micron Electronics, Inc. | Method of selective independent powering of portion of computer system through remote interface from remote interface power supply | | US6134673 | Oct 1, 1997 | Oct 17, 2000 | Micron Electronics, Inc. | Method for clustering software applications | | US6138179 | Oct 1, 1997 | Oct 24, 2000 | Micron Electronics, Inc. | System for automatically partitioning and formatting a primary hard disk for installing software in which selection of extended partition size is not related to size of hard disk | | US6138250 | Oct 1, 1997 | Oct 24, 2000 | Micron Electronics, Inc. | System for reading system log | | US6144969 | Jan 8, 1998 | Nov 7, 2000 | Sony Corporation | File name conversion | | US6145098 | Oct 1, 1997 | Nov 7, 2000 | Micron Electronics, Inc. | System for displaying system status | | US6154835 | Oct 1, 1997 | Nov 28, 2000 | Micron Electronics, Inc. | Method for automatically configuring and formatting a computer system and installing software | | US6163849 | Oct 1, 1997 | Dec 19, 2000 | Micron Electronics, Inc. | Method of powering up or powering down a server to a maintenance state | | US6163853 | Oct 1, 1997 | Dec 19, 2000 | Micron Electronics, Inc. | Method for communicating a software-generated pulse waveform between two servers in a network | | US6170028 | Oct 1, 1997 | Jan 2, 2001 | Micron Electronics, Inc. | Method for hot swapping a programmable network adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals | | US6170067 | Oct 1, 1997 | Jan 2, 2001 | Micron Technology, Inc. | System for automatically reporting a system failure in a server | | US6173346 | Oct 1, 1997 | Jan 9, 2001 | Micron Electronics, Inc. | Method for hot swapping a programmable storage adapter using a programmable processor for selectively enabling or disabling power to adapter slot in response to respective request signals | | US6179486 | Oct 1, 1997 | Jan 30, 2001 | Micron Electronics, Inc. | Method for hot add of a mass storage adapter on a system including a dynamically loaded adapter driver | | US6182180 | Oct 1, 1997 | Jan 30, 2001 | Micron Electronics, Inc. | Apparatus for interfacing buses | | US6189109 | Oct 1, 1997 | Feb 13, 2001 | Micron Electronics, Inc. | Method of remote access and control of environmental conditions | | US6192434 | Oct 1, 1997 | Feb 20, 2001 | Micron Electronics, INC | System for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals | | US6195717 | Oct 1, 1997 | Feb 27, 2001 | Micron Electronics, Inc. | Method of expanding bus loading capacity | | US6199173 | Oct 1, 1997 | Mar 6, 2001 | Micron Electronics, Inc. | Method for mapping environmental resources to memory for program access | | US6202111 | Oct 1, 1997 | Mar 13, 2001 | Micron Electronics, Inc. | Method for the hot add of a network adapter on a system including a statically loaded adapter driver | | US6202160 | Oct 1, 1997 | Mar 13, 2001 | Micron Electronics, Inc. | System for independent powering of a computer system | | US6205503 | Jul 17, 1998 | Mar 20, 2001 | | Method for the hot swap and add of input/output platforms and devices | | US6212585 | Oct 1, 1997 | Apr 3, 2001 | Micron Electronics, Inc. | Method of automatically configuring a server after hot add of a device | | US6219734 | Oct 1, 1997 | Apr 17, 2001 | Micron Electronics, Inc. | Method for the hot add of a mass storage adapter on a system including a statically loaded adapter driver | | US6223234 | Jul 17, 1998 | Apr 24, 2001 | Micron Electronics, Inc. | Apparatus for the hot swap and add of input/output platforms and devices | | US6243773 | Oct 1, 1997 | Jun 5, 2001 | Micron Electronics, Inc. | Configuration management system for hot adding and hot replacing devices | | US6243838 | Oct 1, 1997 | Jun 5, 2001 | Micron Electronics, Inc. | Method for automatically reporting a system failure in a server | | US6247079 | Oct 1, 1997 | Jun 12, 2001 | Micron Electronics, INC | Apparatus for computer implemented hot-swap and hot-add | | US6247080 | Oct 1, 1997 | Jun 12, 2001 | Micron Electronics, Inc. | Method for the hot add of devices | | US6249782 | Dec 17, 1998 | Jun 19, 2001 | Apple Computer, Inc. | System and method for reducing file name length and for retrieving the reduced file name entitled files | | US6249828 | Oct 1, 1997 | Jun 19, 2001 | Micron Electronics, Inc. | Method for the hot swap of a mass storage adapter on a system including a statically loaded adapter driver | | US6249834 | Oct 1, 1997 | Jun 19, 2001 | Micron Technology, Inc. | System for expanding PCI bus loading capacity | | US6249885 | Oct 1, 1997 | Jun 19, 2001 | | Method for managing environmental conditions of a distributed processor system | | US6253334 | Oct 1, 1997 | Jun 26, 2001 | Micron Electronics, Inc. | Three bus server architecture with a legacy PCI bus and mirrored I/O PCI buses | | US6263387 | Oct 1, 1997 | Jul 17, 2001 | Micron Electronics, Inc. | System for automatically configuring a server after hot add of a device | | US6266721 | Oct 1, 1997 | Jul 24, 2001 | Micron Electronics, Inc. | System architecture for remote access and control of environmental management | | US6269412 | Oct 1, 1997 | Jul 31, 2001 | Micron Technology, Inc. | Apparatus for recording information system events | | US6269417 | Oct 1, 1997 | Jul 31, 2001 | Micron Technology, Inc. | Method for determining and displaying the physical slot number of an expansion bus device | | US6272648 | Oct 1, 1997 | Aug 7, 2001 | Micron Electronics, Inc. | System for communicating a software-generated pulse waveform between two servers in a network | | US6282673 | Oct 1, 1997 | Aug 28, 2001 | Micron Technology, Inc. | Method of recording information system events | | US6286013 | Jan 28, 1997 | Sep 4, 2001 | Microsoft Corporation | Method and system for providing a common name space for long and short file names in an operating system | | US6292905 | Oct 2, 1997 | Sep 18, 2001 | Micron Technology, Inc. | Method for providing a fault tolerant network using distributed server processes to remap clustered network resources to other servers during server failure | | US6304929 | Oct 1, 1997 | Oct 16, 2001 | Micron Electronics, Inc. | Method for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals | | US6324608 | Oct 1, 1997 | Nov 27, 2001 | Micron Electronics | Method for hot swapping of network components | | US6330690 | Oct 1, 1997 | Dec 11, 2001 | Micron Electronics, Inc. | Method of resetting a server | | US6332202 | Oct 11, 2000 | Dec 18, 2001 | Micron Technology, Inc. | Method of remote access and control of environmental conditions | | US6341322 | Feb 25, 1999 | Jan 22, 2002 | Micron Electronics, Inc. | Method for interfacing two buses | | US6418492 | Oct 1, 1997 | Jul 9, 2002 | Micron Electronics | Method for computer implemented hot-swap and hot-add | | US6480867 | Jul 6, 1999 | Nov 12, 2002 | International Business Machines Corporation | System and method for managing filesystem objects in a multilingual distributed environment | | US6484226 | Jun 19, 2001 | Nov 19, 2002 | Micron Technology, Inc. | System and method for the add or swap of an adapter on an operating computer | | US6499073 | Oct 1, 1997 | Dec 24, 2002 | Micron Electronics, Inc. | System using programmable processor for selectively enabling or disabling power to adapter in response to respective request signals | | US6523131 | Sep 8, 2000 | Feb 18, 2003 | Micron Technology, Inc. | Method for communicating a software-generated pulse waveform between two servers in a network | | US6598173 | Oct 11, 2000 | Jul 22, 2003 | Micron Technology, Inc. | Method of remote access and control of environmental conditions | | US6604207 | Mar 23, 2001 | Aug 5, 2003 | Micron Technology, Inc. | System architecture for remote access and control of environmental management | | US6636844 | Mar 15, 2000 | Oct 21, 2003 | Olympus Optical Co., Ltd. | METHOD AND APPARATUS FOR PRODUCING A FILE NAME IN AN IMAGE MANIPULATING SYSTEM HAVING A MEMORY DEVICE IN WHICH A FILE NAME AND A SECOND TRAIN OF CHARACTERS IS PROVIDED WHEREIN A FILE NUMBER IS AUTOMATICALLY GENERATED BY INCREMENTING A FILE NUMBER PREVIOUSLY ASSIGNED AND STORED IN MEMORY | | US6697963 | Nov 7, 2000 | Feb 24, 2004 | Micron Technology, Inc. | Method of updating a system environmental setting | | US6701453 | Jun 11, 2001 | Mar 2, 2004 | Micron Technology, Inc. | System for clustering software applications | | US6742069 | Oct 30, 2001 | May 25, 2004 | Micron Technology, Inc. | Method of providing an interface to a plurality of peripheral devices using bus adapter chips | | US6760065 | Mar 24, 2000 | Jul 6, 2004 | Eastman Kodak Company | Imaging table of contents | | US6895526 | Nov 1, 2002 | May 17, 2005 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US6976039 | May 25, 2001 | Dec 13, 2005 | International Business Machines Corporation | Method and system for processing backup data associated with application, querying metadata files describing files accessed by the application | | US6985892 | Aug 26, 2003 | Jan 10, 2006 | Olympus Corporation | METHOD AND APPARATUS FOR PRODUCING A FILE NAME IN AN IMAGE MANIPULATING SYSTEM HAVING A MEMORY DEVICE IN WHICH A FILE NAME AND A SECOND TRAIN OF CHARACTERS IS PROVIDED WHEREIN A FILE NUMBER IS AUTOMATICALLY GENERATED BY INCREMENTING A FILE NUMBER PREVIOUSLY ASSIGNED AND STORED IN MEMORY | | US7016920 | May 25, 2001 | Mar 21, 2006 | International Business Machines Corporation | Method for tracking relationships between specified file name and particular program used for subsequent access in a database | | US7028079 | May 25, 2001 | Apr 11, 2006 | Lenovo (Singapore) Pte, Ltd. | Method and apparatus for the automatic migration of applications and their associated data and configuration files | | US7065600 | Mar 23, 2004 | Jun 20, 2006 | Micron Technology, Inc. | Method of providing an interface to a plurality of peripheral devices using bus adapter chips | | US7075570 | Oct 18, 2001 | Jul 11, 2006 | Kabushiki Kaisha Toshiba | Method of processing files and an apparatus thereof | | US7263570 | May 3, 2006 | Aug 28, 2007 | Micron Technology, Inc. | Method of providing an interface to a plurality of peripheral devices using bus adapter chips | | US7370225 | May 9, 2005 | May 6, 2008 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US7370226 | May 9, 2005 | May 6, 2008 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US7444537 | May 9, 2005 | Oct 28, 2008 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US7444550 | May 9, 2005 | Oct 28, 2008 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US7451153 | Jan 26, 2004 | Nov 11, 2008 | Nokia Corporation | Method and apparatus for symmetrical filename encoding | | US7451343 | May 9, 2005 | Nov 11, 2008 | Micron Technology, Inc. | System and method for communicating a software-generated pulse waveform between two servers in a network | | US7493314 | Jan 10, 2005 | Feb 17, 2009 | Cyberlink Corp. | System and method for providing access to computer files across computer operating systems | | US7552364 | Sep 29, 2003 | Jun 23, 2009 | Micron Technology, Inc. | Diagnostic and managing distributed processor system | | US7664783 | Sep 19, 2005 | Feb 16, 2010 | Seiko Epson Corporation | File management program, data structure, and file management device | | US7669064 | Oct 25, 2006 | Feb 23, 2010 | Micron Technology, Inc. | Diagnostic and managing distributed processor system | | US7676797 | Jan 31, 2005 | Mar 9, 2010 | Computer Associates Think, Inc. | System and method for managing long names in an application programming interface | | US7873596 | May 23, 2007 | Jan 18, 2011 | Microsoft Corporation | Extending cluster allocations in an extensible file system | | US8156090 | May 1, 2007 | Apr 10, 2012 | Unisys Corporation | Maintaining file name uniqueness in an application development environment of a computing system |
Claims1. In a computer system having a storage, a directory service for accessing directory entries and a file system that uses the directory entries to access files, a method, comprising the computer-implemented steps of: - (a) creating a first directory entry for a file wherein the first directory holds a short filename for the file and the location of the file;
- (b) creating a second directory entry for the file wherein the second directory entry holds at least one portion of a long filename having a fixed number of characters and a signature that identifies that the second directory entry holds a first portion of the long filename;
- (c) storing the first directory entry and the second directory entry on the storage among the directory entries used by the directory service; (d) accessing the second directory entry by the directory service to access the file; and (e) creating and storing in the storage a sequence of at least one additional directory entry for holding a next sequential portion of the long filename.
2. The method as recited in claim 1 wherein the long filename contains more characters than the short filename. 3. The method as recited in claim 1 wherein each additional directory entry may hold only a fixed number of characters of the long filename and how many additional directory entries are created is dictated by how many additional directory entries are required to store characters of the long filename which are not already stored in the second directory entry. 4. The method as recited in claim 1 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of creating a plurality of additional directory entries. 5. The method as recited in claim 1 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of providing a signature in each additional directory entry that identifies which portion of the long filename the additional directory entry holds. 6. The method as recited in claim 1 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of providing a checksum of the first filename in each additional directory entry. 7. In a data processing system having a processor running an operating system and a memory means having memory locations wherein the operating system is stored in the memory means, a method, comprising the steps of: - (a) storing in a first of the memory locations of the memory means a first directory entry for a file wherein the first directory entry holds a short filename for the file, said short filename including at most a maximum number of characters that is permissible by an application program;
- (b) storing in a second of the memory locations of the memory means that is adjacent to the first of the memory locations a second directory entry for the file wherein the second directory entry holds at least a first portion of a long filename for the file, said long filename including a greater number of characters than the maximum number of characters that is permissible by the application program, and
- (c) accessing one of the directory entries to locate the file.
8. The method as recited in claim 7 wherein the step of storing the second directory further comprises the step of storing a checksum of the short filename in the second directory entry. 9. The method as recited in claim 7, further comprising the step of storing at least one additional directory entry holding a next portion of the long filename in the memory means. 10. The method as recited in claim 9 wherein the step of storing at least one additional directory entry further comprises the step of storing a checksum of the short filename in the additional directory entry. 11. The method as recited in claim 9 wherein the step of storing at least one additional directory entry further comprises the step of storing a signature that uniquely identifies which portion of the long filename is stored in the additional directory entry. 12. In a computer system having a storage, a directory service for accessing directory entries and a file system that uses the directory entries to access files, a comnputer-readable medium holding computer-executable instructions for performing a method comprising computer-implementented steps of: - (a) creating a first directry entry for a file wherein the first directory holds a short filename for the file and the location of the file;
- (b) creating a second directory entry for the file wherein the second directory entry holds at least one portion of a long filename having a fixed number of characters;
- (c) storing the first directory entry and the second directory entry on the storag among the directory entries used by the directory service; and
- (d) accessing the second directory entry by the directory service to access the file.
13. The computer-readable medium of claim 12 wherein the long filename contains more characters than the short filename. 14. The computer-readable medium of claim 12 also holding computer-executable instructions for creating and storing in the storage a sequence of at least one additional directory entry for holding a next sequential portion of the long filename. 15. The computer-readable medium of claim 14 wherein each additional directory entry may hold only a fixed number of characters of the long filename and how many additional directory entries are created is dictated by how many additional directory entries are required to store characters of the long filename which are not already stored in the second directory entry. 16. The computer-readable medium of claim 14 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of creating a plurality of additional directory entries. 17. The computer-readable medium of clain 14 wherein the step of creating the second directory entry further comprises the step of providing a signature in the second directory entry that identifies that the second directory entry holds the first portion of the long file name. 18. The computer-readable medium of claim 17 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of providing a signature in each additional directory entry that identifies which portion of the long filename the additional directory entry holds. 19. The computer-readable medium of claim 14 wherein the step of creating at least one additional directory entry for the long filename further comprises the step of providing a checksum of the first filename in each additional directory entry. 20. In a data processing system having a processor running an operating system and a memory means with memory locations, wherein said memory means stores the operating system, a computer-readable medium holding computer-executable instructions for performing a method comprising the steps of: - (a) storing in a first of the memory locations of the memory means a first directory entry for a file wherein the first directory entry holds a short filename for the file, said short filename including at most a maximum number of characters that is permissible by an application program;
- (b) storing in a second of the memory locations of the memory means that is adjacent to the first of the memory locations a second directory entry for the file wherein the second directory entry holds at least a first portion of a long filename for the file, said long filename including a greater number of characters than the maximum number of characters that is permissible by the application program; and
- (c) accessing one of the directory entries to locate the file.
21. The computer-readable medium of claim 20 wherein a checksum of the short filename is stored in the second directory entry. 22. The computer-readable medium of claim 20 wherein at least one additional directory entry is stored to hold a next portion of the long filename in the memory means. 23. The computer-readable medium of clain 22 wherein a signature is stored in the additional directory entry that uniquely identifies which portion of the long filename is stored in the additional directory entry. 24. In a computer system having a directory service for accessing directory entries and a file system that uses the directory entries to access files, a method comprising the computer-implemented steps of: - (a) creating a first directory entry for a file wherein the first directory entry holds a short filename for the file and the location of the file,
- (b) creating a second directory entry for a file wherein the second directory entry is configured to appear as if it holds a short filename to a program that uses only short filenames and wherein the second directory entry holds at least one portion of a long filename for the file, said long filename having more characters then the short filename; and
- (c) accessing one of the first directory entries and the second directory entry by the directory service in order to access the file.
25. The method of claim 24 wherein the program that uses only short filenames is an operating system. 26. The method of claim 24 wherein the program that uses only short filenames is an application program. 27. The method of clain 24 wherein the storage includes storage locations and wherein the first directory entry and the second directory entry are stored in adjacent storage locations. 28. In a computer system having a directory device for accessing directory entries and a file system that uses the directory entries to access files, a computer-readable medium holding computer-executable instructions for executing a method comprising the computer-implemented steps of: - (a) creating a first directory entry for a file wherein the first directory entry holds a short filename for the file and the location of the file;
- (b) creating a second directory entry for a file wherein the second directory entry is configured to appear as if it holds a short filename to a program that uses only short filenames and wherein the second directory entry holds at least one portion of a long filename for the file, said long filename having more characters then the short filename; and
- (c) accessing one of the first directory entries and the second directory entry by the directory service in order to access the file.
|