RAM based directory layer for a flash file system

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C707S793000

Reexamination Certificate

active

06480864

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to the field of internetwork operating system software. More specifically, the present invention relates to a RAM-based directory of a flash file system located in a software layer in an internetwork operating system.
2. The Background
An internetwork operating system (IOS), normally as software, provides a common functionality, scalability, and security for most or all devices on a network. It allows for the centralized, integrated, and automated installation and management of internetworks, while ensuring support for a wide variety of protocols, media, services, and platforms.
Devices that run IOS may have internal Flash or Personal Computer Memory Card International Association (PCMIA) slots that can hold flash cards. A flash card is a card containing memory that holds its content without power. Throughout this application, the term “flash card” is used, but one of ordinary skill in the art will recognize that other types of non-volatile memory may be used instead of flash cards, including Electrically Erasable Programmable Read Only Memories (EEPROMs), and other firmware chips. In IOS, generally executable images or configuration in files regarding the device are stored on these flash cards.
Obviously, when files are stored in a memory, there must be a mechanism for retrieving the files. Typical IOS software provides a minimal or no directory for such files stored in flash card on a device.
FIG. 1
is a block diagram illustrating flash cards in a typical device. Device
10
may have PCMIA slots
12
,
14
(hereinafter called “slot a”, and “slot b”, respectively). Flash cards
16
,
18
may be inserted into PCMIA slots
12
,
14
, respectively. The typical IOS software will have no independent directory for files stored on any of these flash cards.
FIG. 2
is a diagram illustrating a flash card and flash card accessing module as typically used in IOS software. Flash card
50
may reside in a PCMIA or similar slot in the device. Flash card
50
may contain a data structure
52
(here termed fslib_device_info_block), which contains information on the format, size, and other attributes of the flash card. Additionally, flash card
50
may contain multiple files
54
, each residing in addresses which can be measured by the offset
56
from the beginning of the flash card. A flash driver
58
, may reside on the device or otherwise separated from the card and contain information regarding how to access the flash card.
Accessing a file stored on the card in a slot may be performed by providing the slot name and file name to the IOS. For example, a request for a file named “file
2
” in the card located in slot b of a device may be presented to the IOS in the form “slot_b:file
2
”. IOS software may then reference the flash driver
58
corresponding to the card in slot b, and request information on the offset for file
2
. In the illustration in
FIG. 2
, the offset would be returned as “3”. Then the IOS could access the flash card, providing an offset of 3 to find the location of file
2
. File
2
could then be read. The file may itself contain a header and a data portion, with the header containing fields set aside for the name of the file, size of the file, and other attributes.
This type of directory structure (it is referred to as a directory structure even though it arguably contains no directories at all) suffers from many drawbacks. First, it lacks the ability to have a true directory structure (with directories and subdirectories) forming a “tree” type hierarchical structure. Additionally, the “directory” is limited in that the name for slot a must always be “slot_a”. There is not an opportunity to have a different, more creative, or more efficient name for the directories.
Perhaps the biggest drawback, however, of the typical flash file system is evident when one attempts to use it with a more advanced IOS software. IOS software has been evolving quickly. It is now possible to have IOS software be modular, where any component, such as a software module, can be swapped out and replaced without causing an interruption in the entire system (for example, where an old module is replaced with a newer one). For this to occur, it is necessary to have flexible storage of files on Flash cards in a hierarchical format, so that what is old and what is new can be organized in many levels of complexity. Without modification or additional components, the “directory” structure outlined above would not work with such a modular system.
What is needed is a flash file system that may be used with modular IOS software.
SUMMARY OF THE INVENTION
A flash file system for use with flash cards and internetwork operating system software is provided. Absolute path names are stored in the name field of existing files on flash cards. When the system is initialized, a directory structure is created and stored in RAM by accessing the absolute path names stored in the name field of each file on the flash cards. Accessing a file on a flash card is then accomplished by traversing the directory structure in RAM, and going directly to the precise location of the file on the flash card, thereby minimizing the amount of information that must be retrieved from the flash cards and greatly increasing the speed of accesses. Additionally, cards designed for use with older, non-modular internetwork operating systems may still be used, as name fields for files in these flash cards may easily be used to store absolute path names.


REFERENCES:
patent: 5463754 (1995-10-01), Beausoleil et al.
patent: 5566328 (1996-10-01), Eastep
patent: 5592669 (1997-01-01), Robinson et al.
patent: 5619691 (1997-04-01), Katada et al.
patent: 5621721 (1997-04-01), Vatuone
patent: 5727206 (1998-03-01), Fish et al.
patent: 5752242 (1998-05-01), Havens
patent: 5778365 (1998-07-01), Nishiyama
patent: 5950205 (1999-09-01), Aviani
patent: 6021415 (2000-02-01), Cannon et al.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

RAM based directory layer for a flash file system does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with RAM based directory layer for a flash file system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and RAM based directory layer for a flash file system will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2992835

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.