- 博客(9)
- 收藏
- 关注
原创 【OSTEP】操作系统导论-精翻讲解:第五章-进程API
如果其中一个人可以随意向进程发送信号(例如 SIGINT 中断信号,可能会终止进程),那么系统的可用性和安全性将会受到威胁。当子进程被创建时,系统中我们关心的活跃进程有两个:父进程和子进程。这样的用户应该能够终止任意进程(例如,如果某个进程以某种方式滥用系统),即使该进程不是由此用户启动的。因此,一个进程的输出可以无缝地用作下一个进程的输入,从而可以串联长而有用的命令链。整个信号子系统为进程传递外部事件提供了丰富基础,包括在单个进程中接收和处理这些信号的方式,以及向单个进程甚至整个进程组发送信号的方式。
2024-11-28 10:32:59
613
原创 【OSTEP】操作系统导论-精翻讲解:第四章-进程
在发起 I/O 请求后,进程会进入阻塞状态,意味着它暂时不能继续运行,必须等待 I/O 操作完成。当进程 1 运行时,进程 0 的 I/O 完成,进程 0 转为就绪状态。,用于记录所有处于就绪状态的进程,并保存其他信息以追踪当前正在运行的进程。它通过运行一个进程,然后暂停它并运行另一个进程,如此循环,来营造许多虚拟 CPU 同时存在的假象。用于存储停止运行的进程的寄存器内容。允许一个实体使用一段时间的资源,然后切换给另一个实体,如此循环,使得相关资源(如 CPU 或网络连接)能够被多个实体共享。
2024-11-27 02:55:44
762
原创 操作系统-实例详解fork()的工作原理(超详细版)
wait()的功能是让父进程等待子进程的状态变化(如子进程退出),然后返回已退出的子进程的 PID。被调用时,操作系统会:复制父进程的内存空间(包括代码段、数据段、栈等)。的参数是用来接收子进程的退出状态(如退出码或信号信息)。后,系统会复制当前进程,形成两个几乎完全相同的进程(父进程和子进程)。,在 POSIX 标准中定义,用于表示进程的 ID。,并将子进程的状态保存在数据结构中(如进程控制块,PCB)。返回点开始,分别继续执行,但它们的返回值不同。运行你的程序最初只有一个进程,从第一行代码开始执行。
2024-11-27 02:43:36
314
原创 手搓操作系统-如何创建虚拟磁盘并装载内核(超详细版)
本篇是完整的在Linux环境下,创建一个虚拟磁盘,并且将内核安装到磁盘并用虚拟机运行的过程。需要对bootstrap过程有一定的基础知识。遇到不懂的概念,如MBR,Grub等请务必参考笔者的另一篇文章。
2024-11-19 05:19:31
937
原创 操作系统架构-什么是实模式?什么是保护模式?(超详细版)
模式是指CPU 的运行环境,它决定了处理器如何执行指令、管理内存以及访问硬件资源。实模式(Real Mode)是 x86 架构的一种处理器模式,也是最基础的运行模式。在了解实模式是怎么来的之前,我们需要简单回顾计算机早期的发展及 Intel 8086 的设计目标。在 Intel 8086 之前的处理器(8080,8085)使用16 位地址总线,只能访问 2^16=64KB 的内存。Intel 在设计 8086 时,需要它既能突破 64KB 的限制,又能与之前的 8080 和 8085 保持软件兼容性。
2024-11-16 06:13:56
935
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人