![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 95
操作系统
mcyuuji
这个作者很懒,什么都没留下…
展开
-
操作系统备考学习 day1 (1.1.1-1.3.1)
操作系统的定义:操作系统(OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本的系统软件。操作系统是系统资源的管理者补充知识:执行一个程序前需要将该程序放到内存中,才能被CPU处理封装思想:操作系统吧一些丑陋的硬件功能封装成简单易用的服务,使用户能更方便地使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。向上层提供方便易用的服务联机命令接口= 交互式命令接口 如cmd。原创 2023-09-01 17:43:02 · 868 阅读 · 0 评论 -
操作系统备考学习 day2 (1.3.2 - 1.6)
中断的作用CPU上会运行两种程序,一种是操作系统内核程序,一种是应用程序。在合适的情况下,操作系统内核会把CPU的使用权主动让给应用程序中断是让操作系统内核夺回CPU使用权的唯一途径中断会使CPU由用户态变为内核态,使操作系统重新夺回对CPU的控制权如果没有中断机制,那么一旦应用程序上CPU运行,CPU就会一直运行这个应用程序,就无法实现并发中断的类型若当前执行的指令是非法的,如除法的除数为0,则会引发一个中断信号。原创 2023-09-03 19:22:21 · 325 阅读 · 0 评论 -
操作系统备考学习 day3 (2.1.1 - 2.1.6)
Linux中通过shm_open系统调用,申请一片共享内存区,通过mmap系统调用,将共享内存区映射到进程自己的地址空间,通过“增加页表项/段表项”即可将同一片共享内存区映射到各个进程的地址空间中。引入线程后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任务。当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的。缺点:一个用户进程会占用多个内核级线程,线程切换由操作系统内核完成,需要切换到核心态,因此线程管理的成本高,开销大。原创 2023-09-17 17:46:00 · 177 阅读 · 0 评论 -
操作系统备考学习 day4 (2.1.7 - 2.2.4)
它包括四个部分:作业在外存后备队列上等待作业调度(高级调度)的时间、进程在就绪队列上等待进程调度(低级调度)的时间、进程在CPU上执行的时间、进程等待I/O操作完成的时间。当一个进程正在处理机上执行时,如果有一个更重要或更紧迫的进程需要使用处理机,则立即暂停正在执行的过程,将处理机分配给更重要紧迫的那个进程。即,只允许进程主动放弃处理机。,必然会使整个系统的效率降低,使系统大部分时间都花在了进程切换上,而真正用于执行进程的时间减少。,在等待I/O完成的期间其实进程也是在被服务的,所以不计入等待时间。原创 2023-09-18 17:22:33 · 116 阅读 · 0 评论 -
操作系统备考学习 day5(2.2.5 - 2.3.1)
每当有进程加入就绪队列改变时就需要调度,如果新到达的进程剩余时间比当前运行的进程剩余时间更短,则由新进程抢占处理机,当前运行进程重新回到就绪队列。另外,当一个进程完成时也需要调度。高响应比优先算法:非抢占式的调度算法,只有当前运行的进程主动放弃CPU时(正常/异常完成,或主动阻塞),才需要进行调度,调度时计算所有就绪进程的响应比,选响应比最高的进程上处理机。指当一个进程访问某临界资源时,另一个想要访问该临界资源的进程必须等待。当前访问临界资源的进程访问结束,释放该资源之后,另一个进程才能去访问临界资源。原创 2023-09-22 11:35:39 · 279 阅读 · 0 评论 -
操作系统备考学习 day6(2.3.2 - 2.3.4)
若刚开始lock是true,则执行TLS后old返回的值为true,while循环条件满足,会一直循环,直到当前访问临界区的进程在退出区进行“解锁”。逻辑上来看Swap和TSL并无太大区别,都是先记录下此时临界区是否已经被上锁(记录在old变量上),再将上锁标记lock设置为true,最后检查old,如果old为false则说明之前没有别的进程对临界区上锁,则可跳出循环,进入临界区。前一个算法的问题是先“检查”后“上锁”,但是这两个操作又无法一气呵成,因此导致了两个进程同时进入临界区的问题。原创 2023-09-26 12:23:23 · 137 阅读 · 0 评论 -
操作系统备考学习 day7 (2.3.4 ~ 2.3.5)
爸爸转向盘子中放苹果,妈妈专向盘子中放橘子,儿子专等着吃盘子中的橘子,女儿专等着吃盘子中的苹果。有读者和写者两组并发进程,共享一个文件,当两个或两个以上的读进程同时访问共享数据时不会产生副作用,但若某个写进程和其他进程(读进程或写进程)同时访问共享数据时则可能导致数据不一致的错误。这些进程之间只存在互斥关系,但是与之前接触到的互斥关系不同的是,每个进程都需要同时持有两个临界资源,因此就有“死锁”问题的隐患。建议:需要注意的是,实现互斥的P操作一定要在实现同步的P操作之后,否则可能引起“死锁”原创 2023-10-08 21:13:14 · 184 阅读 · 0 评论 -
操作系统备考学习 day8 (2.4.1 ~ 2.4.4)
可以采用静态分配方法,即进程在运行前一次申请完它所需要的全部资源,在它的资源未满足前,不让他投入运行,一旦投入运行后,这些资源就一直归它所有,该进程就不会再请求别的任何资源了。有些资源可能只需要用很短的时间,因此如果进程的整个运行期间都一直保持着所有资源,就会造成严重的资源浪费,资源利用率极低。请求和保持条件:进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源又被其他进程占有,此时请求进程被阻塞,但又对自己已有的资源保持不放。该策略的缺点:并不是所有的资源都可以改造成可共享使用的资源。原创 2023-10-11 15:09:12 · 574 阅读 · 0 评论 -
操作系统备考学习 day9 (3.1.1 ~ 3.1.11)
编译、链接后的装入模块的地址都是从0开始,指令中使用的地址、数据存放的地址都是相对于起始地址而言的逻辑地址。可根据内存的当前情况,将装入模块装入到内存的适当位置。缺点:邻近适应算法的规则可能会导致无论低地址、高地址部分的空闲分区都有相同的概率被使用,也就导致了高地址部分的大分区更可能被使用,划分为小分区,最后导致无大分区可用。算法思想:为了解决最佳适应算法的问题–即留下太多难以利用的小碎片,可以在每次分配时优先使用最大的连续空闲区,这样分配后剩余的空闲区就不会太小,更方便使用。(因为程序中存在大量的循环)原创 2023-10-16 20:54:53 · 210 阅读 · 0 评论 -
操作系统备考学习 day10 (3.2.1 ~ 3.2.5)
基于局部性原理,在程序装入时,可以将程序中很快会用到的部分装入内存,暂时用不到的部分留在外存,就可以让程序开始执行在程序执行过程中,当所访问的信息不再内存时,由操作系统负责将所需信息从外存调入内存,然后继续执行程序若内存空间不够,由操作系统负责将内存中暂时用不到的信息换出到外存在操作系统的管理下,在用户看来似乎有一个比实际内存大得多的内存,这就是虚拟内存操作系统虚拟性的一个体现,实际的物理内存大小没有变,只是在逻辑上进行了扩充。多次性。原创 2023-10-20 21:39:35 · 248 阅读 · 0 评论 -
操作系统备考学习 day11 (4.1.1~4.1.9)
需要指明是哪个文件(在支持“打开文件”操作的系统中,只需要提供文件在打开文件表中的索引号即可),还需要指明要写入多少数据、指明写入的数据要放在内存中的什么位置。需要指明是哪个文件(在支持“打开文件”操作的系统中,只需要提供文件在打开文件表中的索引号即可),还需要指明要读入多少数据、指明读入的数据要放在内存中的什么位置。当找到文件名对应的目录项时,才需要将索引结点调入内存,索引结点中记录了文件的各种信息,包括文件再外存中的存放位置,根据“存放位置”即可找到文件。索引顺序文件是索引文件和顺序文件思想的结合。原创 2023-10-30 23:20:26 · 199 阅读 · 0 评论 -
操作系统备考学习 day12 (第五章)
I/O”就是“输入/输出”I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备。属于计算机中的硬件部件Unix系统将外部设备抽象为一种特殊的文件,用户可以使用与文件操作相同的方式对外部设备进行操作理解并记住I/O软件各个层次之间的顺序,要能够推理判断某个处理应该是在哪个层次完成的(最常考的是设备独立性软件、设备驱动程序这两层。直接涉及到硬件具体细节、且与中断无关的操作肯定是在设备驱动程序层完成的;没有涉及硬件的、对各种设备都需要进行的管理工作都是在设备独立性软件层完成的。原创 2023-11-03 22:20:36 · 313 阅读 · 0 评论