![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
操作系统
操作系统学习笔记
CodePanda@GPF
分享Java、算法等知识,欢迎热爱编程的朋友一起交流!
展开
-
操作系统------内存管理笔记2
局部性原理时间局部性程序中的指令一旦执行,不久后该指令可能再次执行;某数据被访问过,不久后该数据可能被再次访问。原因是程序中存在着大量的循环操作。空间局限性一旦程序访问了某个存储单元,在不久后,其附近的存储单元也将被访问。原因是指令通常是顺序存放、顺序执行的,数据一般也是以向量、数组、表的形式存储的。虚拟存储器基于局部性原理,在程序装入时,将程序的一部分装入内存,而将其余部分留在外存,就可以启动程序运行。在程序执行过程中,当访问的信息不在内存时,由操作系统将所需要的部分调入内存,然后继续执行程序原创 2020-07-20 16:11:12 · 95 阅读 · 0 评论 -
操作系统----内存管理笔记1
静态重定位特点一个作业装入内存时,必须要给它分配要求的全部内存空间,若没有足够的内存,则不能装入该作业,一旦作业进入内存,整个运行期间就不能在内存中移动,也不能申请内存空间动态重定位特点可以将程序分配到不连续的存储区中,在程序运行之前可以只装入它的部分代码即可投入运行,然后在允许期间,根据需要动态申请内存分配覆盖与交换覆盖将用户空间分为一个固定区和若干个覆盖区,将经常活跃的部分放在固定区,其余部分按调用关系分段。首先将那些将要访问的段放入覆盖区,其他段放在外存中,在需要调用前,系统再将其调入覆盖原创 2020-07-14 17:42:05 · 188 阅读 · 0 评论 -
操作系统之死锁
死锁定义多个进程在并发执行过程中因争夺互斥资源而造成的一种僵局。当这种僵局出现时,其中一组进程或所有进程都处于永远等待的状态,若无外力作用,这组进程或所有进程都无法继续推进,这种僵局就是死锁。死锁与死循环的区别死锁具有偶然性,死循环具有必然性进程处于死锁状态时处于阻塞状态,不占用CPU,死循环占用CPU死锁是由于并发进程之间争夺资源产生的,死循环是由于程序设计不当产生的死锁与饥饿的区别死锁状态的进程是除了CPU以外的资源还有其他的资源也未得到,即使将CPU分配给它也不能执行;而饥饿状态时其原创 2020-07-13 17:12:15 · 165 阅读 · 0 评论 -
操作系统----信号量
信号量代表了一类物理资源,是相应的物理资源的抽象,通常为整型或结构体型,除了初始化之外,其他情况下只能使用P V进行操作P操作执行一次P(S)则S.value减一,若执行P(S)之后S.value>=0,则表示该类资源可用,否则不可用V操作执行一次V(S)则S.value加一,若执行V操作以后,S.value的值仍然小于0,则表示仍然有处于阻塞状态的进程在等待该资源,于是将S.L所指的阻塞队列上的第一个阻塞进程唤醒并加入到就绪队列中。用信号量实现进程互斥比如P1 P2两个进程都要访问临界原创 2020-07-10 17:10:49 · 179 阅读 · 1 评论 -
进程同步与通信-----笔记一
并发进程之间的关系间接制约多个进程共享一种资源,但是该资源一次仅运行一个进程使用,当某一个进程在使用时,其他进程必须等待。直接制约由任务协作引起,若干个进程为了完成一项任务必须有一定的先后执行顺序。例如A->B->C,只有当进程执行结束以后B进程才可以执行。进程同步若干个进程为了完成一个共同的任务而相互合作,由于各个进程的推进速度不一样,为了协调,需要等待其他进程发送消息。进程之间这种相互合作等待对方消息的协调关系就称为进程同步。进程互斥进程之间争夺互斥资源引起的。临界资源和临原创 2020-07-09 17:34:11 · 149 阅读 · 0 评论 -
操作系统-----处理器调度算法
CPU的三级调度1.高级调度----作业调度按一定的算法把外存上处于后备作业队列中的作业调入内存,为它们分配所需要的资源并创建进程,然后将新创建的进程插入到系统的就绪队列中。2.中级调度----交换调度在内存使用紧张的情况下,将内存中暂时无法运行的进程挂起,将其从内存调至外层3.低级调度----进程调度按照一定的算法将CPU分配给就绪队列中的某个进程几种调度算法周转时间=完成时间-提交时间=运行时间+等待时间带权周转时间=周转时间/运行时间先来先服务调度算法—FCFS最简单的一种调度算原创 2020-07-08 16:58:39 · 233 阅读 · 0 评论 -
操作系统之进程相关概念
操作系统中为什么要引入进程?在多道程序环境下,程序的并发执行代替了程序的顺序执行。并发执行破坏了程序的封闭性和可再现性,使得程序和计算不再一一对应。此外,并发执行又导致了资源共享与资源竞争,这造成了各并发执行的程序之间可能存在相互制约的关系。因此,并发执行的程序已不再处于一个封闭的环境中,从而出现了许多新的特征,即独立性、并发性、动态性以及并发程序按各自独立的、不可预知的速度向前推进的异步性。程序这个静态概念已经无法真实地反映并发程序的执行特征,所以引入了一个能够描述并发程序执行过程且能共享资源的基本单位原创 2020-07-07 17:18:45 · 312 阅读 · 0 评论 -
关于内核态、用户态、中断、系统调用
内核态内核态是指操作系统程序运行时的状态,在该状态下可以执行系统的所有指令,并且能够使用系统的全部资源。那问什么要引入这种状态呢?原因是为了保护操作系统程序。用户态用户态是指用户程序运行时的状态这两种状态之间如何进行切换?用户态到内核态发生在中断产生时,内核态到用户态的转化发生在中断返回到用户程序的时候关于中断中断是指程序在执行过程中CPU对系统发生的某个事件做出的一种响应。有以下特点:1.中断时随机的2.中断时可以恢复的3.中断时自动处理的中断处理过程:1.保护被中断进程的现场信息原创 2020-07-06 16:46:39 · 1141 阅读 · 0 评论 -
操作系统学习笔记第一篇------操作系统概念
操作系统笔记第一篇操作系统基本概念操作系统定义操作系统主要功能1.处理器管理2.存储管理3.设备管理4.文件管理5.用户接口6.网络与通信管理操作系统的基本特征1.并发性2.共享性3.虚拟性4.不确定性主要操作系统的类型1. 批处理操作系统2.分时操作系统3.实时操作系统操作系统基本概念操作系统定义操作系统是介于计算机硬件和软件之间的一个软件系统。它需要完成如下功能:1.控制和管理计算机系统所有的硬件和软件资源2.合理地组织计算机地工作流程3.方便用户使用计算机4.防止对计算机资源的非法侵占原创 2020-07-06 15:38:53 · 154 阅读 · 0 评论