zoukankan      html  css  js  c++  java
  • 操作系统第4次实验报告:文件系统

    ·姓名:彭晨

    ·学号:201821121039

    ·班级:计算1812

    1. 编写程序                              

              在服务器上用Vim编写一个程序:实现Linux系统命令ls -lai的功能,给出源代码。

              ls命令: 查看当前目录列表

              ls -l :-list使用长列表格式列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等,长格式中以d开头的是目录。

              ls -a:–all表示显示所有文件,包括隐藏文件。

              ls -i: –inode 印出每个文件的 inode 号。

             源代码:

      2. 分析运行结果

           给出运行结果截图,对于每一列是如何获取的,结合源代码做解释

              suqiankun@jmu-cs-ubuntu:~$ ls -lai 

         total 160 

         920635 drwx------ 6 suqiankun ubuntu 4096 Apr 27 09:52 . 

         131195 drwxr-xr-x 129 root root 4096 Apr 25 21:52 .. 

         920658 -rw------- 1 suqiankun ubuntu 10359 Apr 27 10:38 .bash_history

         920636 -rw-r--r-- 1 suqiankun ubuntu 220 Apr 5 2018 .bash_logout

             920638 -rw-r--r-- 1 suqiankun ubuntu 3771 Apr 5 2018 .bashrc

         920656 drwx------ 2 suqiankun ubuntu 4096 Mar 11 16:01 .cache

     输入命令"./lai-lai":

     第一列:每个文件的 inode 号。

     第二列:表示该文件或目录的权限位。

     第三列:第三列:文件的硬链接数

     第四列:文件的拥有者

     第五列:文件拥有者所在的组

     第六列:文件所占空间

     第七列:文件最近访问(或修改)的时间,使用stat结构体中的st_mtime获取。

     第八列:文件名

     3. 通过该实验产生新的疑问及解答

      这次实验中在-i的c代码的编写中出现了一些问题,然后在网上搜索了一些资料之后明白了-i的含义以及用法,解决了此问题,我也明白了系统中将目录下的文件名和文件inode号之间的映射作为目录的数据存放;人们通过文件名进行操作时,系统会通过对应路径目录的inode号找到目录的inode表数据,进而通过数据指针指向目录的数据,匹配文件名,得到文件的inode号;再到inode表中找到此文件的表项,再由文件数据指针指向真正的文件数据。

  • 相关阅读:
    学习:恢复被孤立的数据库dbo (转)
    学习:SharePoint编程提升权限的方法(转)
    SQL行列互换
    前台用js、jquery出现错误很多是由于IE缓存
    关于dialog首次加载的时候隐藏的一个问题
    要取某个对象的值,先要判断对象是否为空的简便写法(记)
    写js或者jquery的时候最重要的调试,再也不用alert弹出对象
    嵌入式软件测试的十大秘诀
    SIMULINK sfunction的设计
    关于java解压zip与rar的问题
  • 原文地址:https://www.cnblogs.com/19980803p-c/p/12809855.html
Copyright © 2011-2022 走看看