
书: https://pan.baidu.com/s/15VfTw9eJ2MoiHktwswP0gw?pwd=tq5x
笔记如下:
- “FreeBSD的进程调度器采用多级反馈队列(MLFQ),兼顾交互式进程的响应速度和计算密集型任务的公平性。”
- “虚拟内存子系统通过页表将用户地址空间映射到物理内存,同时利用换页守护进程(pagedaemon)处理页面置换。”
- “UFS文件系统的磁盘布局由引导块、超级块、inode区和数据块区构成。”
- “系统调用接口是用户态进程与内核交互的唯一安全通道,通过陷阱指令(trap)触发。”
- “FreeBSD的网络协议栈遵循4.4BSD的架构,支持套接字(socket)抽象和协议模块化堆叠。”
- “内核的锁机制包括自旋锁(spinlock)、互斥锁(mutex)和读写锁(rwlock),以应对多处理器竞争。”
- “设备驱动程序通过
cdevsw
和bdevsw
结构体分别注册字符设备与块设备。” - “ZFS的引入为FreeBSD提供了写时复制(COW)、快照和端到端校验等高级特性。”
- “进程间通信(IPC)机制涵盖管道、信号量、共享内存和消息队列。”
- “内核线程(kernel thread)与用户线程的调度由同一调度器管理,但前者无用户态地址空间。”
- “
vm_map
结构体描述进程的虚拟地址空间,其操作由页错误异常(page fault)驱动。” - “GEOM层提供磁盘I/O请求的透明转换,支持RAID、加密和卷管理等功能。”
- “
mbuf
链是网络数据包在内核中的核心存储结构,支持零拷贝优化。” - “信号处理通过
sigaction
框架实现,分为同步信号(如SIGSEGV)和异步信号(如SIGINT)。” - “内核模块动态加载机制依赖
/boot/kernel
目录下的.ko
文件,并通过kldload
命令触发。” - “系统启动过程中,
init
进程是首个用户态进程(PID=1),负责派生其他守护进程。” - “硬链接与符号链接的本质区别在于前者直接引用inode,后者仅存储路径字符串。”
- “
jail
机制通过隔离进程的视图实现轻量级虚拟化,限制其对文件系统、网络和进程树的访问。” - “内核审计子系统(audit)可跟踪安全相关事件,如系统调用执行和文件访问。”
- “
procfs
伪文件系统暴露进程状态信息,便于调试工具(如ps
)实时获取数据。”