赞助连接

赞助连接

阅 读 文 章

[转贴]FreeBSD核心入门 作者:(日)大木敦雄 译:Liangvy

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(leolee761128) | 时间:2007-05-27 | 浏览:人次 ]


         这样,多个分区建立一个文件系统就有可能了。启动核心的分区作为一个 
    已存的文件系统,其他的分区就嫁接到目录层上面。这个操作过程就是mount。 
    利用mount指令,就可以实现上面的操作。但是,mount之前的目录,在mount后 
    就给屏蔽了,直到mount结束,那些目录就可以再现。 
         以上就是经典的unix文件系统理论。但是,对于读入了i-node,就去读 
    data block ,这种情况,对于一个比较大的分区,硬盘磁头向disk head的距 
    离就太大了。总的来说,访问时间就会变长。在这里有一些指导思想: 
         。分区要比较小,多分小区 
         。了解超级块的地位,超级块记录了分区的信息,考虑由于介质的原因而 
           使这个超级块造成损害,所以,在分区内部就必须为它准备多几个拷贝。 
         。目录和它下层的文件,要在相同的领域内放置。 
         。确保单位data block要比磁盘的block大。 
         考虑了一些东西后,经过改良标准,freebsd就采用一个叫做FFS的文件系 
    统(Fast File System),但这只是i-node领域/data领域的配置方法的变化,基 
    本的考虑方法并没有变。对磁盘分区进行文件系统的构造的初始化由命令newfs 
    提供。看看它的source就知道怎么配置的了。其他的构造(......)对应于kernel 
    的source,对于构成boot program的文件disk.c和sys.c(@i386/boot/biosboot) 
    比较简单易懂(单纯性)。 
         上面讲述的i-node对disk的partition的记录形式,详细的(source)在 
    struct dinode(@ufs/ufs/dinode.h)里面有。在核心内部使用的,包含这个东西 
    的是struct inode(@ufs/ufs.inode.h)。 

         描述io设备的文件叫特殊文件(special file),他对应的i-node有两个种 
    类: 
         。块型(block) 
           和装置的固有的数据记录的单位(大多数的情况是512byte)无关。读写 
           的最小单位是1byte,可以在任意的场所里任意长度的data。核心对各个 
           block型的特殊文件进行固定的记录单位长度(倍数)进行缓冲(buffer) 
           管理,这样就可以处理任意长度的读写了. 
         。文字型(char) 
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 作者 入门 核心 文件 进行 设备 系统 调用 操作 v-node

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.