linux系统四个组成部分,Linux系统由哪几部分组成?系统详解(干货)
原标题:Linux系统由哪几部分组成?系统详解(干货)
我们常说的Linux一般指的是系统内核,基于Linux系统内核的操作系统叫Linux发行版操作系统,像redhat、centos、ubuntu和安卓等都是Linux发行版操作系统。
Linux一般有4个主要部分:
内核、shell、文件系统和应用程序(app)。
如图所示,Linux的层次结构在硬件支撑的基础上,包括内核、shell和应用等,它们一起使用户可以使用Linux。
最内层是硬件,硬件是基础,软件的运行必须要以硬件为载体。
内核(kernel)是操作系统的核心,它也是一段代码, CPU、内存、硬盘、网络等都要通过内核传递给硬件,Linux负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
如图所示,Linux 内核包括内存管理、进程管理、设备驱动程序、文件系统和网络管理等。内存管理的源代码一般存放在在 ./linux/mm 的位置。内核通过 SCI 提供了一个应用程序编程接口(API)来创建一个新进程(fork、exec 或 Portable Operating System Interface [POSⅨ] 函数),停止进程(kill、exit),并在它们之间进行通信和同步(signal 或者 POSⅨ 机制)。内核起到沟通软件和硬件的作用。
2、shell
shell是一种命令解释的中介,我们的另一个平台()有详细版。
文件系统是文件存放在磁盘等存储设备上的组织方法,一般都有所对应的物理空间。Linux系统能支持多种目前流行的文件系统,如EXT2、 EXT3、 FAT、 FAT32、 VFAT和ISO9660。
下图所示即为Linux文件系统目录的管理命令:
Linux系统一般都有一套都有称为应用程序的程序集,它包括文本编辑器、编程语言、X Window、办公套件、Internet工具和数据库等。类似于windows文本编译器、ie浏览器等。
另外,为了方便调用内核,Linux将内核的功能接口制作成系统调用(system call)。通过系统调用的这个接口,Linux将上层的应用与下层的内核分离,隐藏了底层的复杂性,也提高了上层应用的可移植性。在命令行中输入$man 2 syscalls可以查看所有的系统调用,也可以通过$man 2 read来查看系统调用read()的说明。
上面就是Linux系统架构的介绍了,完整来说,Linux系统主要由硬件、内核、系统调用、shell、库函数这几个部分构成,如下图所示:
免费视频链接: https://pan.baidu.com/s/1sl4dwol 密码: ux9i
更加详细的Linux系统资料
教父级讲师手把手带你做项目
更多免费视频和教程资料
责任编辑:
linux系统四个组成部分,Linux系统由哪几部分组成?系统详解(干货)相关推荐
- Linux Shell脚本入门教程系列之(八)Shell printf命令详解
本文是Linux Shell脚本系列教程的第(八)篇,更多shell教程请看:Linux Shell脚本系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对She ...
- Windows系统下nodejs、npm、express的下载和安装教程详解
这篇文章主要介绍了Windows系统下nodejs.npm.express的下载和安装教程详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下 1. node.js下载 首先进入http://nod ...
- linux上连接ftp服务器,linux下lftp连接ftp服务器进行上传与下载的方法详解
摘要 腾兴网为您分享:linux下lftp连接ftp服务器进行上传与下载的方法详解,中英翻译,中建在线,掌上看家,银行帮等软件知识,以及微信一键转发工具,小学英语冀教版,正是在下表情包,易问电信,万能 ...
- linux内核移植与开发板,Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解
Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解 [复制链接] 今天终于让Linux内核在飞凌的板子上跑起来了,想来也是艰辛,为了移植成功,断断续续做了将近两个月的努力,期间郁闷不可 ...
- Mybatis系列全解(四):全网最全!Mybatis配置文件XML全貌详解
封面:洛小汐 作者:潘潘 做大事和做小事的难度是一样的.两者都会消耗你的时间和精力,所以如果决心做事,就要做大事,要确保你的梦想值得追求,未来的收获可以配得上你的努力. 前言 上一篇文章 <My ...
- 安装linux系统四个企鹅,Linux Lite第一个获得Linux 4.14 及如何安装它
Linux Lite维护者Jerry Bezencon再次首次在Twitter上宣布他的基于Ubuntu的发行版的软件库中最新的Linux内核分支的可用性. 如你所知,Linus Torvalds在2 ...
- ubuntu linux显卡驱动安装教程,Ubuntu系统怎么安装英伟达显卡驱动呢 快速安装步骤详解...
Ubuntu系统怎么安装英伟达显卡驱动呢?Ubuntu系统的电脑,显卡驱动都是默认的开源,并非官方驱动 在性能和功能方面,与官方驱动还是有差别的 下面介绍利用Ubuntu的驱动程序安装显卡官方驱动.需 ...
- 【genius_platform软件平台开发】第五十八讲:Linux系统之V4L2视频驱动-VIDIOC_REQBUFS向驱动申请帧缓冲代码详解
VIDIOC_REQBUFS向驱动申请帧缓冲代码详解 1. 概述 2. 应用层 3. 内核驱动 3.1 vb2_ioctl_reqbufs函数 3.2 vb2_core_reqbufs函数 3.3 _ ...
- [Samba] Linux(Centos)samba服务安装,Samba文件共享及Samba配置详解
本片博客主要介绍了[Samba] Linux(Centos)samba文服务器安装案例,samba共享,samba服务,samba配置详解及网页配置samba工具samba-swat 的使用方法等. ...
最新文章
- 5.Queue和Deque的区别与联系
- pytorch 反卷积 可视化_手推反卷积
- 分享SSRF漏洞的学习和利用
- MongoDB监控项--如何使用命令得到
- Facebook、Netflix 等多家科技巨头谈“设计”
- 如何优化电子邮件营销的效果
- flask带有传入参数既有URL还有其他参数类型:建议使用方式二(flask 使用查询字符串的方式)
- node和npm是什么_什么是npm? 面向初学者的Node Package Manager教程
- UVA11361 Investigating Div-Sum Property
- python全栈开发-Day11 迭代器、生成器、面向过程编程
- 【Python】Webpy
- 向日葵 监控 android,就是如此简单!向日葵远程控制Android手机版教程
- 【AI视野·今日CV 计算机视觉论文速览 第243期】Thu, 14 Apr 2022
- autojs的使用文档
- ubuntu root账户下添加和删除用户
- 静态路由和动态路由的融会贯通(思科/华为)
- java 图片合成 工具类_Java实现的微信图片处理工具类【裁剪,合并,等比例缩放等】...
- 支付宝-相互保,创新。
- 【重庆大学917计算机专业基础综合】复习攻略
- ‘access denied (“java.io.FilePermission“...... “IKAnalyzer.cfg.xml“ “read“(elasticsearch很容易踩到的坑)