一、内核的任务 纯技术层面上,内核是硬件与软件的之间的一个中间层。作用是将应用程序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。 从应用程序视角上看,内核可以被认为是一台增强的计算机,将计算机抽象到一个高层次上。应用程序与硬件本没有联系,只与内核有联系,内核 ...
作者 彭东林 pengdonglin .com 软件 Host: Ubuntu . Qemu . . Linux . . busybox . . gcc . . 概述 为了尽量还原 深入Linux内核架构 这本书的环境,我下载了Linux . . ,由于这个内核版本比较老,所以用最新的gcc编译会有问题,所以需要安装一个比较老的gcc,从该内核的README得知,gcc的版本最少应该是 . . 正 ...
2017-07-02 13:03 2 1085 推荐指数:
一、内核的任务 纯技术层面上,内核是硬件与软件的之间的一个中间层。作用是将应用程序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。 从应用程序视角上看,内核可以被认为是一台增强的计算机,将计算机抽象到一个高层次上。应用程序与硬件本没有联系,只与内核有联系,内核 ...
目录 windows环境 1. 下载源码 2. 导入源码 3. ctags解析 vscode vscode快捷键 vscode设置 1. 每次都在同一个窗口打开文件 ...
《第一章》简介和概述 实现策略:微内核、宏内核 命名空间:全局资源具有不同的分组 由于被中断的进程与中断原因没有什么关系,因此内核无权访问被中断进程用户空间的内容。 页表 虚拟地址的分割: 页表的一个特色在于:对虚拟地址空间中不需要的区域,不必创建中间页目录或者页表,与直接 ...
Linux作为多任务系统,当一个进程生成的数据传输到另一个进程时,或数据由多个进程共享时,或进程必须彼此等待时,或需要协调资源的使用时,应用程序必须彼此通信。 一、控制机制 1、竞态条件 几个进程在访问资源时彼此干扰的情况通常称之为竞态条件(race condition)。在对分布式应用编程 ...
一段摘自《Linux设备驱动程序》的话: 每种外设都通过读写寄存器进行控制。大部分外设都有多个寄存器,不管是内存地址空间还是I/O地址空间,这些寄存器的访问地址都是连续的。 在硬件层,内存区域和I/O区域没有概念上的区别:它们都通过向地址总线和控制总线发送电平信号进行访问 ...
1. Linux是多任务系统, 支持并发执行若干进程,系统同时真正运行的进程数目不超过CPU的数量,因此内核会按照时间间隔在不同进程之间切换。 2.确定那个进程运行多长时间的过程称为调度。 3.内核启动init进程作为第一个进程,该进程负责进一步的系统初始化操作,并显示登陆提示符或登陆 ...
逆向映射(reverse mapping)技术有助于从虚拟内存页跟踪到对应的物理内存页; 缺页处理(page fault handling)允许从块设备按需读取数据填充虚拟地址空间。 一、简介 用户虚拟地址空间的管理比内核地址空间的管理复杂: 每个应用程序都有 ...
空间。 内核内存管理总是假定使用四级页表。 3.3.1 数据结构 内核源代码假定void * ...