qqwx

导航

2010年2月28日 #

13. 块设备驱动程序 2010-02-28 20:14 257人阅读 评论(0) 收藏

摘要: 块设备特点:CPU读写时间远小于硬件时间。Linux块设备处理程序很复杂,此处大略介绍软件体系。对磁盘的I/O操作就是在磁盘与RAM单元之间传送相邻扇区内容,最下层是硬盘控制器。磁盘的物理结构对它透明,这只知道磁盘由一个个连续的扇区组成。扇区是每次它读写的单位,一般512字节。读时转换为(扇区号,... 阅读全文

posted @ 2010-02-28 20:14 qqwx 阅读(136) 评论(0) 推荐(0) 编辑

12. I/O体系结构及设备驱动 2010-02-28 16:50 350人阅读 评论(0) 收藏

摘要: 1. I/O体系结构CPU、内存、外设通过总线(BUS)传送数据,一台机器包含不同类型的总线,如PCI、USB,它们通过叫桥的硬件设备连接。CPU和I/O设备之间的数据通路称I/O总线,80x86有16位I/O总线,每个设备连到I/O总线上,这种连接分为三个层次:l I/O端口:因为I/O总线16位... 阅读全文

posted @ 2010-02-28 16:50 qqwx 阅读(144) 评论(0) 推荐(0) 编辑

2010年2月25日 #

11. VFS 2010-02-25 01:39 225人阅读 评论(0) 收藏

摘要: Linux可以支持其它OS文件格式的磁盘或分区,是通过“虚拟文件系统”实现的。调用的每个读写或其它函数,内核都能把它们替换成真正文件系统的实际函数,是一个内核软件层。VFS支持的文件系统可分为三个类型:1.磁盘文件系统,如Ext2,UFS,NTFS等。2.网络文件系统如NFS,AFS等。3.特殊... 阅读全文

posted @ 2010-02-25 01:39 qqwx 阅读(139) 评论(0) 推荐(0) 编辑

2010年2月23日 #

10. 信号机制 2010-02-23 23:20 126人阅读 评论(0) 收藏

摘要: 信号最早在unix中即被引入,信号是一个数,表现为“发送给一个进程”。POSIX标准除了常规信号以外,还引入了实时信号,在Linux中它们的编码接在常规信号后,从32-64。它们与常规信号的区别在于常规信号不排队,同样的信号,多发了就丢弃,而实时信号多发了就会排队。Linux内核不使用实时信号,... 阅读全文

posted @ 2010-02-23 23:20 qqwx 阅读(132) 评论(0) 推荐(0) 编辑

2010年2月21日 #

9. 系统调用 2010-02-21 22:24 243人阅读 评论(0) 收藏

摘要: OS为用户态运行的进程与硬件设备进行交互提供了一组接口,有三个优点:从低级编程中解放、提高安全性、可移植性。 API与系统调用:前者是函数定义,后者通过陷阱明确向内核发请求。每个系统调用一般对应于一个C库中的封装例程,而这个封装例程,即为应用程序API。一个单独的API函数可能调用N个系统调用,... 阅读全文

posted @ 2010-02-21 22:24 qqwx 阅读(123) 评论(0) 推荐(0) 编辑

8. 进程地址空间 2010-02-21 15:52 553人阅读 评论(0) 收藏

摘要: 对于进程用户态分配内存请求,总被认为是不紧迫的,为提高效率采用推迟分配。进程请求动态内存时,并未获得请求的页框,而仅仅获得对一个新的地址区间的使用权。这个区间叫做线性区。即进程请求动态内存时,请求得到的是一个线性区,线性区被视为一种资源,用来组成线性地址区间,为效率起见,它一般是4096的倍数。显然... 阅读全文

posted @ 2010-02-21 15:52 qqwx 阅读(241) 评论(0) 推荐(0) 编辑

2010年1月15日 #

7.内存管理 2010-01-15 17:10 216人阅读 评论(0) 收藏

摘要: 前面提到,0xc0000000以上空间给内核用,其中又有末尾128MB固定它用。之前提到的前8MB映射完成后,pagetable_init()函数会建立全局页目录的表项,完成最终内核页表。若RAM小于896MB时,地址空间0xc0000000以上有1G,送去最后的128MB剩下896MB,足以对... 阅读全文

posted @ 2010-01-15 17:10 qqwx 阅读(144) 评论(0) 推荐(0) 编辑

2010年1月2日 #

6.进程调度 2010-01-02 15:16 150人阅读 评论(0) 收藏

摘要: Linux进程调度基于分时(time sharing),分时依赖于定时中断。调度的依据是优先级(回忆140个双向链表)。传统上,进程可以分为"I/O型"与“CPU型”;按另一种分法可分为:1.交互式进程;2.批处理进程(编译器、科学计算、数据库搜索引擎);3.实时进程(音频、视频)。以上分类一定程序... 阅读全文

posted @ 2010-01-02 15:16 qqwx 阅读(207) 评论(0) 推荐(0) 编辑

2009年12月30日 #

5.定时 2009-12-30 17:09 210人阅读 评论(0) 收藏

摘要: 80x86体系上,内核必须显式与几种时钟、定时器打交道。时钟电路:跟踪当前时间,产生精确的度量。定时器电路由内核编程,所以以固定的、预先定义的频率发出中断。1.实时时钟(RTC):所有PC都有一个,它独立于CPU及其它芯片,断电仍运行,靠小电池供电。RTC可以以2~8192Hz的频率在IRQ8上发周... 阅读全文

posted @ 2009-12-30 17:09 qqwx 阅读(200) 评论(0) 推荐(0) 编辑

2009年12月24日 #

4.内核同步 2009-12-24 23:24 250人阅读 评论(0) 收藏

摘要: 上述,在中断处理程序中,不可以发生进程切换,但在异常处理程序中,当前进程可能被另一进程取代,并按这种取代可否发生将内核分为可抢占式和不可抢占式。如进程A在异常处理程序中来了中断,在中断处理程序中唤醒了一个高优先级的进程B,如果内核是抢占式,那么会发生强制进程切换,用B切换A。异常处理则暂停(上一... 阅读全文

posted @ 2009-12-24 23:24 qqwx 阅读(101) 评论(0) 推荐(0) 编辑