GNU/Linux操作系统架构

备注:IPC进程间通。IPC(Inter-Process Communication)是共享"命名管道"的资源,它是为了让进程间通信而开放的命名管道,

通过提供可信任的用户名和口令,连接双方      可以建立安全的通道并以此通道进行加密数据的交换,从而实现对远程计算机的访问

下面简要的分析linux内核的各个组件

1.GNU系统库,即glibc库,它是一个实现标准C库函数的可移植的库,包括上半个系统的调用。应用程序与GNU C库连接来访问

Linux内核和一些常用函数。

GNU C和ANSI C函数库的区别:

libc是Linux下的ANSI C的函数库,而glibc是Linux下的GUN C的函数库。ANSI C和GNU C(Linux C)基本上没有什么区别。

一般意义上的普通C,是标准ANSI C,是任何C编译器都应该遵循的C语言标准。而Linux C其实特指的是Linux上的GCC编译器,

GCC编译器完全遵循ANSI C,并在此基础上又做了一些扩展,例如:

1)对ASM语法的支持
2)编译器支持内联函数
3)支持__attribute__机制glibc和libc都是Linux下的C函数库, 2.系统调用接口
应用程序调用例如fopen这样的函数时,实际上是发起一个由内核来实现的系统函数的调用。
3.初始化模块
在初始化模块中,init组件在Linux内核启动时运行,完成硬件和内核组件的初始化后,init组件打开初始化控制台
(/dev/console),启动init进程,因此,init进程是所有Linux进程的跟进程。
4.进程调度器是管理系统中运行的进程,而存储管理器提供由物理存储向虚拟存储的映射功能以及物理磁盘的分页和交换
功能。
5.虚拟文件系统给不同的文件系统,例如ext2,NFS,Minix等等提供一个统一的视图,在编程角度上来说,也就是提供
一个通用这些文件系统的函数,如open,close,read等等。因此,Linux支持很多种独立的文件系统。
6.Linux网络接口提供的架构与虚拟文件系统类似,它提供了一个与底层协议和物理媒介无关的通用接口。
7.进程间通信(IPC),它提供了标准的System V IPC服务,包括了System V消息队列,System V信号量,
System V共享内存区。
8. 架构依赖代码:让Linux能够坚持各种硬件平台,通过面向对应的架构族和处理器的相关程序来完成。

 

Linux内核的架构的更多相关文章

  1. 【转帖】Linux 内核系统架构

    Linux 内核系统架构   描述Linux内核的文章已经有上亿字了 但是对于初学者,还是应该多学习多看,毕竟上亿字不能一下子就明白的. 即使看了所有的Linux 内核文章,估计也还不是很明白,这时候 ...

  2. Linux内核regulator架构和编写

    电源种类介绍 (百度百科)LDO是low dropout regulator,意为低压差线性稳压器,是相对于传统的线性稳压器来说的.传统的线性稳压器,如78xx系列的芯片都要求输入电压要比输出电压高出 ...

  3. linux内核学习推荐书籍

    <UNIX环境高级编程>,推荐指数:★★★★★ <UNIX环境高级编程>是 Unix/ Linux 程序员案头必备的一本书籍.可以说,Linux 程序员如果没有读过这本书,就好 ...

  4. 【Linux开发】Linux V4L2驱动架构解析与开发导引

    Linux V4L2驱动架构解析与开发导引 Andrew按:众所周知,linux中可以采用灵活的多层次的驱动架构来对接口进行统一与抽象,最低层次的驱动总是直接面向硬件的,而最高层次的驱动在linux中 ...

  5. Linux内核的整体架构

    Linux内核的整体架构 作者:蜗蜗 发布于:2014-2-21 13:23 分类:Linux内核分析 原文:http://www.wowotech.net/linux_kenrel/11.html ...

  6. Linux内核架构与底层--读书笔记

    linux中管道符"|"的作用 命令格式:命令A|命令B,即命令1的正确输出作为命令B的操作对象(下图应用别人的图片) 1. 例如: ps aux | grep "tes ...

  7. Linux内核内存管理架构

    内存管理子系统可能是linux内核中最为复杂的一个子系统,其支持的功能需求众多,如页面映射.页面分配.页面回收.页面交换.冷热页面.紧急页面.页面碎片管理.页面缓存.页面统计等,而且对性能也有很高的要 ...

  8. Linux内核的整体架构简介

    1. 前言 本文是“Linux内核分析”系列文章的第一篇,会以内核的核心功能为出发点,描述Linux内核的整体架构,以及架构之下主要的软件子系统.之后,会介绍Linux内核源文件的目录结构,并和各个软 ...

  9. 搭建《深入Linux内核架构》的Linux环境

    作者 彭东林 pengdonglin137@163.com 软件 Host: Ubuntu14.04 64 Qemu 2.8.0 Linux 2.6.24 busybox 1.24.2 gcc 4.4 ...

随机推荐

  1. [OS] 操作系统错题集

    1. (判断) 答案:错 缓冲区有两块:高速缓存区(物理存在)和磁盘缓存区(逻辑存在,实际是内存一块),都不在外存(硬盘). 2. 操作系统的功能:处理机管理(进程管理).作业管理.存储管理.设备管理 ...

  2. springBoot @EnableAutoConfiguration深入分析

    1.新建一个项目中需要提供配置类 2.在META-INF/spring.factorties在文件中配置 org.springframework.boot.autoconfigure.EnableAu ...

  3. 【bzoj1798】[Ahoi2009]Seq 维护序列seq 线段树

    题目描述 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成. 有长为N的数列,不妨设为a1,a2,…,aN .有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2)把数列中的一 ...

  4. BZOJ1195 HNOI2006最短母串(状压dp)

    按照子串出现的先后考虑.令f[i][j]为已经出现的字符串集合为i,最后一个出现的字符串为j时的最短串长,预处理一下任意两个串的最长重叠长度,转移显然.有点麻烦的是字典序,强行增加代码难度. 另一个比 ...

  5. [洛谷P3181][HAOI2016]找相同字符

    题目大意:给你两个字符串,求从两个字符串中各选择一个字串使得这两个字串相同的方案数. 题解:建广义$SAM$,对每个点求出在第一个串中出现次数和第二个串中出现次数,乘起来就行了 卡点:无 C++ Co ...

  6. 蒟蒻Orion还要学的东西!

    这个ID多元化真是个麻烦的事情...... 一会KamijouIndex一会dedicatus545一会Orion的,乱死了啊啊啊啊 数据结构 圆方树 ETT 仙人掌 可持久化树套树 数学 洲阁筛 m ...

  7. 洛谷 P2730 魔板 Magic Squares 解题报告

    P2730 魔板 Magic Squares 题目背景 在成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板.这是一张有8个大小相同的格子的魔板: 1 2 3 4 8 7 6 5 题目描述 ...

  8. UVA.10474 Where is the Marble ( 排序 二分查找 )

    UVA.10474 Where is the Marble ( 排序 二分查找 ) 题意分析 大水题一道.排序好找到第一个目标数字的位置,返回其下标即可.暴力可过,强行写了一发BS,发现错误百出.应了 ...

  9. POJ.3624 Charm Bracelet(DP 01背包)

    POJ.3624 Charm Bracelet(DP 01背包) 题意分析 裸01背包 代码总览 #include <iostream> #include <cstdio> # ...

  10. bzoj1878: [SDOI2009]HH的项链(主席树/离线+BIT)

     这题有离线和在线两种做法.  离线:将查询区间按左端点排序,预处理出所有数下一次的出现位置,一开始将所有第一次出现的数a[i]++,之后当扫到这个数的时候a[next[i]]++,相当于差分,给之后 ...