Linux体系结构
linux内核结构:
system call interface (SCI层)
为用户空间提供了一套标准的系统调用函数来访问linux内核。
process management (PM层)
进程管理是创建进程,停止进程,并控制他们之间的通信。还包括进程
调度,控制活动进程如何共享cpu
Memory Management (MM)
内存管理的主要作用是控制多个进程安全的共享内存区域。
Virtual file systems (VFS)
虚拟文件系统,隐藏各种文件系统的具体细节,为文件操作提供统一的接口
linux提供了一个打得通用模型,使这个模型包含了所有文件系统功能的集合(一切皆文件)
device drivers 设备驱动
linux内核中有大量的代码在设备驱动程序部分,用于控制特定的硬件设备。
linux驱动一般分为网络设备、块设备、字符设备、杂项设备
网络协议栈
内核网络协议栈为linux提供了丰富的网络协议实现。
内核程序结构:
arch目录,
arch目录是平台目录。内核支持的所有CPU架构,在该目录下都有对应的子目录。每个cpu的子目录,
又进一步分解为boot,mm,kernel等子目录,分别控制系统的引导,内存管理,系统调用。
还有动态调频,主频率设置部分等。
binary目录,
无源码的驱动以二进制放到该文件夹
block目录,
部分块设备驱动程序
crypto目录,
加密压缩CRC校验
documentation目录,
内核的使用说明文档
drivers目录,
设备驱动
firmware目录,
固件接口
fs目录,
存放各种文件系统的实现代码
include目录,
通用的头文件在include/linux
init目录,
内核初始代码,
ipc目录,
进程通信的源码
virt目录,
内核虚拟机
kernel目录,
linux核心功能源码,程序调度,控制进程,模块化等
lib目录,
库文件代码
mm目录,
实现内存管理(与平台体系无关的部分)
net目录,
网络协议实现代码
samples目录,
内核编程的范例
scripts目录,
配置裁减内核的工具脚本
security目录,
包括不同的linux安全模型代码
sound目录,
音频设备的驱动程序
tools目录,
将.c编译成目标文件,连接合并可运行的内核镜像文件等
usr目录,
实现用于打包和压缩的cpio等
学习的重点是驱动开发相关的知识、函数的调用、驱动的协议、简单的硬件知识
Linux体系结构的更多相关文章
- Linux基础系列—Linux体系结构和Linux内核结构
/** ****************************************************************************** * @author 暴走的小 ...
- Linux 体系结构
Linux 体系结构 Linux 嵌入式系统的组成 层次结构图 bios 1.硬件检测 2.初始化系统设备 3.装入os 4.调os向硬件发出的指令 bsp 板级支持包 硬件相关 开发板原理图 开 ...
- linux体系结构与内核结构图解
1.当被问到Linux体系结构(就是Linux系统是怎么构成的)时,我们可以参照下图这么回答:从大的方面讲,Linux体系结构可以分为两块: (1)用户空间:用户空间中又包含了,用户的应用程序,C库 ...
- Linux体系结构(二): Linux系统层次
前一节内容大概介绍了一下Linux的历史由来,各大Linux发行厂商都是基于GNU项目下的所有开源软件,来构建各自己的Linux发行版本,一个完整的Linux发行版本大概可以分为以下四个层次结构: ...
- Linux体系结构(五): 文件系统
上一节主要对Linux系统中的内核空间与用户空间做了简单的分析,在这一节里,将从内核空间和用户空间对Linux文件系统进行一定的剖析. 谈及文件系统,很多Linux用户都会有一个比较模糊和神秘的概念, ...
- linux 体系结构知识 博客
http://blog.csdn.net/haiross/article/category/1488205/3
- linux内核体系结构
linux内核第一记 1.linux体系结构 从上图可知,Linux分为:用户空间和内核空间.内核空间和用户空间是程序执行的两种不同的状态,通过系统调用和硬件中断能够完成从用户空间到内核空间的 ...
- Linux 简介
转载:http://c.biancheng.net/cpp/html/2726.html Linux简介 严格的来讲,Linux 不算是一个操作系统,只是一个 Linux 系统中的内核,即计算机软件与 ...
- 嵌入式Linux内核制作【转】
本文转载自:http://blog.csdn.net/coding__madman/article/details/51291316 1. Linux体系结构 从整体上来分,linux可以分为User ...
随机推荐
- wc---计算字数。
Linux wc命令用于计算字数. 利用wc指令我们可以计算文件的Byte数.字数.或是列数,若不指定文件名称.或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据. 语 ...
- Python中import和from的一些事。。。
摘自python学习手册, 用于记录. 客户端可以执行import或from语句.如果模块还没有加载,这两个语句会去搜索.编译以及执行模块文件程序.主要差别在于,import会读取整个模块,所以必须进 ...
- Python学习第一篇
好久没有来博客园了,今天开始写自己学习Python和Hadoop的学习笔记吧.今天写第一篇,Python学习,其他的环境部署都不说了,可以参考其他的博客. 今天根据MachineLearning里面的 ...
- oracle基础入门(一)
一:Oracle的安装 我所知的Oracle的数据库有 10g,11g, 12g, 我们常用的是10g ,因为10g有scott的用户,而11和12现在还没有(哪位大神看到有问题可以指出哦), ...
- pat(A) 1065. A+B and C (64bit) (java大数)
代码: import java.util.*; import java.math.*; public class Main { public static void main(String args[ ...
- Css盒模型有哪几部分,标准盒模型和IE盒模型有哪些区别
首先介绍Css的盒模型也就是标准盒模型(BOX Model) 包含了 内容(content) 内边距(padding) 边框(border) 外边框(margin) 这是大家经常用到的,也是现在的标准 ...
- JS中的预解析
js预解析对于很多学习web前端开发的新手们很困扰,总是很难搞懂到底是个什么东西,今天零度就为大家简单的分析一下,争取让大家都明白! 首先,看一下下面的代码: alert(a); var a = 1; ...
- BZOJ离线版
http://dh.attack.cf/bzoj/ 闲来无事自己搞的 可以查看权限题 至于这个东西怎么搞, 可以私信我2333 网站已经挂掉. 想看的可以去rxz大爷的blog http://ruan ...
- Android SecurityException
public boolean checkNetwork() { boolean result = false; try { Context context = this.getApplicationC ...
- the night the room
http://bogifabian.com/?page_id=2529 I am trying to creat dreamful atmospheres, paint walls and floor ...