官方服务微信:dat818 购买与出租对接

深入解析Unix与Linux历史及其对操作系统发展的影响

2万

主题

2

回帖

8万

积分

管理员

积分
85358
发表于 2025-2-13 19:24:35 | 显示全部楼层 |阅读模式
    1。序言

    最近,我阅读了有关UNIX和Linux历史记录的文章。尽管有点痛苦,但我仍然提出链接,花了一天的时间才能清楚。最终,我明确了Unix,Linux,iOS之间的差异,并且似乎非常复杂。这篇文章是写的。这是相当唾液,但对于理解UNIX和Linux的发展和历史非常有帮助。阅读了这篇文章后,尽管我从头开始了解Unix和Linux的过程,但我发现我对操作系统感兴趣。理解更加模糊,因为我在早期阶段大致读了两本书“深入了解计算机系统”和“操作系统”,并了解了一些操作系统的内容,但是由于我不是专业人士't了解许多基本概念,因此在这里我回顾了上面两本书中的一些内容,并与一些在线信息结合在一起,并整理了操作系统和操作系统内核的两个概念。

    2。操作系统理解

    了解一个句子中的操作系统:操作系统是为用户(使用计算机)提供服务,以便用户可以在计算机上使用各种应用程序(QQ,浏览器)来操作计算机资源(例如需要显示的QQ资源,使用浏览器需要硬盘资源来下载信息,所有这些应用程序都需要使用CPU,最重要的资源)。

    可以从两个方面以及操作系统本身理解上述句子。实际上,当涉及操作系统的概念时,我们大多数不是来自专业背景的人都相对含糊,我们也觉得我们非常接近这件事,因为每个计算机中都有一个操作系统,并且您运行的任何应用程序软件都远离。为什么没有它没有操作系统?实际上,坦率地说,计算机是一组资源。您在计算机上运行的应用程序本质上与计算机的各种资源(例如处理器,内存,I/O设备等)不可分割,只是为了方便起见,它被构造为操作系统,因为各种资源每台计算机都来自不同的制造商,它们具有不同的标准和不同的差异,因此您为某种类型的I/O设备开发的应用程序无法在具有不同I/O设备的另一台计算机上运行,​​并且操作系统可以完美地消除此问题差异和无法扩展的缺点。因此,从逻辑上讲,操作系统位于应用程序和计算机资源中。中间层

    同时,作为中间层,您必须很好地完成中间层的工作,因此通常,操作系统具有两个基本功能:

    (1)防止硬件被失控的应用程序滥用;

    (2)为应用程序提供简单,一致的机制,以控制复杂且通常非常不同的低级硬件设备

   


    另一方面,从计算机CPU(处理器)的角度来看,操作系统实际上只是一组计算机程序(可以理解为许多应用程序的集合,并且这些应用程序基本上与硬件有关),其他计算机程序相似(无论您编写自己的迷你程序,QQ等应用程序还是大型服务器程序),它们都为处理器提供说明,并且处理器执行这些说明以完成这些程序的功能,最大差异是操作系统和其他程序具有不同的意图:操作系统程序控制处理器使用其他计算机资源并控制其他程序的执行时间,这促使处理器完成系统任务的调度。但是(我刚刚解释说,操作系统的意图与其他程序相同),因此要执行此类操作(参考执行另一个程序),处理器必须停止执行操作系统程序以执行此类操作(指执行另一个程序)。 ,而是执行其他程序(这实际上是一个过程开关),因为由于操作系统也是程序(过程),并且任何处理器只能同时处理一个过程,因此还需要像其他过程一样安排操作系统程序(流程),只是操作系统处于主动调度的位置,而其他程序则由操作系统被动控制以实现调度。

    3。操作系统内核

    关于操作系统和操作系统内核的两个概念,许多人试图区分和解释,但发现很难完全解释(包括我自己。在这里我只是理解自己的理解。我希望每个人都能做错任何事情。批评和批评和正确,一起取得进展)。

    在检查了一些有关操作系统内核的概念说明的在线和CS系列书籍之后,我的理解是:

    (1)操作系统包括操作系统内核(这是不可避免的),也就是说,内核程序是操作系统中包含的一组计算机程序的子集,因此内核程序也是一组计算机程序,这些内核程序是它是操作系统中最常用的基本模块,直接处理硬件,主要由用于管理内存,文件,外围设备和系统资源的那些零件组成。

    (2)内核程序总是在内存中占据内存,因此处理器可以随时调用这些内核程序;

    (3)除内核程序外,操作系统还包括其他一些基本组件,例如文本编辑器,编译器,用于与用户交互的程序等。

    对于第(2)点,可以介绍“虚拟内存”(p12)的解释“对计算机系统的深入了解”的说明,以说明:如下:

    在上图中,在该过程的虚拟地址空间的描述中,最高的子区域“内核虚拟内存”用于存储内核程序和数据。此地址空间是一个固定的结构,因此对于每个应用程序(对于过程),它们都具有相同的虚拟地址空间结构,该结构可确保每个过程都可以调用操作系统内核程序以完成自己的功能。

   


    这是另一个图来说明操作系统内核是操作系统的一组子程序

    在上图中,操作系统的内核包围了硬件,与此同时,其外层是系统调用接口,它是操作系统中的其他组件,除了内核之外。

    以下是两个网络对操作系统和操作系统内核的解释的汇编。我个人认为解释相对较好:

    (1)内核是操作系统的基本模块,用于管理系统资源。例如,为过程,文件系统,同步,内存,网络协议等提供软件级抽象(例如操作和权限控制),以及用于硬件访问的抽象(例如磁盘,显示,网络接口卡) (nics));操作系统是根据内核扩展的,包括提供基本服务的系统组件。

    (2)内核是计算机纪律意义上的操作系统,该操作系统直接与硬件进行交互,提供CPU时间切片管理,中断,内存管理,IO管理等;一般意义上的操作系统包含更多内容,至少必须有用于用户交互的基本程序,例如命令行接口和基本说明(文件遍历,过程管理等),或用于图形的桌面和文件浏览器接口。

    4。摘要

    通常,操作系统包括一个内核(提供硬件抽象层,磁盘和文件系统控制,多任务和其他功能的系统软件)以及用于计算机系统(例如功能库,编译器和模块化器)的其他必要组件。工具,文本编辑器,网站服务器和UNIX用户界面(UNIX Shell)等都是操作系统的一部分,并且编译器等每个模块都是一个单独的过程,在操作系统中运行)。因此,内核不是一个完整的操作系统。以Linux为例。 Linux一词本身仅表示Linux内核。但是现在每个人都将Linux理解为默认情况下的整个Linux系统。这是由历史原因引起的(您可以看到细节)。也就是说,在本文的前言中提到的文章已经习惯于使用Linux来描述基于Linux内核的整个基于Linux的操作系统,并使用GNU来投射各种工具和应用程序(也称为GNU(也称为GNU) /linux)。基于这些组件的Linux软件称为Linux分布。一般而言,Linux发行版包括大量软件(供应),例如软件开发工具,数据库,Web服务器(例如),X,桌面环境(例如,GNOME和KDE)和 。 (例如,组织)等。

更多帖子推荐

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|小黑屋|关于我们

Copyright © 2001-2025, Tencent Cloud.    Powered by Discuz! X3.5    京ICP备20013102号-30

违法和不良信息举报电话:86-13718795856 举报邮箱:hwtx2020@163.com

GMT+8, 2025-4-22 03:21 , Processed in 0.108158 second(s), 18 queries .