[Linux内核设计与实现]第1章Linux内核简介

操作系统和内核简介

  • 操作系统是指在整个系统中负责完成最基本功能和系统管理的那些部分。这些部分应该包括内核、设备驱动程序、启动引导程序、命令行Shell或者其他种类的用户界面、基本的文件管理工具和系统工具
  • 对于提供保护机制的现代系统来说,内核独立于普通应用程序,它一般处于系统态,拥有受保护的内存空间和访问硬件设备的所有权限。这种系统态和被保护起来的内存空间,统称为内核空间
  • 内核有时候被统称为管理者或者是操作系统核心

应用程序、内核和硬件的关系

在这里插入图片描述

  • 运行于用户空间,执行用户进程
  • 运行于内核空间,处于进程上下文,代表某个特定的进程执行
  • 运行于内核空间,处于中断上下文,与任何进程无关,处理某个特定的中断

单内核与微内核设计之比较

原理优势劣势
单内核从整体上作为一个单独的大过程来实现,同时也运行在一个单独的地址空间上。简单、性能高。内核之间的通信微不足道,因为都在同一地址空间;内核可以直接调用函数,这与用户空间应用程序没什么区别一个功能的崩溃会导致整个内核无法使用
微内核内核按功能被划分成各个独立的过程。每个过程独立的运行在自己的地址空间上安全:内核的各种服务独立运行,一种服务挂了不会影响其他服务内核各个服务之间的调用涉及进程间的通信,比较复杂且效率低

Linux是一个单内核,即Linux内核运行在单独的内核地址空间上。不过Linux汲取了微内核的精华,还避其微内核设计上性能损失的缺陷,让所有事情都运行在内核态,直接调用函数,无需消息传递。至今,Linux是模块化的、多线程的以及内核本身可调度的操作系统(实用主义)

Linux内核与传统的Unix系统之间存在一些显著的差异:

  • 支持动态加载内核模块
  • 支持对称多处理(SMP)机制
  • 内核可抢占
  • 内核不区分线程和其他的一般进程
  • 提供具有设备类的面向对象的设备模型、热插拔事件以及用户空间的设备文件系统

Linux内核版本

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值