Content deleted Content added
m add <math> tags |
m →top: Added crucial parts into the header, from the running text below. ;- |
||
(48 intermediate revisions by 44 users not shown) | |||
Line 1:
{{Short description|File system for AmigaOS}}
On the [[Amiga]], the '''Old File System''' was the filesystem for [[Amiga OS]] before the [[Amiga Fast File System]]. Even though it used 512-byte blocks, it reserved the first small portion of each [[block]] for [[Metadata (computing)|metadata]], leaving a very irregular actual data block real capacity of only 488 bytes per block. It wasn't very suitable for anything except [[floppy disk|floppy disks]], and it was soon replaced.▼
{{one source|date=October 2015}}
▲On the [[Amiga]], the '''Old File System''', sometimes also called ''Amiga File System'', was the filesystem for [[
== History ==
OFS is very good for repairing the filesystem in the event of a problem, although the so
== Characteristics of AmigaDOS Floppy Disks ==▼
Amiga uses [[Modified Frequency Modulation|MFM]] encoding/decoding by default when handling [[floppy disk]]s. There are 80 cylinders on an Amiga floppy disk. Each cylinder has 2 MFM tracks,
▲== Characteristics ==
▲Amiga uses [[MFM]] encoding/decoding by default when handling [[floppy disk]]s. There are 80 cylinders on an Amiga floppy disk. Each cylinder has 2 MFM tracks, 1 on each side of the disk. Double density (DD) disks have 11 sectors per MFM track, High density (HD) disks have 22 sectors.
▲The geometry of an Amiga Floppy Disk is as follows:
The DD disk has 11 * 2 * 80 = 1760 (0 to 1759) blocks, while the HD disk has 22 * 2 * 80 = 3520 blocks.▼
▲* DD disks: 512bytes/sector 11sector/track 2track/cyl 80cyl/disk
▲* HD disks: 512bytes/sector 22sector/track 2track/cyl 80cyl/disk
▲The DD disk has 11*2*80=1760 (0 to 1759) blocks, while the HD disk has 22*2*80=3520 blocks.
==Characteristics of Files under AmigaDOS==
▲Amiga stores 880Kb on a DD disk and 1760Kb on an HD floppy disk.
Prior to AmigaOS 3.5, AmigaDOS file handles maintained a 32-bit wide offset parameter (unsigned), telling where to start the next read or write operation. The biggest size for any single Amiga file under these operating systems therefore comes to 2<sup>32</sup> = 4 [[gibibyte|GiB]]. After Amiga OS 3.5, file handles may reference 2<sup>64</sup> = 16 [[exbibyte|EiB]] files. However, OFS-formatted disks continue to retain the 32-bit limitations, for that is an intrinsic limitation of the format as recorded on the media.
An OFS
The
▲OFS Datablock stores Block Size BSIZE-24 bytes (i.e. normally 488 bytes at most frequently used BSIZE of 512 bytes), FFS stores BSIZE bytes (512 bytes per block).
▲The Rootblock is located at the physical middle of the media: block number 880 for DD disks, block 1760 for HDs.
<pre>
▲The exact calculation for where it is stored is as follows:
▲<math>numCyls = highCyl - lowCyl + 1</math>
</pre>
The
▲<math>highKey = numCyls * numSurfaces * numBlocksPerTrack - 1</math>
The characters '/' and ':' are forbidden in file and volume names, but *!@#$%|^+&_()=\-[]{}';",<>.? and
▲<math>rootKey = INT (numReserved + highKey) / 2 </math>
The date fields in the root block (and other blocks) are structured in the form of DAYS, MINS and TICKS. The DAYS field contains the number of days since January 1. 1978. MINS is the number of minutes that have passed since midnight and TICKS are expressed in 1/50s of a second. A day value of zero is considered illegal by most programs.
▲The Rootblock contains information about the disk: its name, its formatting date, etc. It also contains information on accessing the files/directories/links located at the uppermost (root) directory.
To reach a file, directory or link, AmigaDOS uses a [[hash function]] to calculate which 32-bit word in the disk block to use as a pointer to a hash bucket list, which in turn contains the file, directory, or link record. A bucket list is used to support filesystem objects with names that hash to the same offset. For example: '''file_1a''', '''file_24''' and '''file_5u''' have the same hash value.
▲The characters '/' and ':' are forbidden in file and volume names, but *!@#$%|^+&_()=\-[]{}';",<>.? and accented like âè are allowed.
Filename characters can be lowercase and uppercase, but are not case sensitive when accessed. That is to say, "MyFile" and "myfile" in the same directory refer to the same file.
▲The date fields in the root block (and other blocks) are structured in the form of DAYS, MINS and TICKS. The DAYS field contains the number of days since January 1. 1978. MINS is the number of minutes that have passed since midnight and TICKS are expressed in 1/50s of a second. A day value of zero is considered illegal by most programs. The Amiga filesystem does not have an inherent year 2000 problem.
Files are
▲Files are comprised of a file header block, which contains information about the file (size, last access time, data block pointers, ETC), and the data blocks, which contain the actual data. The file header block contains up to BSIZE/4-56 data block pointers (which amounts to 72 bytes with the usual 512 byte blocks). If a file is larger than that, file extension blocks will be allocated to hold the data block pointers. File extension blocks are organised in a linked list, which starts in the File header block ('extension' field).
== See also ==
{{Portal|Amiga}}
* [[Amiga Fast File System]] * [[Professional File System]]
* [[Smart File System]]
* [[List of file systems]]
* [[Amiga Rigid Disk Block|Rigid Disk Block]]
== External links ==
*[
{{Reflist}}
▲*[ftp://it.aminet.net/pub/aminet/disk/misc/ADFlib.lha The ADF specs] in [[LHA (file format)|LHA]] format, from [[Aminet]]
{{AmigaOS}}
[[Category:Disk file systems]]
[[Category:
[[Category:AmigaOS]]
|