浅谈Linux操作系统的三大部分

嵌入式技术

1372人已加入

描述

Linux操作系统是一种基于Unix的操作系统,它是由Linus Torvalds在1991年开发的。它是一个自由和开放源代码的操作系统,因此任何人都可以自由地使用、修改和发布它。Linux操作系统是一种多用户、多任务、支持多种处理器架构的操作系统,它能够运行在各种不同的硬件设备上,包括个人电脑、服务器、移动设备和嵌入式系统等。Linux操作系统具有良好的稳定性、可靠性和安全性,并且它拥有强大的命令行工具和丰富的软件库,使得它成为了许多开发者、系统管理员和企业用户的首选操作系统。

Linux三大部分:BootLoader、Linux 内核(kernel)、和文件系统。

内核

一、BootLoader的介绍

BootLoader(引导加载程序)系统上电或硬件复位之后,运行的第一个程序。主要功能如下:初始化系统硬件;加载kernel到内存,提供kernel运行的工作环境;将控制权交给kernel。

总的来说BootLoader的主要功能是初始化系统硬件,例如CPU、内存、外设、定时器、缓冲器等,并加载操作系统的内核镜像到内存中。它还负责进行启动参数的设置和配置,并在内核启动之前进行一些必要的准备工作。一旦内核加载完成,BootLoader会将控制权转交给内核。

常用的 bootloder 有很多种,比如 U-BOOT、REDBOOT、LILO 等等。

二、Linux内核(kernel)的介绍

Linux内核(Kernel)是Linux操作系统的核心组成部分,它是操作系统与硬件之间的接口,负责管理计算机的硬件资源,并提供各种服务和功能。Linux内核是开源的,由Linus Torvalds及其他开发者共同开发和维护。

Linux内核具有以下主要功能:

硬件管理:Linux内核负责管理计算机的硬件资源,包括处理器、内存设备驱动程序等。它通过与硬件交互,使得操作系统能够正确地访问和控制硬件设备。
进程管理:Linux内核负责创建、调度和管理进程(程序的执行实例)。它分配CPU时间片给不同的进程,确保它们按照预期的方式运行,并提供进程之间的通信和同步机制。

内存管理:Linux内核管理计算机的内存资源,包括内存分配、虚拟内存管理、页面置换等。它负责将进程所需的数据和指令加载到内存中,并确保内存的有效使用和保护。

文件系统:Linux内核提供了对文件和目录的管理和访问。它实现了各种文件系统,如ext4、NTFS等,并提供文件权限、文件操作等功能。

设备驱动程序:Linux内核支持各种硬件设备,并提供对应的设备驱动程序。设备驱动程序允许内核与硬件设备进行通信,使得操作系统能够使用和控制这些设备。

网络协议栈:Linux内核实现了各种网络协议,如TCP/IP协议栈,以支持计算机网络的通信功能。

Linux内核的开放源代码和模块化设计使得它能够灵活地适应各种硬件平台和应用场景。开发者可以根据需求定制和优化内核,使得Linux操作系统能够在不同的设备和环境中运行,并提供高性能和稳定性。

Linux 内核启动到最后一定要挂载一个文件系统,如果系统不能从指定的设备挂载,系统就会出错。

三、文件系统的介绍

文件系统(FileSystem)是操作系统中用来管理计算机硬件设备或者存储设备上文件和目录的一种机制。文件系统负责把文件和目录组织成一定的结构,并记录文件和目录的属性和位置等信息,以便于用户读取和操作文件。不同的操作系统有不同的文件系统,比如Windows操作系统使用NTFS、FAT等文件系统,而Linux操作系统使用ext4、XFS等文件系统。

linux 常见文件系统的类型有 ext3 , ext4 , proc 文件系统 ,sysfs 文件系统。Proc 文件系统是 linux
系统中特殊的文件系统,实际上它是只存在内存中的,是一个伪文件系统,这个文件系统是内核和内核模块用来向进程发送消息的机制。

尽管内核是 Linux 的核心,但文件却是用户与操作系统交互所采用的主要工具。这对 Linux 来说尤其如此,这是因为在 UNIX 传统中,它使用文件I/O 机制管理硬件设备和数据文件。Linux 内核启动到最后一定要挂载一个文件系统。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分