资料介绍
Linux 操作系统是类 UNIX 系统中的一员,并且在操作系统发展过程中起着重要的作用。Linux 之所以能够发展得如此迅速,最主要的原因是其具有开源的特点,任何人都可以获得源代码并进行研究。本书主要对 Linux 内核进行深度的剖析,并详细讨论内核的主要功能及其内部结构,同时给出了内核的实现。本章将简要介绍内核所涉及的基本知识,此外,对内核所涉及的各领域进行简单的阐述。 1.1 Linux 的内存管理机制操作系统的内存管理分为页式管理和段式管理两种管理机制,对于段式内存管理机制,是将指令中结合段寄存器使用的 32 位逻辑地址映射为 32 位的物理地址。随着操作系统的发展,提出了保护模式和虚拟内存管理的概念,Intel 在分段机制的基础上实现了包含模式和虚拟内存管理,后来出现了分页机制并逐渐成为内存管理机制的主流。Intel 出于兼容性的考虑,保留了段式内存管理机制,段寄存器用做选择子,段基地址及其他的某些属性存放在内存中,称为段描述符表。段式内存管理机制的灵活性和效率都比较差,这样就需要采用页式管理机制。页式管理就是通过分页单元将线性地址转换为物理地址,其中一个重要的任务就是把请求的访问类型与线性地址的访问权限进行对比,如果该内存访问无效,则产生一个缺页的异常。内核把线性地址分为 4KB 大小的页面,其中的每个页面都可以映射到物理地址空间的任意 4KB 大小的地址。在该映射过程中,连续的线性地址映射到物理地址空间中不一定是连续的,分页单元把所有的 RAM 分成固定长度的物理页,每一个物理页(Page Frame)包含一个页。把线性地址映射到物理地址的数据结构称为页表,该页表存放在主存中,并在启用分页单元之前由内核对页表进行初始化。由于引入了页式管理,因此 32 位的线性地址分为 3 个区域,分别为 Directory(目录)、Table(页表)及 Offset(偏移)。目录是线性地址的最高 10 位,用做页面表目录的下标,指向一个页面表;页表是线性地址的中间 10 位,用做具体页面表中的下标,指向具体的物理页面;偏移则是线性地址的最低 12 位,用于指向具体物理页面内的偏移量。对于每一个活动进程都有一个分配的页目录,正在使用的页目录的物理地址存放在 cr3 控制寄存器中。线性地址的 Directory 字段决定了页目录中的目录项,目录项指向某个页表,线性地址的 Table 字段则决定了页表中的页表项,Offset 字段决定页框内的偏移量,由于该字段包含了 12 位,因此每页包含了 4 096 字节的数据。页式映射的示意图如图 1-1 所示。
- 【嵌入式】构建嵌入式Linux系统(uboot、内核、文件系统)
- Linux内核文件Cache机制
- 嵌入式LINUX系统内核和内核模块调试
- Linux内核开发框架学习资料汇总 24次下载
- Linux环境编程:从应用到内核 16次下载
- Linux_Kernel_Developments内核开发 37次下载
- Linux内核的编译与运行 11次下载
- Linux内核配置的网络资料说明 14次下载
- Linux内核GPIO操作函数的详解分析 28次下载
- 动手编译Linux内核的教程免费下载 14次下载
- 如何使用Linux内核实现USB驱动程序框架 19次下载
- 嵌入式LINUX系统内核和内核模块调试教程 21次下载
- 如何才能编译Linux的内核 8次下载
- linux内核入门教材之linux内核设计与实现第二版中文版免费下载 0次下载
- Linux的内核教程 0次下载
- Linux内核中的页面分配机制 135次阅读
- 使用 PREEMPT_RT 在 Ubuntu 中构建实时 Linux 内核 1284次阅读
- 获取Linux内核源码的方法 519次阅读
- Linux内核自解压过程分析 692次阅读
- AOSP Android11系统源码和内核源码简析 4852次阅读
- Linux系统内核与Linux发行套件的区别 1092次阅读
- Linux内核到底是什么应该如何学习 1840次阅读
- Linux:QEMU调试内核的步骤 3040次阅读
- 深入linux内核架构 Linux内核架构分析解读 3604次阅读
- Linux内核中有哪些锁 3356次阅读
- Linux 5.4.1内核已经发布你期待使用吗 3193次阅读
- Linux内核与Android的关系 4504次阅读
- macOS和Linux的内核之间的区别详解 5512次阅读
- Linux内核地址映射模型与Linux内核高端内存详解 3397次阅读
- Linux内核开发工具介绍 4641次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1490次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 92次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 10次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7蓝牙设备在嵌入式领域的广泛应用
- 0.63 MB | 3次下载 | 免费
- 89天练会电子电路识图
- 5.91 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多