linux内核 一
来源:互联网 发布:win10获取权限软件 编辑:程序博客网 时间:2024/05/17 06:43
Unix操作系统成为一个强壮的操作系统的原因:
1 简洁,提供了几百个系统调用有明确的设计目的,而不是像有的操作系统,动辄几千上万个
2 unix内核和系统级软件都是用c语言写的,便于在不同的硬件上移植
3 所有的东西都是文件,对数据和设备的操作可以使用相同的接口
4 快速简洁的进程创建过程,简单稳定 的进程间通讯,有利于大型复杂任务的完成
策略与机制分离的设计理念
内核的组成
负责响应中断的中断服务程序
负责管理进程分享处理器的进程调度程序
负责管理进程地址空间的内存管理程序
网络、进程间通讯等服务程序
系统调用
当一个应用程序执行系统调用,可以说内核在代其执行
也可以说是应用程序通过系统调用在内核空间运行,也可以说内核运行在进程的上下文
中断服务程序
当硬件设备需要与操作系统通信的时候,它会发出一个异步的中断信号打断处理器的运行,从而打断内核的运行
内核通过中断号,查找相应的中断服务程序来处理中断
在linux中,许多操作系统中,中断服务程序不会运行在进程的上下文中,为了第一时间响应处理,他们运行在专门的中断上下文中
对于处理器来说,他的运行方式只有三种可能
运行在用户空间,执行用户进程
运行在内核,执行进程上下文,代表特定进程
运行在内核,执行中断上下文
单内核与微内核
单内核是一个很大的进程。它的内部又可以被分为若干模块(或者是层次或其它)。但是在运行的时候,它是一个独立的二进制大映象。其模块间的通讯是通过直接调用其它模块中的函数实现的,而不是消息传递。单内核的支持者声称微内核的消息传递开销引起了效率的损失。微内核的支持者则认为因此而增加的内核设计的灵活性和可维护性可以弥补任何损失。
Linux内核是微内核和单一内核的混合产物一样。
linux是单内核,linux内核运行在单独的内核地址空间上,但linux吸取的微内核的优点,模块化设计,抢占式内核,支持内核线程,动态装载内核模块。
从内核版本的第二个数,判断稳定版还是开发版,偶数稳定
- Linux 内核介绍一
- Linux内核(一)
- (一)编译Linux内核
- 一、Linux内核分析
- linux内核编程(一)
- linux内核 一
- Linux内核调试(一)
- linux内核编程(一)
- Linux内核(一)
- Linux 内核 一 笔记
- (一) linux内核基础
- Linux内核体系结构(一)
- Linux内核(一)
- 一、Linux内核简介
- Linux内核编程一:编译内核
- Linux内核:配置内核(一)
- linux内核解读(一)
- linux内核:内存管理一
- Builder模式(创建者模式)
- 基于MTK平台的camera 移植总结
- NAS DIY(1)freebsd配置
- NYOJ-聪明的小珂
- 《精通Android3》之Dalvik VM剖析
- linux内核 一
- HDU - 5014 Number Sequence(贪心+位运算)
- hibernate插入,查询,删除等操作
- OpenCV中人脸识别代码实现
- 像操作普通文件一样操作FIFO --- 非阻塞方式打开,阻塞方式读取
- Grunt入门教程之二 —— concat插件
- C语法归约之变量声明和定义(0)
- 计数排序 小讲
- Javascript setTimeout(0),闭包