MINIX最底层软件的任务就是通过将中断转换成消息来对其加以隐藏。就进程(以及任务)而言,当一个I/O设备完成一个操作时,它向某些进程发送一条消息,将其唤醒并使之成为就绪。 每当一个进程被中断时,不管中断源是常规的I/O设备还是时钟,都有机会重新确定哪个进程最需要运行机会。当然,在一个进程终止时也要执行该操作...
第1章 引言 MINIX 3 (可以称为: mini - Unix)的系统调用大致可以分为两类: 与进程有关的系统调用 与文件系统有关的系统调用 1.3.1 进程(process) 什么是进程? 进程的本质就是一组内存地址而已,在内存地址上会运行程序。 分时系统的工作原理 因为CPU 是不能处理并发问题的,任何单CPU计算机一次只能执行一条指...
全书详细介绍了操作系统的基本原理,包括进程、进程间通信、信号量、管程、消息传递、调度算法、输入/输出、死锁、设备驱动程序、存储管理、调页算法、文件系统设计、安全和保护机制等,并深入讨论了MINIX 3操作系统。这种安排不仅可让读者了解操作系统的基本原理,而且可让读者了解如何将基本原理应用到真实的操作系统中去...
67.61K 文档页数: 23页 顶/踩数: 0/0 收藏人数: 0 评论次数: 0 文档热度: 文档分类: 待分类 系统标签: filegidwaitpidcallerdirectoryfigure OPERATINGSYSTEMS:DESIGNANDIMPLEMENTATIONSecondEditionANDREWS.TANENBAUMVrijeUniversiteitAmsterdam,TheNetherlandsALBERTS.WOODHULLHampshireCollegeAmherst,MassachusettsPRENTICEHALLUpper...
Tanenbaum教授还编写了大量软件。他是Amsterdam Compiler Kit(一种广泛使用的、用于编写可移植编译器以及MINIX的工具集)的主要开发者,而该系统则是Linux诞生的灵感与基础。与他的博士生及程序员一起,他帮助设计了Amoeba分布式操作系统(一个基于微内核的...
MINIX中的进程间通信通过消息完成,所以下一步是构造一条发给磁盘进程的消息,这时磁盘进程正在阻塞并等待该消息。这条消息通知说发生了一条中断,以此将它和那些由用户进程发送的消息加以区分。那些消息发出读磁盘块之类的请求。现在磁盘进程的状态由阻塞转换到就绪,然后,中断服务程序调用调度程序。在MINIX中,不同的进程有...
MINIX 3 共有53条系统调用,被分为6大类。 1.4.1 进程管理的系统调用 pid = fork() 创建一个与父进程相同的子进程 如果返回0,表明当前进程是子进程。返回一个整数则是父进程,该整数即为子进程的标识号PID。 我的理解是父进程在fork()后,系统创建一个父进副本并运行,因为是完全拷贝,包括进程状态,变量,以及...
他是Amsterdam Compiler Kit(一种广泛使用的、用于编写可移植编译器以及MINIX的工具集)的主要开发者,而该系统则是Linux诞生的灵感与基础。与他的博士生及程序员一起,他帮助设计了Amoeba分布式操作系统(一个基于微内核的、高性能局域分布式操作系统)。此后,他是Globe(一个可处理10亿用户的广域分布式操作系统)的...
15. 在MINIX3系统中,用户2对用户1的一个文件建立了一个链接,然后用户1删除了此文件。如果用户2去访问该文件,结果会如何? 可以正常访问。 用户2的目录条目包含一个指向文件i-node的指针,当用户2链接到i-node时,i-node中的引用计数就会增加。因此,引用计数将是 非零的,并且当用户1删除文件的目录条目...