李彤《操作系统原理》第5章-文件系统.pptVIP

李彤《操作系统原理》第5章-文件系统.ppt

  1. 1、本文档共104页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
将当前i节点作为工作i节点 路径名从“/”开始 将i根节点作为工作i节点 还有路径名分量? 从输入读入路径名的下一个分量 验证i节点的确是目录,存取许可权ok 工作i节点为根目录且分量为“··” 读目录(工作i节点) 路径分量与一个 目录表匹配 获取匹配分量的i节点号 释放工作i节点 将匹配的分量i节点作为工作i节点 返回 (工作i节点指针) 返回(无i节点) namei N Y N Y N Y N Y 图5.32 namei算法流程 在创建一个文件时,核心为该文件分配一个磁盘i节点,并打开文件,分配一个内存i节点,把文件名及所分到的i节点号组成一个新的目录项记入父目录文件中。构造目录的工作由函数maknode完成。 【算法5.9 maknode】 功能:创建一个新文件目录项。 调用格式:maknode(mode)。 输入:所创建文件的模式mode。 输出:指向i节点的指针ip。 调用ialloc分配一个磁盘i节点 和内存i节点ip ip为NULL? 调用wdir把新目录项记入父目录文件中 返回(ip) 返回(NULL) makenode(mode) N Y 图5.33 makenode算法流程 5.11UNIX中与文件有关的 系统调用 系统调用(system call)是UNIX System V提供给程序员使用的编程接口。 用户在程序中以使用函数的方式使用系统调用。 表5.4 与文件有关的系统调用一览表 外部名称 内部函数 调用参数 功 能 正常返回值 access saccess pathname, pmode 检验文件访问权限 0 chdir chdir pathname 改变工作目录 0 chmod chmod pathname, mode 改变文件RWX属性 0 chroot chroot dir_pathnm 改变根目录 0 chown chown path, owner, group 改变文件主和用户组名 0 close close fd 关闭文件 0 creat creat pathname, mode 创建一个新文件 fd dup dup fd 再分配一个fd 新fd fcntl fcntl fd, cmd, arg 文件控制 ≠-1 fstat fstat fd, stat_p 取i节点信息 0 ioctl ioctl fd, request, arg 字符I/O控制 link link path1, path2 连接一个文件 0 lseek seek fd, offset, whence 改变文件读写指针 mknod mknod path, mode, dev 改变一个目录文件 0 mount smount path, dir, rwflag 安装文件系统卷 0 open open pathname, oflg, mode 打开文件 fd pipe pipe fildes[2] 建立管道文件 0 read read fd, bufp, nbyte 读文件 nbyte stat stat pathname, stat_p 取i节点信息 0 sync sync 转储有关文件信息 umount surmount path 拆卸文件系统卷 0 unlink unlink path 解除文件连接 0 ustat utssys dev, ustat_p 取文件系统统计信息 0 utime utime path, utimebuf_p 设置文件访问和修改时间 0 write write fd, bufp, nbyte 写文件 nbyte 本章小结 文件系统 文件结构 文件管理 习题 p275:5(4)、(5)、(6)、(7)、(8) 谢 谢! 会泽百家 至公天下 * 5.8UNIX文件系统的存储资源管理 5.8.1空闲块的管理 5.8.2磁盘i节点的管理 5.8.3内存i节点的管理 5.8.4文件表的管理 5.8.1空闲块的管理 s_nfree 39 第1组 空 · · · 空 · · · · · · filsy中的s_free 空闲块数50 空闲块数50 …… 空闲块数50 最后组 倒数第2组 第2组 1 0 图5.20 成组数据链法对空闲块的管理 【算法5.1 alloc】 功能:分配指定设备上的空闲块,返回对应的缓冲区指针。 调用格式:alloc(dev)。 输入:空闲块所在文件卷设备号dev。 输出:指向对应于空闲块的缓冲区指针bp;若失败返回NULL。 将filsys中空闲块栈指针及总空闲块数清0 延时并打印错误 开空闲块栈锁并调用wakeup唤醒所有等待空闲块的进程 返回(bp) Alloc(

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8135026137000003

1亿VIP精品文档

相关文档