加载中...
操作系统内核是硬件与应用程序之间的核心软件层,负责进程调度、内存管理、设备驱动和文件系统。Linux 内核是世界上运行范围最广的软件,支撑着从 Android 手机到超级计算机的绝大多数系统。

| 类型 | 系统软件 |
| 代表内核 | Linux(1991)、Windows NT(1993)、XNU(macOS/iOS) |
| Linux 代码规模 | 约 3000 万行(2024 年) |
现代 CPU 提供特权级别隔离:内核态(Ring 0)可以执行任意指令、访问所有内存;用户态(Ring 3)受限,不能直接操作硬件。应用程序通过系统调用(syscall)请求内核服务,如 read()、write()、fork()。这种隔离确保一个崩溃的进程不会污染整个系统。
Linux 内核目前约 3000 万行代码,是人类协作编写的最大单一软件项目之一。Linus Torvalds 于 1991 年发布第一个版本(v0.01,约 10,000 行),至今仍是顶级维护者。内核每约 9-10 周发布一个新版本。[1]
Linux 默认使用 CFS(完全公平调度器),基于虚拟运行时间(vruntime)将 CPU 时间公平分配给各进程,用红黑树维护就绪队列,调度决策 O(log n)。实时进程(RT)有更高优先级,可抢占普通进程。
虚拟内存让每个进程以为自己独占整块地址空间(64 位系统约 128TB),实际映射到物理内存页通过页表完成,TLB(转换后备缓冲)加速常用页表项的查找。写时复制(COW)让 fork() 瞬间完成——子进程共享父进程的物理页,只在写入时才真正复制,Shell 每次执行命令都依赖这一机制。

| 类型 | 系统软件 |
| 代表内核 | Linux(1991)、Windows NT(1993)、XNU(macOS/iOS) |
| Linux 代码规模 | 约 3000 万行(2024 年) |
登录 后参与讨论
暂无讨论,来发表第一条评论吧