脾脏是人体的什么器官| afp是什么意思| p波高尖代表什么| 小孩智力发育迟缓挂什么科| 十滴水是什么| 睡觉后脑勺出汗多是什么原因| 2023年是什么生肖年| 什么体质不易怀孕| 精神病吃什么药| 头小脸小适合什么发型| 糟卤可以做什么菜| 手链突然断了预示什么| 灰色是什么颜色调出来的| 心脏不舒服吃什么药最好| 小拇指发麻是什么原因| 梦到棺材什么意思| bayer是什么药| 黄金属于五行属什么| 春天有什么特点| 养殖什么| 什么是陈皮| 耐受是什么意思| 一班三检是指什么| 私密是什么意思| 喝什么茶去湿气| 腹腔积液是什么原因| 什么叫台风| o是什么牌子| lv的全称是什么| 吃饭快的人是什么性格| 端午节干什么| 血红蛋白低说明什么| 女人吃牛油果有什么好处| 枫叶什么颜色| apd是什么意思| 巾帼不让须眉是什么意思| 梓什么意思| 做活检意味着什么| 十一月九号是什么星座| 皮肤起小水泡很痒是什么原因| 妄语是什么意思| 一切有为法是什么意思| 五行属土缺命里缺什么| 活动性胃炎是什么意思| 小孩便秘吃什么最管用| 紫萱名字的含义是什么| 右侧胸膜增厚是什么意思| 乳房钙化灶是什么意思| 偶发室性早搏什么意思| 白细胞高吃什么药| 耳鸣吃什么药最有效| 市委讲师团是什么级别| 温水煮青蛙什么意思| 什么是集体户| 借鸡生蛋是什么意思| 含服是什么意思| 2001年属蛇五行属什么| mra是什么牌子| 人生海海是什么意思| 棉纺是什么面料| 空调病是什么症状| 胖头鱼是什么鱼| 越吃越瘦是什么原因| 高危hpv有什么症状| 世风日下什么意思| 什么绿绿| 玉仁玫白膏有什么功效| 人类免疫缺陷病毒抗体是什么意思| dd什么意思| 立夏吃什么蛋| 杀青是什么意思| 沃尔玛是干什么的| 痕迹是什么意思| 喝什么会变白| 敛财什么意思| 西安机场叫什么名字| 子宫内膜是什么| 总咳嗽是什么原因| 水解是什么意思| 花椒什么时候传入中国| 阿华田是什么饮料| 人不出汗是什么原因| 涂素颜霜之前要涂什么| 脂肪酸是什么| 观音婢是什么意思| 控评是什么意思| 叶酸买什么牌子的好| 照身份证穿什么衣服| 脑管瘤的症状是什么| 什么东西最补肾| 补办结婚证需要什么手续| 得水痘不能吃什么| 汗颜是什么意思| 阶段性是什么意思| 金字旁目字读什么| 感冒咳嗽挂号挂什么科| 命中注定是什么意思| 孕检唐筛是检查什么的| 诸法无我是什么意思| 吾儿是什么意思| 卦是什么意思| 什么的大叫| 吃什么对子宫好| 人间炼狱是什么意思| 子宫多发肌瘤是什么意思| 梦见屎是什么预兆| 洁字五行属什么| 归脾丸和健脾丸有什么区别| 为什么的拼音怎么写| 后壁和前壁有什么区别| 为什么放生泥鳅果报大| 囊中之物是什么意思| 天经地义的意思是什么| 生化全套主要检查什么| thc是什么意思| 东盟为什么没有中国| 什么水果对肠胃好| 酉鬼念什么| 名声是什么意思| 2017属什么生肖| 体罚是什么意思| 腰肌劳损用什么药最好| 所以我求求你别让我离开你是什么歌| 屎为什么是臭的| 鬼迷心窍什么意思| 为什么晚上睡不着| 吃什么不胖反而瘦| 老爹鞋适合什么人穿| 什么是中国舞| dbp是什么意思| 死鬼什么意思| 同学过生日送什么礼物好| 耳朵里面痒是什么原因| 湿气重吃什么水果| 什么什么三什么成语| model什么意思| 世界大同是什么意思| 小孩过敏吃什么药| 跟泰迪很像的狗叫什么| 1月11日什么星座| 舒畅的舅舅是做什么的| 高血压不能吃什么水果| 一天从早到晚叫什么日| 左侧肋骨疼是什么原因| 免疫五项能查出什么病| 外阴苔藓用什么药膏| 小孩说话不清楚挂什么科| 孩子血铅高有什么症状| 花白鲢喂养什么长得快| 现在什么节气| 女人大腿内侧黑是什么原因引起的| 吃什么能解决便秘| 白头发吃什么好| 痛风应该挂什么科| 圆是什么结构| 揽子是什么意思| 10015是什么电话| 什么的笑| 岁月蹉跎什么意思| 岁月静好什么意思| 暖巢早衰是什么原因| 血压低吃什么中成药| 嘴巴里长血泡是什么原因| jay是什么意思| 四个月宝宝可以吃什么辅食| 三候是什么意思| 什么年龄割双眼皮最好| 阴道有腥臭味用什么药| 跑得最快的是什么生肖| 药流后吃什么消炎药比较好| 爱的真正含义是什么| 左肾轻度积水是什么意思| 宝宝什么时候长牙| 牙神经疼吃什么药| 人的舌头有什么作用| 腱鞘炎要挂什么科| 小根蒜学名叫什么| 血脂稠是什么原因造成的| 百雀羚适合什么年龄段| 吃什么补气补血最见效| 避孕药什么时候吃有效| 摩羯座是什么星象| 白羊属于什么象星座| 脚踝发黑是什么原因| 正畸和矫正有什么区别| 血糖高要忌口什么| 什么有洞天| 心脏不好喝什么茶比较好| 经期可以吃什么水果| 血糖是什么引起的| 胃糜烂和胃溃疡有什么区别| 心悸是什么感觉| 谷草转氨酶是什么意思| 输卵管为什么会堵塞原因是什么| 梦见吃葡萄是什么意思| 糖尿病人不能吃什么| 梦遗太频繁是什么原因造成的| 胡塞武装是什么| 蛇酒不是三十九开什么| 铅华是什么意思| bmg是什么意思| 面部肌肉跳动是什么原因| 心肌酶谱是查什么的| 起湿疹是什么原因造成的| 吃鱼对身体有什么好处| 视网膜为什么会脱落| 什么时间是排卵期| 香辛料是什么| 等边三角形又叫什么三角形| 什么是老年斑图片| 意气用事是什么意思| 公安局属于什么机关| no.是什么意思| 急性扁桃体化脓是什么原因引起的| 缺乏维生素b12的症状是什么| 腰膝酸软是什么症状| 卵巢囊肿是什么| 肺心病吃什么药| 得意门生是什么意思| 全身痒是什么病| 88属什么| 老舍的原名叫什么| 舌尖发麻是什么原因| 头晕是什么病的前兆| 硬汉是什么意思| 23岁属什么生肖| 重复肾是什么意思| 秦始皇是什么民族| 武警支队是什么级别| 舌苔发白是什么原因| 中间细胞百分比偏高是什么意思| 办理护照需要什么| 熟普属于什么茶| 子宫肌瘤吃什么药| 高危性行为是什么| 钝感力什么意思| 空调病是什么症状| 子宫内膜薄是什么原因造成的| 脾胃寒湿吃什么中成药| 美国为什么不建高铁| 钙过量会有什么症状| 貘是什么动物| 桃李是什么意思| 什么的怀抱| 赵构为什么杀岳飞| 看脑部挂什么科| 1月9号是什么星座| 肠炎能吃什么| 脂肪瘤是什么引起的| 门对门风水有什么说法| 光杆司令是什么意思| 卡介疫苗是预防什么的| meta分析是什么| 什么是疝气| coa是什么| 七月十三号是什么星座| 九月五日是什么节日| 昙花是什么意思| 心脏t波改变吃什么药| 柯南什么时候完结| 纤维蛋白原偏低吃什么| 淋巴细胞百分比高是什么意思| 舌头上有齿痕是什么原因| 终结者是什么意思| 百度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-06). 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-06. Retrieved 2025-08-06. {{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]
海棠是什么 211是什么意思 八哥是什么鸟 自传是什么意思 周期长度什么意思
low什么意思 低血压吃什么好的最快女性 掌纹多而乱代表什么 吃什么补肾虚 杏仁有什么营养
懵懂少年是什么意思 水牛是什么意思 什么汤补气血效果最好 喉咙里痰多是什么原因 热伤风是什么意思
出人头地是什么意思 始终是什么意思 吃瓜什么意思 卢靖姗是什么混血 潭柘寺求什么最灵验
顺手牵羊是什么生肖hcv8jop4ns5r.cn 凿壁偷光告诉我们什么道理hcv8jop2ns6r.cn 夏天喝什么茶减肥hcv8jop3ns4r.cn 身体动不动就出汗是什么原因hcv9jop3ns0r.cn 31年属什么生肖hcv7jop5ns2r.cn
花白鲢喂养什么长得快tiangongnft.com 老八是什么意思hcv9jop1ns6r.cn 妊娠反应什么时候开始hcv8jop5ns6r.cn 遨游是什么意思hcv8jop5ns7r.cn 油皮适合用什么护肤品hcv7jop9ns4r.cn
金光是什么生肖jingluanji.com 六月六日是什么星座hcv8jop3ns3r.cn 创始人是什么意思inbungee.com 花呗是什么意思hcv8jop3ns7r.cn 淋巴结用什么药效果好hanqikai.com
日十组成什么字hcv8jop4ns0r.cn 梦见捡菌子是什么预兆liaochangning.com 榕字五行属什么hcv7jop9ns4r.cn 备孕吃什么叶酸hcv8jop9ns3r.cn 1978属什么hcv9jop3ns7r.cn
百度