《操作系统导论》
读书笔记
丨Q ,Q丨
这个作者很懒,什么都没留下…
展开
-
分段
文章目录分段分段:泛化的基址/界限引用哪个段隐式方式显式方式讨论一下“生长方向”地址转换总结操作系统的支持总结分段如图,地址空间(左)的堆和栈之间,有一块每一使用的内部碎片,但是,如果要将整个地址空间加载到内存,内部碎片也会被加载。在比较极端的情况下,有一个很大的地址空间,而地址空间的大部分是没有被使用的内部碎片,在加载到内存时,很可能因为没有足够大的连续空间而加载失败;即使加载成功,大量的...原创 2020-03-03 14:30:44 · 293 阅读 · 0 评论 -
机制:地址转换
机制:地址转换文章目录机制:地址转换如何实现虚拟内存系统(虚拟化内存)基于软件的重定位(静态重定位)基于硬件的重定位(动态重定位)(动态重定位)硬件支持:总结(动态重定位)操作系统的支持内部碎片受限制的直接执行协议(动态重定位)对于一个进程来说,它只能看到自己的地址空间。在进程的角度,对内存的每次访问,都使用虚拟地址来访问内存;当然,这也是为了编程简单,在编程时,不必考虑真实的内存,程序运行在...原创 2020-03-03 01:10:27 · 1384 阅读 · 0 评论 -
抽象:地址空间
文章目录抽象:地址空间地址空间,是操作系统发展的需要地址空间虚拟内存(VM)系统抽象:地址空间地址空间,是操作系统发展的需要早期的单道程序,操作系统是很简单的,仅仅是一组供用户程序调用的函数。之后,为了提高效率,出现了多道程序共享机器。当某个进程在等待I/O时,可以切换到其他进程,尽可能少的让机器处于等待状态,提高利用率。又有了新的需求,想要提高交互性,大家都想要尽快地得到相应,所以出现...原创 2020-03-02 20:44:38 · 298 阅读 · 0 评论 -
进程调度新要求:响应时间
响应时间T响应时间= T首次运行- T到达时间引入响应时间的原因:如果使用STCF的调度方式,可以使周转时间最短,但是,如果短任务很多,则没有长任务执行的机会,对长任务来说很“不公平”轮转轮转的思想:设置一个时间片,一个进程使用完一个时间片后,切换到下一个进程。使用轮转算法,执行时间长的任务也有机会尽快的运行,从而较长的任务的响应时间也可以变短。时间片长度必须是时钟中...原创 2020-02-29 16:18:29 · 2901 阅读 · 1 评论 -
进程调度:根据周转时间优化
先进先出(FIFO)先进先出的调度方式,看名字就知道,“大家”先来后到排好队,一个一个调度。这样的调度方式实现起来很简单,但仅仅这样就够了吗?显然不是,对于进程的调度,当然有性能的要求。因此,要先引入一个评价性能的指标,来判断FIFO的性能。周转时间和平均周转时间T周转时间= T完成时间- T周转时间平均周转时间,就是将进程的周转时间加起来,再除以进程数。T平均周...原创 2020-02-29 15:41:24 · 1082 阅读 · 0 评论 -
进程切换过程之一:上下文切换
进程切换过程之一:上下文切换注:下面给出的源码均出自https://github.com/mit-pdos/xv6-public在进程进行切换时,需要进行上下文切换,也就是寄存器的值的保存。对于上下文的切换,有两种情况:硬件自动(隐式)完成、操作系统显式保存。下面分析两段xv6的源代码,都是上下文切换部分,版本有所不同:注:每个进程都有一个用来维护过程调用的栈,有...原创 2020-01-26 22:32:25 · 2425 阅读 · 0 评论 -
在进程间切换
在进程间切换在前面了解过,运行在操作系统上的多个进程可以并发执行,而进程的并发就需要进程间进行切换。操作系统完成进程的切换,问题来了:当一个进程正在运行,操作系统怎么获得CPU的控制权操作系统重获CPU控制权的方法1.协作方式:等待系统调用通过yield系统调用:这个系统调用只是将CPU的控制权交给操作系统。或者当程序发生异常时,会陷入操作系统,操作系统再次控制CPU。...原创 2020-01-26 21:15:12 · 584 阅读 · 0 评论 -
6.1 受限制的直接执行
6.1 受限制的直接执行受限制的直接执行:分成两部分来进行阐述“直接执行”和“受限制的操作”直接执行协议操作系统 程序 在进程列表上创建条目 微程序分配内存 将程序加载到内存 根据 argc/argv 设置程序栈 清除寄存器 执行call main()方法 执行main() 从main中执行return...原创 2020-01-24 19:45:19 · 393 阅读 · 0 评论 -
《操作系统导论》笔记与总结_目录
[第六章 机制:受限直接执行][6.2 受限制的操作][6.3 在进程之间切换]原创 2019-10-24 20:57:13 · 559 阅读 · 0 评论 -
第四章 抽象:进程
第四章 抽象:进程将程序的运行抽象为一个进程,使多个进程可以并发执行。虚拟化CPU提供假象:有多个CPU现在的CPU都是多核多线程的,也就是说,可以线程之间可以并行执行。注:线程和进程的区别:起初是单CPU时代,程序的每次运行都会进行资源的分配,这时候,进程就是分配资源的最小单位;同时,单CPU时代,也没有引入线程的概念,所以,那时候,进程也是调度的最小单位。当进入多CPU多线程...原创 2020-01-24 13:32:30 · 306 阅读 · 0 评论 -
第二章 操作系统介绍
第二章 操作系统介绍 操作系统最主要的作用:方便用户使用用户通过操作系统提供的系统调用,可以更加便捷的访问各种资源。2.1 虚拟化CPU一个CPU在某个时刻,只会执行一条指令,也就是说,从这个角度来讲,同一时刻不会有两个程序同时执行。但是,现在我们使用的PC机上的操作系统,都可以“同时”运行多个程序,就好像有多个CPU一样。其实,上面的“同时”是指同一时间段...原创 2020-01-15 13:00:22 · 300 阅读 · 0 评论