读《Unix/Linux 编程实践教程 作者:Bruce Molay》
Linux系统的一些大疑问???
问题1:什么是系统编程?:进行系统编程时,必须对系统的结构和工作方式有更深的了解,要知道内核提供哪些服务(系统调用),如何使用他们,系统有哪些资源和设备,不同的资源和设备该如何操作???
内核提供服务以便系统程序可以直接访问系统资源,那么有哪些系统资源和服务呢???
系统资源:
()。处理器
()。输入输出
()。进程管理
()。内存
()。设备
()。计时器
()。进程间通信
()。网络
每个系统调用的功能和使用方法是什么???
问题1: 为什么在系统中双击一个图标能运行一个程序???这中间发生了什么???操作系统做了什么?
:::部分:在图形用户界面中,图标和菜单可以看作是提示符,双击图标就像运行命令一样,系统会把双击操作解释为相应程序的执行。
问题2:--目录---:新建或删除目录等这些是如何工作的呢???
1.目录存放在哪里???
2.用户在自己的目录中意味着什么?转到其他目录中又意味着什么?
3.怎样才能编写一个改变当前目录的程序???
4.内核在这颗目录树中扮演者什么样的角色呢??
问题3:--文件---:文件中的数据是如何存储在磁盘上的???
1.文件是如何被复制的???
2.如何文件的移动和改名是怎么实现的???
3.文件的名字存放在哪里???
4、文件的许可权限是如何工作的???怎么来设置??? 系统是如何应用权限的???
许可权限存放在哪里???
问题4: who命令是如何工作的呢???
1.who用到了哪些系统调用???这些系统调用的功能是什么吗???
2.如何编写who???
3.系统调用: open、 read、 close
打开一个文件 :open系统调用,
对于系统调用open来说,这个系统调用在进程和文件之间建立一条连接,这个连接被称为文件描述符,它就像一条由进程通向内核的通道。
问题5:cp命令是如何创建或重写文件的???
1.
问题6:注销过程是如何工作的???
问题7:如何列出一个目录的内容??
如何读取并显示文件的属性???
给出一个名字如何判断它是目录还是文件???
目录到底是什么????
文件系统的问题:???
1.文件”在一个目录中“到底是什么意思???意味着什么??? 编程如何实现 ???
一个人”处在某个目录中“又是什么意思???
2.文件和目录时如何组织和存储的???
3.Unix 文件系统的内部结构???
在Unix 系统中,文件系统由三部分构成:
1.超级块
2.i-节点表
3.数据区
4.文件系统可以用来存储文件内容、文件属性(文件所有者)和目录,这些不同类型的数据是如何存储在别编号的磁盘块上的呢???
5. 在Unix 系统中,它把一个文件分为三个部分:
文件内容、文件属性、和目录 ,那么,Unix 系统把它们分开存放之后,又是如何将它们联系在一起呢???
6.创建一个文件的过程是怎样的呢??? 它是如何工作的呢???
创建一个新文件的时候又会发生什么呢???
7.一个文件有: 文件名、 属性、内容 、目录 4个部分组成。那么,文件系统是如何处理这4个部分的呢???
8.最大的疑问??? :什么是目录??? 目录是如何实现的???
9.Unix 系统,把目录也看成是文件,那么既然,Unix系统把目录也看成是文件,那么,目录,也就有了, 目录名、 内容、 属性、
但是 目录名又是如何跟i节点联系起来呢???
如何通过目录名找到i节点呢???
但是内核是如何通过目录名找到目录文件的呢??
系统是如何处理目录的呢??
在Unix 系统中是不是有一个目录数组,一次记录下的每一个目录???
结合这句话如何理解:”在树状目录结构中,系统定位任一文件的方法时沿着根目录向下逐级到达其子目录“
???
目录名是不是用一个数组存放的???
问题10: Unix 是如何管理设备的???
1.既然Unix系统把设备都处理成文件,那么他又是怎么管理的呢???
2.设备文件有哪些特点???
3.
问题:一个程序如何运行另一个程序???
Linux系统的一些大疑问???
问题1:什么是系统编程?:进行系统编程时,必须对系统的结构和工作方式有更深的了解,要知道内核提供哪些服务(系统调用),如何使用他们,系统有哪些资源和设备,不同的资源和设备该如何操作???
内核提供服务以便系统程序可以直接访问系统资源,那么有哪些系统资源和服务呢???
系统资源:
()。处理器
()。输入输出
()。进程管理
()。内存
()。设备
()。计时器
()。进程间通信
()。网络
每个系统调用的功能和使用方法是什么???
问题1: 为什么在系统中双击一个图标能运行一个程序???这中间发生了什么???操作系统做了什么?
:::部分:在图形用户界面中,图标和菜单可以看作是提示符,双击图标就像运行命令一样,系统会把双击操作解释为相应程序的执行。
问题2:--目录---:新建或删除目录等这些是如何工作的呢???
1.目录存放在哪里???
2.用户在自己的目录中意味着什么?转到其他目录中又意味着什么?
3.怎样才能编写一个改变当前目录的程序???
4.内核在这颗目录树中扮演者什么样的角色呢??
问题3:--文件---:文件中的数据是如何存储在磁盘上的???
1.文件是如何被复制的???
2.如何文件的移动和改名是怎么实现的???
3.文件的名字存放在哪里???
4、文件的许可权限是如何工作的???怎么来设置??? 系统是如何应用权限的???
许可权限存放在哪里???
问题4: who命令是如何工作的呢???
1.who用到了哪些系统调用???这些系统调用的功能是什么吗???
2.如何编写who???
3.系统调用: open、 read、 close
打开一个文件 :open系统调用,
对于系统调用open来说,这个系统调用在进程和文件之间建立一条连接,这个连接被称为文件描述符,它就像一条由进程通向内核的通道。
问题5:cp命令是如何创建或重写文件的???
1.
问题6:注销过程是如何工作的???
问题7:如何列出一个目录的内容??
如何读取并显示文件的属性???
给出一个名字如何判断它是目录还是文件???
目录到底是什么????
文件系统的问题:???
1.文件”在一个目录中“到底是什么意思???意味着什么??? 编程如何实现 ???
一个人”处在某个目录中“又是什么意思???
2.文件和目录时如何组织和存储的???
3.Unix 文件系统的内部结构???
在Unix 系统中,文件系统由三部分构成:
1.超级块
2.i-节点表
3.数据区
4.文件系统可以用来存储文件内容、文件属性(文件所有者)和目录,这些不同类型的数据是如何存储在别编号的磁盘块上的呢???
5. 在Unix 系统中,它把一个文件分为三个部分:
文件内容、文件属性、和目录 ,那么,Unix 系统把它们分开存放之后,又是如何将它们联系在一起呢???
6.创建一个文件的过程是怎样的呢??? 它是如何工作的呢???
创建一个新文件的时候又会发生什么呢???
7.一个文件有: 文件名、 属性、内容 、目录 4个部分组成。那么,文件系统是如何处理这4个部分的呢???
8.最大的疑问??? :什么是目录??? 目录是如何实现的???
9.Unix 系统,把目录也看成是文件,那么既然,Unix系统把目录也看成是文件,那么,目录,也就有了, 目录名、 内容、 属性、
但是 目录名又是如何跟i节点联系起来呢???
如何通过目录名找到i节点呢???
但是内核是如何通过目录名找到目录文件的呢??
系统是如何处理目录的呢??
在Unix 系统中是不是有一个目录数组,一次记录下的每一个目录???
结合这句话如何理解:”在树状目录结构中,系统定位任一文件的方法时沿着根目录向下逐级到达其子目录“
???
目录名是不是用一个数组存放的???
问题10: Unix 是如何管理设备的???
1.既然Unix系统把设备都处理成文件,那么他又是怎么管理的呢???
2.设备文件有哪些特点???
3.
问题:一个程序如何运行另一个程序???