主题:初学操作系统,几个简单问题,多多指教!
1、什么是作业?什么是进程?它们和我们所理解的程序有什么区别?
我现在的理解是,作业是一项任务,它由一组程序组成,进程是某个程序的一部分,它是独立的可以执行的部分,可以独占或共享资源。
2、如何设置信号量用PV操作实现进程的同步?
3、关于作业的状态,有后备、提交、运行、完成四个。是不是只有‘运行’状态的时候才进入主存,其余的时候都在辅存?
“进程的高级调度又叫‘作业调度’,它决定处于输入池的哪个后备作业可以调入主系统。”——书上的话。什么是主系统?是在主存吗?这个时候没有进入主存吧,只有直接参与CPU的竞争的时候才进入主存吧,即中级调度的时候才进入主存吧,那这个时候是进入了辅存的交换区吗?因为中级调度在主存资源紧张的时候,会进行页面置换,这应该是属于中级调度的工作吧。
4、页面置换算法中的最近最久未使用算法是怎么操作的?
书上有个例题:
访问页面的顺序:(页面号)0、7、6、5、7、4、7、3、5、4、7
画成图:
访问页面 0 7 6 5 7 4 7 3 5 4 7
物 0 0 6 5 7 4 7 3 5 4 7
理 7 0 6 5 7 4 7 3 5 4
块 7 0 6 5 5 4 7 3 5
缺页 x x x x x x x x x x
我怎么一点规律都看不出来???
第四次要访问5号页面,没有,缺页,这个时候,最近最久未访问的为什么是7,我觉得是0啊,0的T已经是3了,7才2啊。搞不明白~~~
5、文件系统的多级目录结构的数据结构是怎样的?是不是譬如现在的WINDOWS系统对同一目录的文件数有个限制?一个目录是一个表,里面是该目录的文件地址,或者目录地址?那这个表是顺序存储的吗?索引还是链表?
6、作业调度算法里有‘最短作业优先’算法,一个作业还没有执行的时候我怎么知道它要花多少时间?不知道的话我又怎么知道哪个‘短’呢?是不是估计的?
我现在的理解是,作业是一项任务,它由一组程序组成,进程是某个程序的一部分,它是独立的可以执行的部分,可以独占或共享资源。
2、如何设置信号量用PV操作实现进程的同步?
3、关于作业的状态,有后备、提交、运行、完成四个。是不是只有‘运行’状态的时候才进入主存,其余的时候都在辅存?
“进程的高级调度又叫‘作业调度’,它决定处于输入池的哪个后备作业可以调入主系统。”——书上的话。什么是主系统?是在主存吗?这个时候没有进入主存吧,只有直接参与CPU的竞争的时候才进入主存吧,即中级调度的时候才进入主存吧,那这个时候是进入了辅存的交换区吗?因为中级调度在主存资源紧张的时候,会进行页面置换,这应该是属于中级调度的工作吧。
4、页面置换算法中的最近最久未使用算法是怎么操作的?
书上有个例题:
访问页面的顺序:(页面号)0、7、6、5、7、4、7、3、5、4、7
画成图:
访问页面 0 7 6 5 7 4 7 3 5 4 7
物 0 0 6 5 7 4 7 3 5 4 7
理 7 0 6 5 7 4 7 3 5 4
块 7 0 6 5 5 4 7 3 5
缺页 x x x x x x x x x x
我怎么一点规律都看不出来???
第四次要访问5号页面,没有,缺页,这个时候,最近最久未访问的为什么是7,我觉得是0啊,0的T已经是3了,7才2啊。搞不明白~~~
5、文件系统的多级目录结构的数据结构是怎样的?是不是譬如现在的WINDOWS系统对同一目录的文件数有个限制?一个目录是一个表,里面是该目录的文件地址,或者目录地址?那这个表是顺序存储的吗?索引还是链表?
6、作业调度算法里有‘最短作业优先’算法,一个作业还没有执行的时候我怎么知道它要花多少时间?不知道的话我又怎么知道哪个‘短’呢?是不是估计的?