11月25日什么星座| 油膜是什么| 心律失常是什么意思| 大小三阳是什么病| 脑供血不足用什么药好| 盆腔少量积液是什么意思| 死精吃什么能调理成活精| 异位妊娠是什么意思| 什么什么有力| 苍白的什么| pdt是什么意思| 什么药治拉肚子| 传媒公司主要做什么| 尿结石是什么症状| 什么是扦插| 脚底疼是什么原因| 食人鱼长什么样| 梦见别人生孩子预示什么| 大腿为什么会长妊娠纹| 属猴的和什么属相最配| 亚硝酸钠是什么东西| 七匹狼属于什么档次| 孕妇肚子疼是什么原因| 痔疮疼痛用什么药| 怀孕吃什么可以快速流产| 什么是碳水化合物食物| 大学什么时候开始收费| 男人喜欢什么罩杯| 梅州有什么大学| 对口升学什么意思| 兵员预征是什么意思| 表现优异是什么意思| 淋巴结肿大是什么样子的| 脖子粗挂什么科| 四维彩超什么时候做| 临界值是什么意思| 生理年龄是什么意思| 复方木尼孜其颗粒治什么病| 补气吃什么食物| 胆固醇是什么| 扁桃体疼吃什么药| 下巴上有痣代表什么| 银行行长是什么级别| 什么药治胃炎效果好| mr是什么意思| 孕妇吃红薯对胎儿有什么好处| 什么木质手串最好| 什么的河流| 荷尔蒙是什么东西起什么作用| 什么是好朋友| 空调感冒吃什么药| 什么运动可以让孩子长高| 龙骨是什么骨头| 什么东西补气血| 倒数第二颗牙齿叫什么| 吃什么容易导致流产| 什么东西补钾| 白癜风是什么原因引起的| 麝香是什么味道| 胰岛素的作用是什么| rx是什么意思| 苡米和薏米有什么区别| 射精快是什么原因| 华伦天奴属于什么档次| 得水痘不能吃什么| 怀孕吃什么可以快速流产| 海虫草是什么| 养心吃什么食物好| 全身体检挂什么科| 淋巴细胞是什么意思| 酸梅汤什么人不能喝| 精液什么颜色| 通情达理是什么意思| 怨妇是什么意思| 五月是什么星座的啊| 1972年是什么命| 身上长水泡是什么原因| 拔了尿管尿不出来有什么好办法| 夏天结婚新郎穿什么衣服图片| 坐围和臀围有什么区别| 荷花是什么季节开放的| 康乃馨适合送什么人| kap是什么意思| prl是什么激素| 凯旋归来是什么意思| 阴血是什么| 等闲变却故人心却道故人心易变什么意思| 吃什么东西可以除湿气| 病字旁加且念什么| 万马奔腾是什么生肖| 荨麻疹可以吃什么水果| 柬埔寨是什么国家| opo是什么意思| 鹅蛋和什么不能一起吃| 长期吃阿司匹林有什么副作用| 免疫球蛋白适合什么人| 乌龟能吃什么水果| 脚心疼是什么原因| 撇嘴是什么意思| 77是什么意思| 火把节是什么节日| 皮肤敏感是什么意思| 脚底灼热是什么原因| 粉红粉红的什么填空| 冬枣为什么叫冬枣| 什么人容易得布病| 汉卿是什么意思| 水囊是什么| 产妇刚生完孩子适合吃什么| 次长是什么职位| 农历六月十九是什么星座| 咽喉肿痛吃什么药| 当我们谈论爱情时我们在谈论什么| 鄙视你是什么意思| 面包虫吃什么| 杨过是什么生肖| 法国的国鸟是什么| 早搏有什么症状| 胶原蛋白是什么意思| 布克兄弟什么档次| 泡温泉穿什么衣服| 指甲很薄很软是为什么| 聘书是什么| 韩愈字什么| 头发为什么会变黄| etf是什么意思| 67是什么意思| kcl是什么药| 降血脂吃什么| 雾化是什么| 回眸一笑百媚生什么意思| 什么是性高潮| 1月16日什么星座| 天秤座是什么星座| 为什么要当兵| 下面潮湿是什么原因引起的| 牡丹花是什么颜色的| 眉毛脱落是什么原因造成的| 脸上长痘是什么原因| 什么病必须戒酒| 月经血块多是什么原因| 被蜈蚣咬了有什么症状| 宝宝不爱吃饭是什么原因| 骨质疏松吃什么钙片好| 医德是什么| 开塞露加什么能去皱纹| a和ab型生的孩子是什么血型| 筷子买什么材质的好| 舌头裂缝是什么原因| 喝苏打水有什么好处| 临床药学在医院干什么| 蚊子喜欢什么| 天下乌鸦一般黑是什么意思| 床上什么虫子夜间咬人| 什么蔬菜补血| gbd是什么意思| 耳朵前面有痣代表什么| 肾虚吃什么食物| 下葬有什么讲究或忌讳| 晚上睡觉脚抽筋是什么原因引起的| 现在什么手机好用| 哥哥的孩子叫我什么| 为什么会晕血| 乏是什么意思| 眼白发青是什么原因| 菠萝蜜不能跟什么一起吃| 脉是什么意思| 闫和阎有什么区别| 半月板变性是什么意思| 阴历7月22什么日子| 淋巴细胞数偏高是什么意思| 哪吒代表什么生肖| 不显怀的人有什么特点| 藿香正气水有什么功效| 2001属什么| 眼睛无神呆滞什么原因| 无后为大的前一句是什么| 一级亲属指的是什么| 淋巴吃什么药可以消除| 吐黄痰是什么原因| 减肥去医院挂什么科| vr间隙是什么意思| apc药片是什么药| 一个金字旁一个先读什么| 烤鱼放什么配菜好吃| 血清碱性磷酸酶高是什么意思| 五月出生是什么星座| 火代表什么数字| 胃食管反流病是什么原因造成的| 血糖高能喝什么饮料| 唔什么意思| 立竿见影是什么意思| 四维空间是什么样子| 什么是零和博弈| 白鳍豚用什么呼吸| 胆固醇偏高是什么原因| 小孩说梦话是什么原因引起的| 7代表什么| 梦到自己拉大便是什么预兆| 吃燕麦片有什么好处| 头顶不舒服是什么原因| 男人嘴小代表什么意思| 子宫内膜增厚是什么意思| 割包皮属于什么科| 怀男孩和女孩有什么区别| 梦到绿色的蛇是什么意思| 八月节是什么节| 四月十八日是什么日子| 吸烟有害健康为什么国家还生产烟| 乳酪和奶酪有什么区别| 有机食品是什么意思| 胃不舒服吃什么水果| 立夏有什么习俗| 2006年什么年| dna由什么组成| 为什么总是打嗝| 8月23是什么星座的| 来月经头疼是什么原因| 四月十一日是什么星座| 胚包括什么| 一年四季穿棉衣是什么生肖| 餐后血糖高吃什么药| 月柱金舆是什么意思| 手经常发麻是什么原因| 法老是什么意思| 精神慰藉什么意思| 吃完饭就拉肚子是什么原因| 逍遥丸主治什么病| 吃什么软化血管| 什么节日吃汤圆| 眼睛疼是什么原因| 666什么意思| 静修是什么意思| 吃什么除湿| 软水是什么水| 白切鸡用什么鸡做好吃| 789是什么意思| 4月5日是什么星座| 口腔溃疡看什么科| 身体皮肤痒是什么原因| 咖啡色配什么颜色好看| 1600年是什么朝代| 耳膜穿孔有什么症状| 为什么喝酒后会头疼| 宫腔内高回声是什么意思| 视频脑电图能检查出什么| 1977年什么命| 天蝎女和什么星座最配| 4.24是什么星座| 感冒输液用什么药| 拍身份证照片穿什么颜色衣服好看| ur品牌属于什么档次| 用苦良心是什么意思| 早晨5点是什么时辰| 杜甫是什么朝代的| 缺钾是什么原因引起| 早晨六点是什么时辰| 鹤是什么生肖| 开封菜是什么意思| 十一月三号是什么星座| 19时是什么时辰| 什么叫吐槽| 吃什么药升血小板最快| 83年五行属什么| 百度Jump to content

小狗需要打什么疫苗

From Wikipedia, the free encyclopedia
百度 他特别强调:要坚持实事求是的思想路线,分清主流和支流,坚持真理,修正错误,发扬经验,吸取教训,在这个基础上把党和人民事业继续推向前进。

A File Control Block (FCB) is a file system structure in which the state of an open file is maintained. A FCB is managed by the operating system, but it resides in the memory of the program that uses the file, not in operating system memory. This allows a process to have as many files open at one time as it wants, provided it can spare enough memory for an FCB per file.

The FCB originates from CP/M and is also present in most variants of DOS, though only as a backward compatibility measure in MS-DOS versions 2.0 and later. A full FCB is 36 bytes long; in early versions of CP/M, it was 33 bytes. This fixed size, which could not be increased without breaking application compatibility, led to the FCB's eventual demise as the standard method of accessing files.

The meanings of several of the fields in the FCB differ between CP/M and DOS, and also depending on what operation is being performed. The following fields have consistent meanings:[1]

Offset Byte
size
Contents
0x00 1 Drive number — 0 for default, 1 for A:, 2 for B:, ...
0x01 8 File name and extension — together these form a 8.3 file name.
0x09 3
0x0C 20 Implementation dependent — should be initialised to zero before the FCB is opened.
0x20 1 Record number in the current section of the file — used when performing sequential access.
0x21 3 Record number to use when performing random access.

The 20-byte-long field starting at offset 0x0C contained fields which (among others) provided further information about the file:[2]

Offset Byte
size
Contents
0x0E 2 File's record length in bytes.
0x10 4 Total file size in bytes.
0x14 2 Date of last modification to file contents.
0x16 2 Time of last modification.

Further values were used by newer versions of DOS until new information could no longer fit in these 20 bytes. Some preceding "negative offset" bytes were squeezed from reserved spaces in CP/M Zero Page and DOS Program Segment Prefix for storing file attributes.[1]

Usage

[edit]

In CP/M, 86-DOS and PC DOS 1.x/MS-DOS 1.xx, the FCB was the only method of accessing files. Under DOS a few INT 21h subfunctions provided the interface to operate on files using the FCB.[1][3][4] When, with MS-DOS 2, preparations were made to support multiple processes or users,[3][4] use other filesystems[3][4] than FAT or to share files[4] over networks in the future, FCBs were felt to be too small to handle the extra data required for such features[4] and therefore FCBs were seen as inadequate for various future expansion paths.[3] Also, they didn't provide a field to specify sub-directories.[3] Exposing file system related data to user-space was also seen as a security risk.[4] FCBs were thus superseded by file handles, as used on UNIX and its derivatives.[3] File handles are simply consecutive integer numbers associated with specific open files.

If a program uses the newer file handle API to open a file, the operating system will manage its internal data structure associated with that file in its own memory area. This has the great advantage that these structures can grow in size in later operating system versions without breaking compatibility with application programs; its disadvantage is that, given the rather simplistic memory management of DOS, space for as many of these structures as the most "file-hungry" program is likely to use has to be reserved at boot time and cannot be used for any other purpose while the computer is running. Such memory reservation is done using the FILES= directive in the CONFIG.SYS file. This problem does not occur with FCBs in DOS 1 or in CP/M, since the operating system stores all that it needs to know about an open file inside the FCB and thus does not need to use any per-file memory in operating system memory space. When using FCBs in MS-DOS 3 or later, the FCB format depends on whether SHARE.EXE is loaded and whether the FCB refers to a local or remote file and often refers to a SFT entry. Because of this, the number of FCBs which can be kept open at once in DOS 3 or higher is limited as well, usually to 4; using the FCBS= directive in the CONFIG.SYS file, it may be increased beyond that number if necessary. Under DR-DOS, both FILES and FCBS come from the same internal pool of available handles structures and are assigned dynamically as needed.[5]

FCBs were supported in all versions of MS-DOS and Windows until the introduction of the FAT32 filesystem. Windows 95, Windows 98 and Windows Me do not support the use of FCBs on FAT32 drives due to its 32-bit cluster numbers,[4] except to read the volume label. This caused some old DOS applications, including WordStar, to fail under these versions of Windows.

The FCB interface does not work properly on Windows NT, 2000, etc. either – WordStar does not function properly on these operating systems. DOS emulators DOSEMU and DOSBox implement the FCB interface properly, thus they are a way to run older DOS programs that need FCBs on modern operating systems.

Disk Transfer Area

[edit]

A companion data structure used together with the FCB was the Disk Transfer Area (DTA).[2] This is the name given to the buffer where file contents (records) would be read into/written from. File access functions in DOS that used the FCB assumed a fixed location for the DTA, initially pointing to a part of the PSP (see next section); this location could be changed by calling a DOS function, with subsequent file accesses implicitly using the new location.

With the deprecation of the FCB method, the new file access functions which used file handles also provided a means to specify a memory buffer for file contents with every function call, such that maintaining concurrent, independent buffers (either for different files or for the same file) became much more practical.

Program Segment Prefix & Program Initialisation

[edit]

Every DOS executable started from the shell (COMMAND.COM) was provided with a pre-filled 256-byte long data structure called the Program Segment Prefix (PSP). Relevant fields within this structure include:[2]

Offset Byte
size
Contents
0x02 2 Available memory for the program in 16-byte chunks.
0x2C 2 Segment address containing the program's environment variables.
0x5C 16 Prepared FCB for first command line argument (unopened).
0x6C 20 Prepared FCB for second command line argument (unopened).
0x80 1 Length of command line.
0x81 127 Command line contents.

This data structure could be found at the beginning of the data segment whose address was provided by DOS at program start in the DS and ES segment registers. Besides providing the program's command line verbatim at address 0x81, DOS also tried to construct two FCB's corresponding to the first two words in the command line, the purpose being to save work for the programmer in the common case where these words were filenames to operate on. Since these FCB's remained unopened, no problem would ensue even if these command line words did not refer to files.

The initial address for the DTA was set to overlay the area in the PSP (at address 0x80) where the command line arguments were stored, such that a program needed to parse this area for command line arguments before invoking DOS functions that made use of the DTA (such as reading in a file record), unless the program took care to change the address of the DTA to some other memory region (or not use the DTA/FCB functions altogether, which soon became deprecated in favour of file handles).

See also

[edit]

References

[edit]
  1. ^ a b c "FCB - Standard DOS File Control Block".
  2. ^ a b c Rodriguez-Rosello, Miguel (1992). 8088-8086/8087 Programacion Ensamblador En Entorno MSDOS (in Spanish). Ediciones Anaya Multimedia. ISBN 84-7614-128-9.
  3. ^ a b c d e f Zbikowski, Mark; Allen, Paul; Ballmer, Steve; Borman, Reuben; Borman, Rob; Butler, John; Carroll, Chuck; Chamberlain, Mark; Chell, David; Colee, Mike; Courtney, Mike; Dryfoos, Mike; Duncan, Rachel; Eckhardt, Kurt; Evans, Eric; Farmer, Rick; Gates, Bill; Geary, Michael; Griffin, Bob; Hogarth, Doug; Johnson, James W.; Kermaani, Kaamel; King, Adrian; Koch, Reed; Landowski, James; Larson, Chris; Lennon, Thomas; Lipkie, Dan; McDonald, Marc; McKinney, Bruce; Martin, Pascal; Mathers, Estelle; Matthews, Bob; Melin, David; Mergentime, Charles; Nevin, Randy; Newell, Dan; Newell, Tani; Norris, David; O'Leary, Mike; O'Rear, Bob; Olsson, Mike; Osterman, Larry; Ostling, Ridge; Pai, Sunil; Paterson, Tim; Perez, Gary; Peters, Chris; Petzold, Charles; Pollock, John; Reynolds, Aaron; Rubin, Darryl; Ryan, Ralph; Schulmeisters, Karl; Shah, Rajen; Shaw, Barry; Short, Anthony; Slivka, Ben; Smirl, Jon; Stillmaker, Betty; Stoddard, John; Tillman, Dennis; Whitten, Greg; Yount, Natalie; Zeck, Steve (1988). "Technical advisors". The MS-DOS Encyclopedia: versions 1.0 through 3.2. By Duncan, Ray; Bostwick, Steve; Burgoyne, Keith; Byers, Robert A.; Hogan, Thom; Kyle, Jim; Letwin, Gordon; Petzold, Charles; Rabinowitz, Chip; Tomlin, Jim; Wilton, Richard; Wolverton, Van; Wong, William; Woodcock, JoAnne (Completely reworked ed.). Redmond, Washington, USA: Microsoft Press. ISBN 1-55615-049-0. LCCN 87-21452. OCLC 16581341. (xix+1570 pages; 26 cm) (NB. This edition was published in 1988 after extensive rework of the withdrawn 1986 first edition by a different team of authors. [1])
  4. ^ a b c d e f g Chappell, Geoff (January 1994). Schulman, Andrew; Pedersen, Amorette (eds.). DOS Internals. The Andrew Schulman Programming Series (1st printing, 1st ed.). Addison Wesley Publishing Company. ISBN 978-0-201-60835-9. (xxvi+738+iv pages, 3.5"-floppy [2][3]) Errata: [4][5][6]
  5. ^ Paul, Matthias R. (2025-08-08). NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds. Release 157 (in German) (3 ed.). Archived from the original on 2025-08-08. Retrieved 2025-08-08. {{cite book}}: |work= ignored (help) (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.)

Further reading

[edit]
金牛座是什么星座 细小是什么病什么症状 小孩肚子疼拉肚子吃什么药 kpa是什么单位 1974属什么
尿里有结晶是什么原因 甲胎蛋白高是什么原因 怀孕期间吃什么对胎儿发育好 bosco是什么意思 劳模是什么意思
香瓜不能和什么一起吃 不还信用卡有什么后果 蛋白质是什么 一建什么时候报名 吃什么能降低尿蛋白
海松茸是什么东西 小孩子眼睛眨得很频繁是什么原因 吃完榴莲后不能吃什么 今天是什么日子 农历 梦见恐龙是什么意思
八拜之交是什么生肖hcv9jop4ns3r.cn 肝功能2项是指什么hcv8jop2ns8r.cn 金多水浊什么意思hcv8jop2ns7r.cn 孩子百天有什么讲究hcv9jop4ns9r.cn 舌苔又白又厚是什么原因hcv9jop4ns8r.cn
比热容是什么hcv8jop3ns6r.cn 1.17是什么星座hcv8jop0ns2r.cn 车挂件挂什么保平安好gangsutong.com 脚踝浮肿是什么原因hcv7jop9ns0r.cn 九月23日是什么星座hcv8jop4ns6r.cn
烦请是什么意思hcv9jop4ns9r.cn 炭疽病用什么药clwhiglsz.com 起鸡皮疙瘩是什么原因hcv8jop5ns9r.cn 什么是中出hcv7jop5ns5r.cn 屈臣氏是卖什么的hcv8jop3ns2r.cn
鸡蛋补充什么营养hcv9jop5ns3r.cn 横批是什么意思hcv7jop6ns2r.cn 猫咪轻轻咬你代表什么hcv9jop0ns2r.cn 属羊的什么命dayuxmw.com 靶向治疗是什么意思hcv8jop5ns3r.cn
百度