Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
back2root:ibm-pc-ms-dos:hardware:informations:file-system-format [2023/03/03 17:38] – [Tableau] frater | back2root:ibm-pc-ms-dos:hardware:informations:file-system-format [2023/03/03 17:52] (Version actuelle) – [Tableau] frater | ||
---|---|---|---|
Ligne 8: | Ligne 8: | ||
| 06 | nbytes | | 06 | nbytes | ||
- | | + | |
+ | ==== File Descriptor Table ==== | ||
+ | |||
{{tablelayout? | {{tablelayout? | ||
^ Offset | ^ Offset | ||
Ligne 31: | Ligne 33: | ||
===== DOS 3.x System File Table and FCB Table Format ===== | ===== DOS 3.x System File Table and FCB Table Format ===== | ||
+ | ^ Offset | ||
+ | | 00 | dword | pointer to next system file table; offset of ffffh indicates last table in chain | | ||
+ | | 04 | word | number of file descriptors in table | | ||
+ | | 06 | nbytes | file descriptor table of the format (53 bytes each): | | ||
- | | + | ==== File Descriptor Table ==== |
- | 00 | + | ^ Offset |
- | indicates | + | | 00| |
- | 04 word number of file descriptors in table | + | | 02| |
- | 06 nbytes file descriptor table of the format (53 bytes each): | + | | 04| |
+ | | 05| | ||
+ | | 07| dword |if char device | ||
+ | | 0B| | ||
+ | | 0D| | ||
+ | | 0F| | ||
+ | | 11| | ||
+ | | 15| | ||
+ | | 19| | ||
+ | | 1B| | ||
+ | | 1D| | ||
+ | | 1F| | ||
+ | | 20| 11bytes |filename | ||
+ | | 2B| | ||
+ | | 2F| word |SHARE | ||
+ | | 31| | ||
+ | | 33| | ||
- | | + | ===== DOS 4.0+ System File Table and FCB Table ===== |
- | 00 word count of handles referring to this file or | + | ^ Offset |
- | zero if file is no longer open | + | | |
- | 02 | + | | 04 | |
- | 04 | + | | 06 | nbytes | |
- | 05 | + | |
- | 07 dword if char device | + | |
- | if block device pointer to DOS Device Control Block | + | |
- | 0B | + | |
- | 0D | + | |
- | 0F | + | |
- | 11 | + | |
- | 15 | + | |
- | 19 | + | |
- | the | + | |
- | 1B word absolute cluster | + | |
- | zero if file has never been read or written | + | |
- | 1D | + | |
- | 1F | + | |
- | 20 11bytes filename | + | |
- | 2B | + | |
- | 2F | + | |
- | 31 | + | |
- | 33 | + | |
- | 0000h = none | + | |
+ | ==== File Descriptor Table ==== | ||
+ | {{tablelayout? | ||
+ | ^ Offset | ||
+ | | 00 | word | count of handles referring to this file or zero if file is no longer open | | ||
+ | | 02 | word | open mode, bit 15 set if file id opened via FCB | | ||
+ | | 04 | byte | file attribute | ||
+ | | 05 | word | device info word | | ||
+ | | 07 | dword | if char device pointer to device driver header if block device pointer to DOS Device Control Block or REDIR data | | ||
+ | | 0B | word | starting cluster of file | | ||
+ | | 0D | word | file time | | ||
+ | | 0F | word | file date | | ||
+ | | 11 | dword | file size | | ||
+ | | 15 | dword | current file position | ||
+ | | 19 | dword | if network redirector, pointer to REDIRIFS record word if local block dev, relative cluster within file of the last cluster read | | ||
+ | | 1B | dword | if local, sector number of directory entry | | ||
+ | | 1F | byte | if local, number of directory entry within sector | ||
+ | | 20 | 11bytes | ||
+ | | 2B | dword | SHARE pointer to previous SFT sharing same file | | ||
+ | | 2F | word | SHARE number of network machine opening file | | ||
+ | | 31 | word | PSP segment of file owner | | ||
+ | | 33 | word | offset within SHARE code seg of sharing record 0000h = none | | ||
+ | | 35 | word | absolute cluster number of last cluster read zero if file has never been read or written | ||
+ | | 37 | dword | pointer to file IFS driver, NULL if native DOS | | ||
- | DOS 4.0+ System File Table and FCB Table | ||
- | |||
- | |||
- | | ||
- | |||
- | 00 | ||
- | indicates last table in chain | ||
- | 04 | ||
- | 06 nbytes file descriptor table of the format (59 bytes each): | ||
- | |||
- | | ||
- | 00 | + | <WRAP round box> |
- | zero if file is no longer open | + | * these structures are allocated by DOS during the scanning |
- | 02 | + | * [[back2root: |
- | 04 | + | |
- | 05 | + | * see Bibliography references |
- | 07 | + | * See [[back2root: |
- | if block device pointer to DOS Device Control Block | + | </ |
- | or REDIR data | + | |
- | 0B | + | |
- | 0D | + | |
- | 0F | + | |
- | 11 | + | |
- | 15 | + | |
- | 19 | + | |
- | | + | |
- | of the last cluster read | + | |
- | 1B | + | |
- | 1F | + | |
- | 20 11bytes filename | + | |
- | 2B | + | |
- | 2F | + | |
- | 31 | + | |
- | 33 | + | |
- | 0000h = none | + | |
- | 35 | + | |
- | zero if file has never been read or written | + | |
- | 37 | + | |
- | - these structures are allocated by DOS during the scanning of the | ||
- | CONFIG.SYS file | ||
- | - INT 21,67 can be used to allow an application to have more than | ||
- | 20 file handles; | ||
- | the value of FILES=n in CONFIG.SYS | ||
- | - the structure of these fields is undocumented; | ||
- | relying on any of this information, | ||
- | debugging | ||
- | - see Bibliography references to Bernd Schemmer and "Data Structures | ||
- | Used in IBM PC Compatibles and the PS/2". | ||
- | - see INT 21,52 | ||