MINIX最底层软件的任务就是通过将中断转换成消息来对其加以隐藏。就进程(以及任务)而言,当一个I/O设备完成一个操作时,它向某些进程发送一条消息,将其唤醒并使之成为就绪。 每当一个进程被中断时,不管中断源是常规的I/O设备还是时钟,都有机会重新确定哪个进程最需要运行机会。当然,在一个进程终止时也要执行该操作...
MINIX 3 (可以称为: mini - Unix)的系统调用大致可以分为两类: 与进程有关的系统调用 与文件系统有关的系统调用 1.3.1 进程(process) 什么是进程? 进程的本质就是一组内存地址而已,在内存地址上会运行程序。 分时系统的工作原理 因为CPU 是不能处理并发问题的,任何单CPU计算机一次只能执行一条指令,所以需要用...
OPERATINGSYSTEMS:DESIGNANDIMPLEMENTATIONSecondEditionANDREWS.TANENBAUMVrijeUniversiteitAmsterdam,TheNetherlandsALBERTS.WOO..
Tanenbaum教授还编写了大量软件。他是Amsterdam Compiler Kit(一种广泛使用的、用于编写可移植编译器以及MINIX的工具集)的主要开发者,而该系统则是Linux诞生的灵感与基础。与他的博士生及程序员一起,他帮助设计了Amoeba分布式操作系统(一个基于微内核的...
MINIX系统调用大致分为两类:与进程有关的系统调用和与文件有关的系统调用。 1.3.1 进程 一个进程本质上是一个程序的执行。 一个(挂起的)进程包括两部分:进程的地址空间 - 称作核心映像(core image),以及对应的进程表项(包含寄存器值及其他信息)。将寄存器值保存到堆栈中 ...
全书详细介绍了操作系统的基本原理,包括进程、进程间通信、信号量、管程、消息传递、调度算法、输入/输出、死锁、设备驱动程序、存储管理、调页算法、文件系统设计、安全和保护机制等,并深入讨论了MINIX 3操作系统。这种安排不仅可让读者了解操作系统的基本原理,而且可让读者了解如何将基本原理应用到真实的操作系统中去...
他是Amsterdam Compiler Kit(一种广泛使用的、用于编写可移植编译器以及MINIX的工具集)的主要开发者,而该系统则是Linux诞生的灵感与基础。与他的博士生及程序员一起,他帮助设计了Amoeba分布式操作系统(一个基于微内核的、高性能局域分布式操作系统)。此后,他是Globe(一个可处理10亿用户的广域分布式操作系统)的...
MINIX 3 共有53条系统调用,被分为6大类。 1.4.1 进程管理的系统调用 pid = fork() 创建一个与父进程相同的子进程 如果返回0,表明当前进程是子进程。返回一个整数则是父进程,该整数即为子进程的标识号PID。 我的理解是父进程在fork()后,系统创建一个父进副本并运行,因为是完全拷贝,包括进程状态,变量,以及...
然而,MINIX 还是一个用于“教学”的系统,还不适合日常使用,当时的 MINIX 可能是 1.5 版。 “大多数关于操作系统的图书均重理论而轻实践,而本书则在这两者之间进行了较好的折中。” 这是那本书前言里的一句话,我也一直记得。我甚至也将这句话写进了我的书——《FreeSWITCH 权威指南》的前言里。