|
Inferno #04
22 июня 2003 |
|
Softinka - MEMDISK - file system for storing files in memory.

MEMDISK - file system for memory
MEMDISK designed for storing files
memory areas. Memory may be fragmented, so a few chip I2C
EEPROM can be used as a
disc. It is also useful for ramdiskov in
page-RAM or files stored in
EPROM.
The structure of the MEM / 0 was first ideey.V revised version
of MEM / 1 were added pointers to roditelya.Tak that now only
one pointer to operate the file or directory, and there is no
need to memorization of pointers to elements of the path.
This makes it easier, for example, deleting files or
moving to another directory.
Disc structure
content length description
+0 "MEM", # 1 April the name of the file system
4 3 characters + # 0 4 a name of a physical disk
+8 Structure F Є26 file descriptor
... structure D Є26 directory handle
... structure A Є7 descriptor area
Data
The first file descriptor (structure F) is always present.
Specifies the first file or directory on disk, contains a
useful amount of free space and a pointer to a chain of free
area (Structures A). May also indicate
parent directory - a value of 0 means that it is the root.
Thus, the blank disc contains an 8-byte header, a structure F
and at least one structure A.
Structure
Structure F - file descriptor
Structure D - directory descriptor
Structure A - data area
length of the contents of a note to:
B str.F str.D str.A
0 4 index of this file only A
to the next or directory
structure of this directory
4 2 length of 20 to 64 from 1 to
structure 65535
6 a version number # 00 # 80
7 1 Flag
8 4 a pointer to the directory containing
parent zhaschy this domain
structure of the file / directory st
12 April that the length
file data 16 4 only A pointer to the first
GOVERNMENTAL
generates an element
structure subdir.
20 4 Date and time of packed
24 Є2 name with the name name
# 00 at the end of the catalog file
All pointers and field lengths are in the format
little Endian (least significant byte first)
Example - a blank disc 8kB
Selected for the sample unit is
M24C64 - I2C 8kB EEPROM, connected to
AY-3-8912.
Base Pointer # E0A0, which means: memory
connected to AY (# E0 - bit 0 Port A is
SDA, bit 1 is the SCL.), And extension -
# A0. Connection number # E2 is used to
computers TC2068 means: bit 4-port
A is the SDA, bit 5 is SCL. Internal number
IC M24C64 may be in the range # A0 .. # AE (only even values)
and set using the inputs E0, E1 and E2 chip.
address the content description
# 0000 4D 45 4D 01 file system name
"MEM / 1"
# 0004 45 45 30 00 physical disk name
"EE0" (with zero
code at the end)
# 0008 F 00 00 00 00 no next element
ment directory (here
begins
structure F)
# 000C 19 00 length of the element
(# 0027 - # 000E)
# 000E / 00 00 element with no established
lennyh flags
# 0010 00 00 00 00 No parent
structure
# 0014 D3 1F 00 00 full length free
Nogo place
# 0018 27 00 A0 E0 pointer
A structure, which
begins with # 0027
# 001C B5 44 22 2C date and time
Format:
2002-01-02 08:37:42
# 0020 45 45 44 48 53 00 4B
disk name "EEDISK"
(With zero at the end)
# 0027 A 00 00 00 00 No following structure
tour (structure A
starts here)
# 002A D3 1F length of the
(# 2000 - # 002D)
# 002D / FF FF FF FF FF ...
blank area -
# 1FD3 bytes
# 1FFF FF last byte empty
the area of memory
-----------------------------------------( C) 2002-08-28 Jarek
Adamski {Zxvgs@yarek.com}, {http://zxvgs.yarek.com}
Other articles:
Similar articles:
В этот день... 15 November