码迷,mamicode.com
首页 > 系统相关 > 详细

【深入理解Linux内核】《第一章 绪论》笔记

时间:2014-07-07 20:16:27      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:数据   os   io   linux   管理   应用   

1.商用Unix操作系统包括:

   - AT&T公司开发的(System V Release 4) SVR4、

   - 加州伯克利分校发布的4.4BSD

   - Dec公司(现属于HP)的Digital Unix

   - IBM公司的AIX

   - HP公司的HP-UX

   - Sun公司的Solaris   - Apple公司的Mac OS X

所有商业版本都是SVR4或4.4BSD的变体,并且都趋向于遵循某些通用标准:如IEEE的POSIX(Portable Operating Systems based on Unix)和X/Open的CAE(Common Application Environment)。

2.除了Linux外,还有一些其他的类Unix也是开放源码的,如FreeBSD,NetBSD, OpenBSD.

3.Linux可以运行的平台,处x86外,还有HP的Alpha,Intel的Itanium,AMD的AMD64,Power PC以及IBM的zSeries.

4.用户态和内核态:

当一个应用程序在用户态下执行时,它不能直接访问内核数据结构或内核的程序。然而,当应用程序在内核态下运行时,这些限制不再有效。有以下几种方式激活内核例程:

  • 进程调用系统调用。
  • 正在执行进程的CPU发出一个异常(exception),内核代表产生异常的进程处理异常。
  • 中断信号
  • 内核线程被执行。

5.当内核暂停一个进程的执行时,就把几个相关处理器寄存器的内容保存在进程描述符中。

  • 程序计数器(PC)和栈指针(SP)寄存器
  • 通用寄存器
  • 浮点寄存器
  • 包含CPU状态信息的处理器控制寄存器(处理器状态字,Processor Status Word)
  • 用来跟踪进程对RAM访问的内存管理寄存器。

6.可重入内核:如果一个硬件中断发生,可重入内核能挂起当前正在执行的进程,即使这个进程处于内核态。

提供可重入的一种方式是编写函数,以便这些函数只能修改局部变量,而不能改变全局数据结构,这样的函数叫可重入函数。但是可重入内核不仅仅局限于这样的可重入函数,可重入内核可以包含非重入函数,并且利用锁机制保证一次只有一个进程执行一个非重入函数。

我的理解:所谓可重入,指的就是在内核态执行了一半,被打断,完了又可以继续执行。

7.单块结构内核和微内核

大部分Unix内核是单块结构:每一个内核层都被集成到整个内核程序中,并代表当前进程在内核态下运行。

相反,微内核操作系统只需要内核有一个很小的函数集,通常包括几个同步原语、一个简单的调度程序和进程间通信机制。运行在微内核之上的几个系统进程实现从前操作系统级实现的功能,如内存分配程序、设备驱动程序、系统调用处理程序等等。

 

 

 

 

 

【深入理解Linux内核】《第一章 绪论》笔记,布布扣,bubuko.com

【深入理解Linux内核】《第一章 绪论》笔记

标签:数据   os   io   linux   管理   应用   

原文地址:http://www.cnblogs.com/wisehead/p/3813238.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!