操作系统笔记
文章平均质量分 82
小小酥诶
无
展开
-
让进程能够“相互沟通”的高级方式一:匿名管道
我们都知道进程是具有独立性的,意味着进程之间无法相互通信。但在一些情况下,不得不让进程之间进行通信。例如,数据的传输,数据的共享。原创 2023-05-30 21:16:20 · 297 阅读 · 1 评论 -
从索引结点出发探索软、硬链接
对于整个计算机系统的资源管理,我们可以认为,OS先将这些资源的数据信息,给描述起来构成一个部分,然后再将它们组织起来,就能够实现由OS集中管理。举一个最经典的例子,进程的引入是为了实现程序的并发执行,同一时间间隔内,系统中可能存在大量的进程,OS就需要对这些进程进行管理。首先,OS将进程的各种属性信息描述起来,形成了一个叫做PCB的数据结构,Linux上的PCB叫做task_struct。然后,再将这些PCB组织起来,组织的方式多种多样,例如链接、索引等。文件的原理也是如此。原创 2023-05-25 20:00:31 · 843 阅读 · 0 评论 -
线程的同步与互斥
临界资源:能被多线程执行流共享访问的资源临界区:线程内部,访问临界资源的代码原子性:一件事情要么不执行,如果执行的话,一直执行完毕互斥:任意时刻只允许一个线程进入临界区访问临界资源同步:访问临界资源的过程,在安全的前提下,让访问临界资源具有合理性。...原创 2022-08-08 17:26:40 · 2277 阅读 · 0 评论 -
Linux多线程的概念
线程是在进程内部(地址空间内)运行的一个执行分支(执行流),属于进程的一部分,粒度比进程更细、更轻量化。在还没有谈及多线程之前,我们所谈论的进程,内部都是单执行流的,也就是进程只有一个PCB。...原创 2022-07-30 21:37:17 · 129 阅读 · 0 评论 -
小试牛刀Linux信号
生活中处处是信号。当早晨的闹钟响起当赛道上的信号枪响起当路口的红绿灯绿灯亮起……当信号产生时,我们就知道接下来该做什么了。原创 2022-07-29 15:07:11 · 750 阅读 · 0 评论 -
文件操作系统调用接口、文件描述符的剖析、重定向的原理
对文件进行操作的第一步首先就是要将文件打开,文件未打开之前是保存在磁盘中的,而打开后就被加载到内存中了,之后我们就能对文件进行操作。原创 2022-07-01 15:41:55 · 263 阅读 · 0 评论 -
进程控制:进程的创建和进程ID
进程的ID,可称为PID。它是进程的唯一标识,类似于我们的身份证号是唯一标识原创 2022-06-16 14:45:10 · 591 阅读 · 0 评论 -
进程程序的替换
使用fork创建子进程后执行的是和父进程相同的程序,但是那样并没有多大的意义,子进程往往会“程序替换” 去执行另一个程序。程序替换的特点就是:不创建新的进程,仅仅替换掉该进程的代码和数据。...原创 2022-06-15 21:04:41 · 197 阅读 · 0 评论 -
进程控制:进程等待(回收子进程)
一个进程可以通过调用wait函数等待子进程原创 2022-06-09 19:28:14 · 1048 阅读 · 0 评论 -
空闲内存的管理
“无规矩不成方圆”,在计算机中,操作系统需要对所有的软硬件资源进行管理。对于内存的使用情况操作系统也必须进行跟踪,以便于管理内存。跟踪内存使用情况的两种方法:位图和空闲区链表使用位图跟踪内存...原创 2022-06-08 16:58:15 · 602 阅读 · 0 评论 -
进程控制--->进程终止
进程退出的几种情况自愿退出会返回一个退出码,由父进程接收。在Linux上可以使用命令显示最近一次退出的进程返回的退出码原创 2022-06-07 21:40:36 · 261 阅读 · 0 评论 -
进程的调度
在多道程序设计系统中,可能会同时有多个进程处于就绪态,存在就绪队列中。假设CPU是单核的,那么同一时刻只能有一个进程使用CPU,处于就绪态的进程只是具备了能够被随时调度去使用CPU的条件,所以有必要从就绪队列中选择下一个进程去使用CPU,从就绪队列选择进程被称为进程调度...原创 2022-06-02 20:33:43 · 1137 阅读 · 0 评论 -
多道程序设计系统中CPU的利用率
以下的所以探讨,都假设其CPU都是单核的。多道程序设计系统中,通常会同时存在多个进程,而CPU是有限的,我们都期待能够充分地利用CPU的资源,达到效率最大化。原创 2022-06-02 16:18:57 · 7748 阅读 · 0 评论