博客专栏  >  架构   >  Linux内核设计基础

Linux内核设计基础

Hey guys, 带你领略0.11内核的初始之路和2.6内核的经典之路,let's go!

关注
3 已关注
14篇博文
  • 0.11之路(四):从实模式到保护模式

    关中断并将system移动到内存地址起始位置 0x00000 将CPU的标志寄存器(EFLAGS)中的中断允许标志(IF)置0。这样系统不会再响应中断,直到main函数中能够适应保护模式的中断服务体...

    2015-04-16 21:57
    1278
  • 0.11之路(三):system模块

    现在载入第三批代码——system模块,仍然使用 int 0x13 中断。 这批代码要比之前多很多,所以需要一点时间,于是出现了 “Loading system …”的字样。但是,此时操作系统的ma...

    2015-04-14 15:30
    1086
  • 0.11之路(二):加载setup

    BIOS将bootsect这个引导程序载入内存后,接下来就要靠bootsect来加载第二批和第三批程序。bootsect首先要做的工作就是规划内存。 实模式下,寻址最大范围是1MB(0xFFFFF)...

    2015-04-10 16:33
    1216
  • 0.11之路(一):BIOS引导过程

    BIOS在内存最开始的位置构建中断向量表,紧接着是BIOS数据区,此外还要有与中断向量表相应的中断服务程序。我们正是利用这些中断服务程序把内核加载到内存中。 中断是操作系统里的一个意义重大的概念,是...

    2015-04-09 15:36
    1265
  • Linux内核设计基础(十)之内核开发与总结

    (1)Linux层次结构: (2)Linux内核组成: 主要由进程调度(SCHED)、内存管理(MM)、虚拟文件系统(VFS)、网络接口(NET)和进程间通信(IPC)等5个子系统组成。 ...

    2014-06-15 13:20
    1379
  • Linux内核设计基础(九)之进程管理和调度

    在Linux中进程用结构体task_struct来管理一个进程所需的所有信息(所以一般较大,在32位机上,大约有1.7KB)。为了提高效率,Linux使用了一些卓越的技术。 通过slab分配...

    2014-06-14 22:53
    1246
  • Linux内核设计基础(八)之内核数据结构

    我个人比较喜欢学习数据结构,而Linux内核中实现的数据结构会是我们去学习、理解和应用数据结构的一个很好途径。这里介绍内核中广泛应用的四种数据结构:链表、队列、映射和二叉树。 链表: Linux内...

    2014-06-14 20:53
    1325
  • Linux内核设计基础(一)之中断处理

    如果让内核定期对设备进行轮询,以便处理设备,那会做很多无用功,如果能让设备在需要内核时主动通知内核,会是一个聪明的方式,这便是中断。

    2014-06-08 01:26
    1799
  • Linux内核设计基础(二)之Proc文件系统

    Linux上的/proc目录是一种文件系统,称为proc文件系统(虚拟文件系统),它存储内核状态信息,包括cpu、内存以及进程等信息。proc文件系统有很多优点:应用程序获取内核数据不用切换到内核态,...

    2014-04-04 21:57
    1830
  • Linux内核设计基础(三)之定时器和时间管理

    内核知道连续两次时钟中断

    2014-06-08 02:50
    1571
  • Linux内核设计基础(四)之虚拟文件系统

    先来看一下写文件函数write的执行过程: ret = write()

    2014-06-09 00:09
    1769
  • Linux内核设计基础(五)之内存管理

    我感觉学习操作系统首先要从内存分配和管理入手。首先我们应该知道现代操作系统是以页为单位进行内存管理的,32位体系结构支持4KB的页,而64位体系结构支持8KB的页。页是用来分配的,如何才能进行高效和充...

    2014-06-11 18:46
    1277
  • Linux内核设计基础(六)之块I/O层

    块设备是指能随机访问固定大小数据片的设备,如硬盘;字符设备(如串口和键盘)是按照字符流的方式有序访问。区别在于是否可以随机访问数据——也就是能否在访问设备时随意地从一个位置跳转到另一个位置。我们可以感...

    2014-06-12 13:42
    1207
  • Linux内核设计基础(七)之系统调用

    我理解的系统调用就是内核提供的一组用户进程与内核进行交互的接口。除异常和陷入外,系统调用是内核唯一的合法入口。像/proc也是通过系统调用进行访问的。

    2014-06-12 15:40
    1132

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部