linux 内核完全注释笔记 1章--2.4章 2006.04.06
2006-04-07 03:11
393 查看
第一章 linux的诞生
1990年 芬兰 赫尔辛基大学计算机系 20岁的 Linus Benedict Torvalds
通过学习 《MINIX 系统》的源代码 后决定开发的 linux 系统
包括学习了 M.J.Bach 的《UNIX操作系统设计》
第二章 Linux 内核体系结构
2.1、Linux 内核模式和体系结构
完整的操作系统主要由4部分组成:硬件、操作系统内核、操作系统服务和用户应用程序。
操作系统内核的结构模式可分为:整体式的单内核模式和层次式的微内核模式。
这里用的是单内核模式,他的优点:结构紧凑、执行速度快,缺点:层次结构性不强。
单内核系统的结构模式,操作系统提供服务的流程:应用主程序使用指定的参数执行系统调用指令
(int x80),使cpu从用户态(User Mode)切换到核心态(Kernel Mode),然后系统根据参数
值调用特定的系统调用服务程序,而这些服务程序则根据需要调用底层的支持函数以完成特定的功能。
在完成了应用程序要求的服务后,操作系统又从核心态切换回用户态,回到应用程序中继续执行后续
指令。
linux内核主要由5个模块构成:进程调度模块、内存管理模块、文件系统模块、进程通信模块和
网络接口模块。
2.2 Linux 中断机制
在使用80x86组成的pc中,采用2片8259A可编程中断控制芯片。每片管理8个中断源。
通过多片的级联方式,能构成最多管理64个中断向量的系统。
在PC/AT系列兼容机中,使用了2片8259A芯片,共可管理15级中断向量。
其中 从芯片的INT 引脚连接到主芯片的IR2引脚上。主8259A芯片的端口基地址是0x20,
从芯片是 0xA0。在总线控制器控制下,8259A芯片可以处于编程状态和操作状态。
编程状态是CPU使用IN 和 OUT 指令对8259A芯片进行初始化变成的状态。
完成初始化后,芯片即进入操作状态,可以随时响应外部设备提出的中断请求(IRQ0--IRQ15)。
通过中断优先选择,选择优先级最高的中断请求作为中断服务对象,并通过CPU引脚INT通知CPU
外中断请求的到来,CPU响应后,芯片从数据总线D7~D0将编程设定的当前服务对象的中断号送出,
CPU获得相应的中断向量值,执行中断。
对内核来说,中断信号分为2类:硬件中断和软件中断(异常)。每个中断由0~255之间的一个数字标识。
2.3 Linux 系统定时
1990年 芬兰 赫尔辛基大学计算机系 20岁的 Linus Benedict Torvalds
通过学习 《MINIX 系统》的源代码 后决定开发的 linux 系统
包括学习了 M.J.Bach 的《UNIX操作系统设计》
第二章 Linux 内核体系结构
2.1、Linux 内核模式和体系结构
完整的操作系统主要由4部分组成:硬件、操作系统内核、操作系统服务和用户应用程序。
操作系统内核的结构模式可分为:整体式的单内核模式和层次式的微内核模式。
这里用的是单内核模式,他的优点:结构紧凑、执行速度快,缺点:层次结构性不强。
单内核系统的结构模式,操作系统提供服务的流程:应用主程序使用指定的参数执行系统调用指令
(int x80),使cpu从用户态(User Mode)切换到核心态(Kernel Mode),然后系统根据参数
值调用特定的系统调用服务程序,而这些服务程序则根据需要调用底层的支持函数以完成特定的功能。
在完成了应用程序要求的服务后,操作系统又从核心态切换回用户态,回到应用程序中继续执行后续
指令。
linux内核主要由5个模块构成:进程调度模块、内存管理模块、文件系统模块、进程通信模块和
网络接口模块。
2.2 Linux 中断机制
在使用80x86组成的pc中,采用2片8259A可编程中断控制芯片。每片管理8个中断源。
通过多片的级联方式,能构成最多管理64个中断向量的系统。
在PC/AT系列兼容机中,使用了2片8259A芯片,共可管理15级中断向量。
其中 从芯片的INT 引脚连接到主芯片的IR2引脚上。主8259A芯片的端口基地址是0x20,
从芯片是 0xA0。在总线控制器控制下,8259A芯片可以处于编程状态和操作状态。
编程状态是CPU使用IN 和 OUT 指令对8259A芯片进行初始化变成的状态。
完成初始化后,芯片即进入操作状态,可以随时响应外部设备提出的中断请求(IRQ0--IRQ15)。
通过中断优先选择,选择优先级最高的中断请求作为中断服务对象,并通过CPU引脚INT通知CPU
外中断请求的到来,CPU响应后,芯片从数据总线D7~D0将编程设定的当前服务对象的中断号送出,
CPU获得相应的中断向量值,执行中断。
对内核来说,中断信号分为2类:硬件中断和软件中断(异常)。每个中断由0~255之间的一个数字标识。
2.3 Linux 系统定时
相关文章推荐
- 《Linux 内核完全注释》阅读笔记
- 《Linux0.11内核完全注释》读后小结 --- 进程调度与信号
- linux 0.11 内核完全注释V3.0学习笔记(一)
- linux0.11内核完全注释读书笔记
- 《linux 内核完全剖析》sched.c sched.h 代码分析笔记
- 《linux 内核完全剖析》 signal.c 代码分析笔记
- 《Linux0.11内核完全注释》读后小结 --- 进程调度与信号
- 《linux 内核完全剖析》 笔记 CODE_SPACE 宏定义分析
- <<Linux内核完全剖析 --基于0.12内核>>学习笔记 第4章 80x86保护模式及其编程 4.6 中断和异常处理
- 《Linux0.11内核完全注释》读后小结 --- 启动引导
- linux内核完全注释---学习札记--引导启动程序boot
- <<Linux内核完全剖析 --基于0.12内核>>学习笔记 第4章 80x86保护模式及其编程 4.7 任务管理
- <<Linux内核完全剖析 --基于0.12内核>>学习笔记 第4章 80x86保护模式及其编程 4.8 保护模式编程初始化
- 《Linux0.11内核完全注释》读后小结 --- 内存寻址
- 《Linux0.11内核完全注释》读后小结 --- 中断与系统调用
- 《Linux0.11内核完全注释》读后小结 --- 内存寻址
- 《Linux0.11内核完全注释》读后小结 --- 中断与系统调用
- 读Linux内核0.11完全注释
- linux内核完全剖析 学习笔记 打字太累 截图 持续更新
- 《Linux0.11内核完全注释》读后小结 --- 调试环境的搭建