当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]我们经常糊涂地将Linux内核与Linux操作系统区分开。对 Redhat、CentOS和Ubuntu更加晕头转向。 今天,我们介绍Linux操作系统的相关概念、开发历史和总体架构。

我们经常糊涂地将Linux内核与Linux操作系统区分开。对 Redhat、CentOS和Ubuntu更加晕头转向。 今天,我们介绍Linux操作系统的相关概念、开发历史和总体架构。

什么是Linux及内核

在1991年,有个名为Linus Torvalds的学生在互联网上发布了一个名为Linux的操作系统。说它是操作系统是因为它实现了对计算机核心硬件的管理。但是它有不能称为一个真正的或者说可用于生产的操作系统,因为它只实现了对计算机资源的简单管理(也就是实现了一个操作系统内核),却没有编译工具等其它操作系统必备的工具集成到其中。

在Linux的早期,Linux这个名词其实就是Linux操作系统内核的简称。Linux内核并非操作系统而是实现了对计算机硬件的管理,是操作系统的基座,通常包括如下几个方面:

内存管理进程管理,其实就是对CPU的管理设备管理,例如鼠标,键盘等文件管理,也就是对硬盘等存储设备的管理,抽象为文件系统网络设备管理,网络设备可以看作一个特例

由于Linux内核开源且免费的特点,越来越多的公司和个人参与到Linux内核的开发当中。而且很多开源项目也移植到Linux之上,这样Linux逐渐丰满起来。

慢慢的,很多公司在Linux内核的基础上增加了开发工具和应用软件,将Linux内核和这些用户态的软件打包成为一个操作系统安装镜像,这个系统称为Linux操作系统,或者称为Linux发行版。这个Linux操作系统就好像Windows系统一样,普通用户可以使用它进行日常工作。

Linux发行版很多,比如我们见的比较多的有Ubuntu、Redhat和Suse等等,非常之多。对于传统概念,操作系统应该是一个具备完整功能的系统,它不仅仅包括内核,还要包括很多应用软件。因此,后来逐渐将Linux的含义由Linux转换为Linux操作系统,而Linux的内核则用"Linux内核"作为称呼,以便于进行区分。

Linux操作系统及各种发行版

前面我们简要的介绍了Linux操作系统、内核和发行版。对于Linux操作系统来说,其本身是一个整体,包括Linux内核、系统库和系统程序,Linux内核是其最基础的部分,它实现了对硬件资源的管理,并且提供了使用这些硬件资源的通用接口。

自1991年发布LInux内核来,很多公司加入其中,在内核的基础上构建了自己的操作系统版本,比如Redhat、Debian和Suse等等。如图2是从1991年到2007年间Linux发行版的演化情况(高清图请私信, linuxtl)。可以看出,到2007年已经有不少于20个发行版了。

Linux发行版很多,下面简单的介绍比较流行的发行版。

Redhat发行版

Red HatLinux是由Red Hat公司发布的一个Linux发行版。Red Hat Linux可算是一个“中年”的Linux发布包,其1.0版本于1994年11月3日发布。Red Hat Linux应该是业界应用最多的操作系统了,很多其它发行版都是基于该发行版,例如CentOS和Oracle Linux等等。

CentOS发行版

CentOS发行版是一个Red Hat LInux的开源版本。它是来自于Red Hat Linux依照开放源代码规定释出的源代码所编译而成。由于Red Hat Linux本身是一个商业操作系统,因此很多企业在使用是存在诸多不便,这些企业就转移到CentOS上来。

Red Hat和CentOS等操作系统发行版主要应用在企业服务中,更多的应用在服务端业务中,比如Web服务和云计算等等。

Ubuntu发行版

Ubuntu最早是一个基于Dibian的桌面版发行版。Ubuntu基本上可以代替Windows实现日常办公,因为其发行版中包含日常办公常用的所有软件,比如邮件客户端,开源Office套件等等我们能想到的工具。而且这些工具都是免费的。

下面是Ubuntu桌面版的一个桌面截图,可以看出其跟Windows或则MacOS很像,美观度也是很赞的。

Ubuntu发展很快,目前除了桌面版外还有服务版和云计算版等其它版本,几乎涵盖了所有的应用领域。

Suse发行版

Suse是德国 SuSE Linux AG公司发行维护的Linux发行版,是属于此公司的注册商标。第一个版本出现在1994年年初,也是比较早的发行版之一。2004年这家公司被Novell公司收购。

我们只介绍了比较主流的发行版。Linux的发行版还很多,很难全部介绍。最后我们总结一下几个关键发行版的时间线以及Linux社区的比较重要的几个大事件,具体如图所示。当然,这里面不仅仅包括Linux操作系统本身,还包括编译器和Git版本控制工具等等。

Linux操作系统整体架构

前面我们介绍了操作系统不仅仅包含内核,内核只是操作系统的基础,实现了对硬件资源的管理。操作系统的组件通常包括如下几部分:

操作系统内核系统库系统工具集基于上述关键组件,用户可以使用该操作系统,或者基于该操作系统开发自己的应用程序。如图4为Linux操作系统架构简图。从这张图中我们可以看出操作系统与硬件及应用软件间的关系。下面我们分别介绍一下各部分含义和作用。

Linux内核(Kernel)

内核时操作系统最核心,最基础的部分。它实现了对计算机硬件的管理,并且对上层提供接口。这里的接口包括开发接口和管理接口等等。通常来说有两者类型的操作系统内核,它们是微内核和宏内核。

微内核,正如其名字一样,它只包含最基础的功能特性。在微内核操作系统中只提供了非常简单的软件,包括内存管理,进程管理和进程通信等等特性。

宏内核,宏内核不仅仅提供内存管理、进程管理和通信的特性,还包含很多驱动程序。而且,这些驱动程序通常是可以动态的加载和卸载。

系统库

操作系统不能自嗨,其最重要的是为上层提供抽象的接口,这样开发人员才能开发应用程序,从而利用计算机资源。其中系统库就是操作系统提供的抽象接口,也就是开发接口或者系统API。类似的接口很多,比如访问文件系统的API,网络套接字API或者进程管理API等等。

系统程序(工具集)

系统工具集其实就是操作系统自带的一些软件。这些软件主要实现对操作系统的管理和监控等功能。比如对操作系统网络状态的查看(ifconfig),磁盘格式化和磁盘负载监控等等。类似的工具很多,本文不再赘述。

上面只是简单的介绍了一下Linux操作系统的几个核心组件,其实Linux的整体架构要复杂的多。单纯从Linux内核的角度,它要管理CPU、内存、网卡、硬盘和输入输出等设备,因此内核本身分为进程调度,内存管理,虚拟文件系统,网络接口等4个核心子系统。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为了满足日益增长的数据处理需求,铁威马NAS推出了全新的性能巅峰2024年旗舰之作F4-424 Pro,并搭载了最新的操作系统--TOS 6。这款高效办公神器的问世,无疑将为企业和专业人士带来前所未有的便捷与效率。

关键字: 存储 Linux 服务器

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux

安装Linux操作系统并不复杂,下面是一个大致的步骤指南,以帮助您完成安装。1. 下载Linux发行版:首先,您需要从Linux发行版官方网站下载最新的ISO镜像文件。

关键字: Linux 操作系统 ISO镜像

计算机是由一堆硬件组成的,为了有限的控制这些硬件资源,于是就有了操作系统的产生,操作系统是软件子系统的一部分,是硬件基础上的第一层软件。

关键字: Linux 操作系统 计算机

Linux操作系统是一套免费使用和自由传播的类Unix操作系统,通常被称为GNU/Linux。它是由林纳斯·托瓦兹在1991年首次发布的,并基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Lin...

关键字: Linux 操作系统

所谓进程间通信就是在不同进程之间传播或交换信息,它是一组编程接口,让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息;还可以让一个程序能够在同一时间里处理许多用户的需求。

关键字: Linux 进程通信 编程接口

串口通信作为一种最传统的通信方式,在工业自动化、通讯、控制等领域得到广泛使用。

关键字: Linux 串口通信 通讯

2023年11月16日: MikroElektronika(MIKROE) ,作为一家通过提供基于成熟标准的创新式硬软件产品来大幅缩短开发时间的嵌入式解决方案公司,今天宣布推出一款基于单线设备的软硬件开源解决方案Cli...

关键字: 嵌入式 Linux 操作系统

Linux是一种免费使用和自由传播的类Unix操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布。它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CP...

关键字: Linux 操作系统

本文中,小编将对嵌入式予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 嵌入式 Linux
关闭
关闭