空闲块登记表是盘块分配和回收的依据 。
空闲块登记表有四种实现方案:
- 空闲表
系统为外存上的所有空闲区建立一张空闲表,每个空闲区对应于一个空闲表项适合于可变大小分区的连续分配方式 - 空闲链表
这种空闲空间组织方法适合于非连续存储文件 。空闲盘块链:将磁盘上的所有空闲空间,以盘块为单位拉成一条链 。空闲盘区链:将磁盘上的所有空闲盘区(每个盘区可包含若干个盘块)拉成一条链 。 - 位示图法
利用二进制位0、1表示存储空间中存储块的使用状态盘块的分配:顺序扫描位示图,从中找出一个值为“0”的二进制位(空闲位),将所找到的空闲位号转换成与之相应的空闲块号: b=n*(i-1)+j b为对应的空闲块的块号 n为位示图中每行的位数 i、j分别为空闲位在位示图的行号、列号,修改位示图:令map[i,j]=1盘块的回收:将回收盘块的盘块号转换成位示图中的行 号和列号 i=(b-1)DIV n+1 j=(b-1)MOD n+1,修改位示图:令 map [i,j]=0 - 成组链接法
- 用户接口
联机用户接口脱机用户接口 - 程序接口
又称应用编程接口API,允许运行程序调用操作系统的服务和功能 。程序接口由一组系统调用(SystemCall)) 组成,用户程序使用“系统调用”就可获得操作系统的底层服务,使用或访问系统的各种软硬件资源 。库函数的目的是隐藏访管指令细节,使系统调用更象过程调用,但一般地说,库函数属于用户程序而非系 统程序 。
联机命令接口应由终端处理程序、命令解释程序及一组联机命令构成 。
Shell命令语言Shell是UNIX与用户的交互接口,是操作系统的最外层,称为外壳
Shell既是一种命令语言,也是一种程序设计语言
Shell不是UNIX的核心程序,运行在用户态
系统调用系统调用指系统为用户程序调用操作系统所提供的子程序 。它与一般的函数调用不同,系统调用是通过中断方式转向相应子程序的,它工作在核心态 (即特权方式),而一般函数调用,仍仅在用户态下的地址转移。
系统调用与一般过程调用的区别:
- 运行在不同的系统状态
一般过程调用,其调用程序和被调用程序 都运行在相同状态:核心态或用户态系统调用:调用程序在用户态,被调用程 序在系统态 - 状态的转换
- 返回问题
一般过程调用在被调用过程执行完后,回调用过程 。抢占式调度的系统中,被调用过程执行完后,系统将对所有要求运行的进程进行优先级分析 。如果调用进程仍有最高优先级,则返回到调用进程执行,否则,引起重新调度,让优先级最高的进程 优先执行 。此时,系统把调用进程放入就绪队列 。 - 嵌套调用
系统调用也允许嵌套调用,即在一被调用过程执行期间,可再利用系统调用命令调用另一系统调用,最大深度为
推荐阅读
- win10系统提示计算机内存不足处理方法 显存不足怎么解决方案
- 计算机常用快捷方式及说明 电脑快捷方式是什么意思
- 电脑操作系统处理文件的启动 电脑bat文件怎么打开
- 城市基础设施配套费会计分录 城市基础设施配套费
- 兰芝化妆品效果怎么样 兰芝化妆品效果怎么样?
- 计算机里面乘号的输入方法 笔记本电脑乘号怎么打
- 佳能R6零基础图文教学 菜单键是哪个按键
- 肌肉量增加基础代谢下降 肌肉分解基础代谢下降
- Windows操作系统全面详解 windows什么意思
- 现在的量子计算机发展到了什么阶段,瓶颈是什么,前景如何呢?