BSD层建立在Mach之上,也是XNU中一个不可分割的部分。这一层是一个很可靠且更现代的API,提供了之前提到的POSIX兼容性。BSD层提供了更高层次的抽象,其中包括:
UNIX进程模型
POSIX线程模型(Pthread)及其相关的同步原语
UNIX用户和组
网络协议栈(BSD Socket API)
文件系统访问
设备访问(通过/dev目录访问)
XNU中的BSD实现很大程度上和FreeBSD的实现兼容,但是也有一些非常显著的变化。本书在讲解了Mach之后,再开始讲解BSD,关注于BSD核心的实现,提供了有关虚拟文件系统交换(VFS)和网络协议栈的细节内容,这些内容都有专门的章节描述。