Linux最受欢迎的自由电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。Linux最早是由芬兰黑客林纳斯·托瓦茲为尝试在英特尔x86架构上提供自由免费的类Unix操作系统而开发的。该计划开始于1991年,这里有一份林纳斯·托瓦茲当时在Usenet新闻组comp.os.minix所登载的帖子,这份著名的帖子标志着Linux计划的正式开始

Linux是一个宏内核(monolithic kernel)系统。设备驱动程序可以完全访问硬件。Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载

UNIX 是一个交互式系统,用于同时处理多进程和多用户同时在线,那是因为 Linux 是由 UNIX 发展而来的,UNIX 是由程序员设计,它的主要服务对象也是程序员。Linux 继承了 UNIX 的设计目标。从智能手机到汽车,超级计算机和家用电器,从家用台式机到企业服务器,Linux 操作系统无处不在

Linux 中的 GUI(Graphical User Interface) 和 UNIX 中的非常相似,这种 GUI 创建一个桌面环境,包括窗口、目标和文件夹、工具栏和文件拖拽功能。一个完整的 GUI 还包括窗口管理器以及各种应用程序

Linux 操作系统可以由下面这几部分构成

  • 引导程序(Bootloader):引导程序是管理计算机启动过程的软件,对于大多数用户而言,只是弹出一个屏幕,但其实内部操作系统做了很多事情
  • 内核(Kernel):内核是操作系统的核心,负责管理 CPU、内存和外围设备等。
  • 初始化系统(Init System):这是一个引导用户空间并负责控制守护程序的子系统。一旦从引导加载程序移交了初始引导,它就是用于管理引导过程的初始化系统。
  • 后台进程(Daemon):后台进程顾名思义就是在后台运行的程序,比如打印、声音、调度等,它们可以在引导过程中启动,也可以在登录桌面后启动
  • 图形服务器(Graphical server):这是在监视器上显示图形的子系统。通常将其称为 X 服务器或 X。
  • 桌面环境(Desktop environment):这是用户与之实际交互的部分,有很多桌面环境可供选择,每个桌面环境都包含内置应用程序,比如文件管理器、Web 浏览器、游戏等
  • 应用程序(Applications):桌面环境不提供完整的应用程序,就像 Windows 和 macOS 一样,Linux 提供了成千上万个可以轻松找到并安装的高质量软件

Linux 内核结构

参考:

lore.kernel.org

linuxplumbersconf.org

linux.org

Linux 核代码的学习工具 ftrace

Linux操作系统剖析

Linux Kernel Linux内核项目相关推荐

  1. 你不知道的Linux Kernel——Linux内核的工作原理

    Linux内核更新是越来越快了,可能由于Linux的普及,大家都开始关注了,各种安全隐患也越来越多.支持Intel.Alpha.PPC.Sparc.IA-64.ARM.MIPS.Amiga.Atari ...

  2. 龙芯linux内核,龙芯的linux kernel,内核开发与编译

    在很久很久以前,linux被视为geek极客的玩具.自行升级Linux内核,对普通用户来说,简直是天方夜谭.曾经的曾经,升级内核需要很多纷繁复杂的步骤,也需要花费很多的时间.但是,现在不一样了.内核的 ...

  3. Linux Kernel - Debug Guide (Linux内核调试指南 )

    linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 ...

  4. linux kernel中的栈的介绍

    目录 1.linux kernel中的中断irq的栈stack (1).arm32体系的irq的栈 (2).arm64体系的irq的栈 2.linux kernel中的栈stack (1).概念介绍: ...

  5. linux撤销编译,linux重新编译内核

    一.linux内核 1.查看linux内核版本 uname -r 2.下载对应的linux内核 https://www.kernel.org/pub/linux/kernel/ 将内核文件夹解压到/u ...

  6. Linux shell、内核及系统编程精品资料下载汇总 topsage

    shell编程.sed.awk.grep相关: UNIX shell by Example 第四版 UNIX shell范例精解 (第4版) 中文高清PDF下载 Shell脚本学习指南(Classic ...

  7. cpuidle framework in Linux Kernel(2)what's idle state

    processor中可以有多个不同的idle级别,对应着不同的power consumption和exit latency.当CPU上没有任务执行时,可以系统当前的状态,把processor切换到不同 ...

  8. Linux Kernel 5.8 发布,华为内核代码贡献全球持续领先

    近日, Linux Kernel 5.8 版本正式发布,Linus 表示 Linux Kernel 5.8 是"有史以来最大的发行版之一".Linux Kernel 5.8 在 A ...

  9. 十六.linux开发之Kernel移植——内核的配置和编译原理

    有道云笔记地址: 详情看这里链接,记录太多,就不一一排版了. http://note.youdao.com/noteshare?id=d25dbce79566963e3699574a74048154& ...

最新文章

  1. 无重复字符串的排列组合
  2. c++ socket error 10038错误
  3. linux+shell+整数计算器,Shell(())实现对整数进行数学运算
  4. hdu 1789 Doing Homework again
  5. MBProgressHUD
  6. oracle视图执行脚本,oracle 视图,函数,过程,触发器自动编译脚本
  7. iOS - Rac(ReactiveCocoa)
  8. 服务器不知别内存_图文版 许迎果第63期 选购和使用内存需要注意的点
  9. 怎么修改x轴_Origin绘图:共X轴Stack绘制分波态密度与绘图中的科学构思
  10. 保障健康睡眠的几种食疗法
  11. table表框去掉相邻的间隔
  12. C++ 传递指针给函数
  13. 为 Perl 定制 Vim
  14. 威纶触摸屏如何设置数值输入元件的上下限和用户密码登录?
  15. h5调用手机相机和录音机_html5 调用手机摄像头以及录音的方法
  16. python 打开pdf文件_Python读取PDF文件--pdfminer
  17. 中国脑计划颠覆性创新之路二,欧美脑计划存在重大缺陷
  18. win7远程桌面连接
  19. rabbitMQ无法访问web管理页面
  20. 2019 年 Google 编程之夏活动报告

热门文章

  1. AD如何清理过期电脑
  2. windows服务器批量绑定Ip
  3. 我的台式机的几张照片
  4. 机器学习实践笔记(三)时间序列数据预测
  5. 响应式网站导航html,jQuery和CSS3响应式网站导航幻灯片插件
  6. sql文字转换全拼_Mysql中文汉字转拼音的实现(每个汉字转换全拼)
  7. 《Python自动化》学习笔记:shutil模块使用介绍
  8. vue组件制作专题 - (mpvue专用)在mpvue中纯自己写css实现简单左右轮播
  9. php 继承性,php面向对象全攻略 (七) 继承性_php基础
  10. git将本地项目推送到腾讯开发者平台上的步骤