OSDI一:编译环境

想深入学习操作系统,不喜欢只有理论而没有实践的书,于是选了这本:操作系统的设计与实现(Operating Systems Design and Implementation)。

第一步是把编译环境建立起来。

UART概述

UART(Universal Asynchronous Receiver/Transmitter),一个串行异步传输的协议。发送端和接收端的波特率要基本相同才能正确工作,通过在数据前面加开始位、后面加结束位来确定传输的开始和结束。

UEFI概述

UEFI的核心是后面的FI(固件接口),即它本身是个协议,需要硬件和软件的支持。

硬件和固件厂商都已提供,对于内核开发者来说,需要做的就是编写一个UEFI应用程序来加载内核。

总线概述

计算机之间通过网线连接成网络,计算机内部之间通过总线连接成一体。计算机之间要通信,不光要有网线,还要有网络协议。计算机内部各个设备之间要通信,不光要有总线,还要有总线协议。

rt-tests一二三

rt-tests是一个测试套件,用来测试实时操作系统的特性。

rt-tests的内容主要是一二三。

SystemV信号量的解析

glibc提供了两种信号量。POSIX信号量和SystemV信号量。

SystemV信号量是在内核里的,向用户暴露为信号量的集合。

控制信号量的三个函数都是系统调用。semget, semctl, semop。

管窥C标准库

我觉得C语言是一个马甲,它的里面是体系结构,C标准库也是一个马甲,它的里面是操作系统内核。