![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 69
JustWei_
这个作者很懒,什么都没留下…
展开
-
链接
链接1、编译系统以下是一个 hello.c 程序:#include <stdio.h>int main(){ printf("hello, world\n"); return 0;}在 Unix 系统上,由编译器把源文件转换为目标文件。gcc -o hello hello.c这个过程大致如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qVsp6dwU-1619943618079)(https://i.loli.net/20原创 2021-05-02 16:20:32 · 88 阅读 · 0 评论 -
设备管理
设备管理1、磁盘结构盘面(Platter):一个磁盘有一个或多个盘面。磁道(Track):盘面上的圆形带状区域,每个盘面可以划分多个磁道,最外圈的磁道是0号磁道,向圆心增长依次为1磁道、2磁道……磁盘的数据存放就是从最外圈开始的。扇区(Track Sector):磁道上的一个弧段,一个磁道可以有多个扇区,它是最小的物理储存单位,目前主要有 512 bytes 与 4 K 两种大小。柱面(Cylinder):是我们抽象出来的一个逻辑概念,简单来说就是处于同一个垂直区域的磁道称为柱面 ,即各盘面上面原创 2021-05-02 15:56:48 · 192 阅读 · 0 评论 -
内存管理
内存管理1、虚拟内存1.1 虚拟内存的基本思想每个进程拥有自己的地址空间,这个空间被分割为多个块,每个块称作一页。每一页有连续的地址范围。这些页被映射到物理内存,但并不是所有的页都必须在内存中才能运行程序。当程序引用到一部分在物理内存中的地址空间时,由硬件立刻执行必要的映射。当程序引用到一部分不在物理内存中的地址空间时,由操作系统负责将缺失的部分装入物理内存并重新执行失败的指令。1.2 虚拟内存的目的是为了让物理内存扩充成更大的逻辑内存,从而让程序获得更多的可用内存。1.3 虚拟内存的三个重要功原创 2021-05-01 17:14:15 · 444 阅读 · 0 评论 -
死锁
死锁1、产生死锁的四个必要条件1.1 互斥进程要求对所分配的资源(如打印机)进行排他性控制,即在一段时间内某资源仅为一个进程所占有。此时若有其他进程请求该资源,则请求进程只能等待。1.2 不可剥夺进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走,即只能由获得该资源的进程自己来释放(只能是主动释放)。1.3 请求与保持进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源已被其他进程占有,此时请求进程被阻塞,但对自己已获得的资源保持不放。1.4 环路等待有两个或者两个以上的进程原创 2021-04-30 20:44:16 · 235 阅读 · 2 评论 -
Cache与主存的地址映像
Cache与主存的地址映像Cache 和主存都被分成若干个大小相等的块,每块由若干个字节组成,主存和Cache 的数据交换是以块为单位。1、地址映像把主存地址空间映像到 Cache 地址空间,即按某种规则把主存的块复制到 Cache 中。2、地址映射方式Cache 与主存分成大小相等若干块。假设某台计算机主存容量为 1MB ,被分为 2048 块,每块为 512B 。Cache 容量为 8KB,被分为 16 块,每块也是 512B 。2.1 直接映射主存中的一个块只能映射到 Cache 中转载 2021-04-30 13:10:37 · 2536 阅读 · 0 评论 -
进程调度算法
进程调度算法不同环境的调度算法目标不同,因此需要针对不同环境来讨论调度算法。1、批处理系统批处理系统没有太多的用户操作,在该系统中,调度算法目标是保证吞吐量和周转时间(从提交到终止的时间)。1.1 先来先服务 (first-come first-serverd,FCFS)非抢占式的调度算法,按照请求的顺序进行调度。有利于长作业,但不利于短作业,因为短作业必须一直等待前面的长作业执行完毕才能执行,而长作业又需要执行很长时间,造成了短作业等待时间过长。1.2 短作业优先 (shortest job转载 2021-04-29 00:03:10 · 96 阅读 · 0 评论 -
进程与线程
进程与线程1、进程进程是操作系统资源分配的基本单位。进程可以并发地执行。进程控制块 (Process Control Block, PCB) 描述进程的基本信息和运行状态,所谓的创建进程和撤销进程,都是指对 PCB 的操作。2、线程线程是任务调度和执行的基本单位。一个进程中可以有多个线程,同一类线程共享地址空间,但每个线程都有自己独立的运行栈和程序计数器。QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 HTTP 请求线程、事件响应线程、渲染线程等等,线程的并发执行使得在浏览器中点击原创 2021-04-29 00:04:03 · 69 阅读 · 1 评论 -
宏内核和微内核
宏内核和微内核1. 宏内核宏内核是将操作系统功能作为一个紧密结合的整体放到内核。由于各模块共享信息,因此有很高的性能。在宏内核架构当中,内核管理着CPU调度,内存管理,文件管理和系统调用等各模块的的工作,由于用户服务和内核服务被实现在同一空间中,这样在执行速度上要比微内核快。然而,宏内核的劣势也是显而易见的,那就是当内核中的某个服务崩溃了,整个内核也会崩溃。另外,想要在内核中添加新的功能就意味着内核中的各个模块需要做相应的修改,因此其扩展性很弱。2. 微内核由于操作系统不断复杂,因此将一部分操作系原创 2021-04-27 22:06:16 · 440 阅读 · 0 评论 -
操作系统的基本特征
操作系统的基本特征1、操作系统的基本特征操作系统的四个基本特征:并发,共享,异步,虚拟。并发并发是指宏观上在一段时间内能同时运行多个程序,而每一时刻,单处理器环境下实际仅能有一道程序执行,故微观上这些程序还是在分时的交替执行。并行则指同一时刻能运行多个指令。并行需要硬件支持,如多流水线、多核处理器或分布式计算系统。操作系统通过引入进程和线程,使得程序能够并发运行。共享共享是指系统中的资源可以被多个并发进程共同使用,而不是被其中一个进程独占。有两种共享方式:互斥共享和同时共享(互斥访原创 2021-04-27 21:47:56 · 360 阅读 · 0 评论 -
操作系统的基本功能
操作系统的功能设备管理:主要是负责内核与外围设备的数据交互,实质是对硬件设备的管理,包含对输入输出设备的分配,初始化,维护与回收等。比如管理音频输入输出。作业管理:这部分功能主要是负责人机交互、图形界面或者系统任务的管理。文件管理:这部分功能涉及文件的逻辑组织和物理组织,文件夹结构和管理等。从操作系统的角度来看,文件系统是系统对文件存储器的存储空间进行分配,维护和回收。同一时候负责文件的索引,共享和权限保护。而从用户的角度来说。文件系统是依照文件文件夹和文件名称来进行存取的。进程管理:一个进程存在转载 2021-04-20 22:21:15 · 942 阅读 · 0 评论 -
进程间的通信方式
进程间的通信方式无名管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中启动,则它算是当前程序的子进程,这种方式我们成为高级管道方式。有名管道(namedpipe):有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。消息队列(messagequeue):消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递转载 2021-04-17 00:47:13 · 48 阅读 · 0 评论