面经笔记本(操作系统篇)

面经笔记本(操作系统篇)

基础篇

进程调度说说吧?讲讲进程调度算法?

进程分为三种基本状态:运行态、就绪态、阻塞态。
运行态是进程拥有了CPU资源和其他所需资源,该进程正在运行。
就绪态是经常已经准备好了其他所需资源,正在等待运行。
阻塞态是进程既没有CPU资源也没有其他所需资源,通常指的是进程需要访问IO设备的时候进入阻塞态。
进程调度算法就是用来调度进程的算法。
分为先进先出算法(FIFO)、短进程优先、时间片轮转。
先进先出算法:就是先来先服务,直到阻塞态才到下个进程运行。
短进程优先:对所有进程按照运行时间排序,然后时间短的优先。
时间片轮转:每个进程都只能运行一段固定的时间,如果改进程没运行完,再放到队尾。

用户态和内核态的概念

       当一个进程在执行用户自己的代码时处于用户运行态(用户态),此时特权级最低,为3级,是普通的用户进程运行的特权级,大部分用户直接面对的程序都是运行在用户态。3级状态不能访问0级的地址空间,包括代码和数据;
       当一个进程因为系统调用陷入内核代码中执行时处于内核运行态(内核态),此时特权级最高,为0级。执行的内核代码会使用当前进程的内核栈,每个进程都有自己的内核栈。

主存与高速缓存

为了使用高速缓存,主存被划分为若干cache行,通常每行长32或64字节。每次缓存一整个cache行,每次缓存一整行而不是一个字节或一个字,这样的优点是什么?

存储器访问表现出引用局部原则,即如果读取某一个位置,则接下来访问这个位置的概率非常高,增加缓存命中的概率;读取速度快

每个字节的读取直接由 CPU 处理而没有 DMA ,这对于多道程序来说这种组织方式有啥意义?

DMA (Direct Memory Access,直接内存存取) 它允许不同速度的硬件装置来沟通 而不需要依赖于 CPU 的大量中断负载。在多道程序的情况下 CPU 处理读取会占用 CPU 大量的时间造成效率的降低;

什么是陷阱指令?在操作系统中解释它的用途。

陷阱指令将一个处理器的执行模式从用户模式切换到内核模式。该指令允许用户程序调用操作系统内核中的函数。

在分时系统中为什么需要进程表?在只有一个进程存在的个人计算机系统中,该进程控制整个机器直到进程结束,这种机器也需要进程表吗?

进程表是为了存储当前被挂起、甚或是被延迟和阻塞的进程状态。在单一进程的系统中是不需要,因为单一进程从不挂起。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值