UNIX系统简介

Unix是一个操作系统,它是Ubuntu、Solaris、POSIX等所有操作系统的基础。它是在20世纪70年代由肯·汤普森(Ken Thompson)、丹尼斯·里奇(Dennis Ritchie)和AT&T实验室的其他人开发的。它最初是为开发软件的程序员而不是为非程序员设计的。

Unix和C被AT&T发现并分发给政府和学术机构,这使得它们都被移植到比任何其他操作系统更广泛的机器家族中。在这个操作系统中,开发人员主要关注的是内核。Unix被认为是操作系统的核心。Unix操作系统的系统结构如下:

1)Layer-1:硬件

它包含所有与硬件相关的信息。

2)Layer-2:内核

它与硬件交互,大多数任务(如内存管理,任务调度和管理)由内核完成。

3)Layer-3:Shell命令

Shell是处理您的请求的实用程序。当您在终端上键入命令时,shell会解释该命令并调用所需的程序。

有各种命令,例如cp,mv,cat,grep,id,wc,nroff,a.out等。

4)Layer-4:应用层

它是执行给定外部应用程序的最外层。

该图显示了三个级别:用户,内核和硬件。

1)系统调用和库接口表示用户程序和内核之间的边界。系统调用看起来像C程序中的普通函数调用。汇编语言程序可以直接调用系统调用,而无需系统调用库。这些库在编译时与程序链接。

2)系统调用集分为与文件子系统交互的系统调用和一些与过程控制子系统交互的系统调用。文件子系统管理文件,分配文件空间,管理可用空间,控制对文件的访问以及为用户检索数据。

3)进程通过一组特定的系统调用与文件子系统交互,例如open(打开文件进行读写)、close、read、write、stat(查询文件属性)、chown(更改文件所有者的记录)和chmod(更改文件的访问权限)。

4)文件子系统使用缓冲机制访问文件数据,该缓冲机制调节内核和辅助存储设备之间的数据流。缓冲机制与块I/O设备驱动程序进行交互,以启动与内核之间的数据传输。

5)设备驱动程序是控制外围设备操作的内核模块。文件子系统还直接与原始I/O设备驱动程序进行交互,而无需缓冲机制的干预。最后,硬件控制负责处理中断并与机器通信。在执行过程时,磁盘或终端等设备可能会中断CPU。如果是这样,内核可以在为中断服务后恢复被中断进程的执行。

6)中断不是由特殊进程提供服务,而是由内核中的特殊功能(在当前运行的进程的上下文中调用)服务。

Unix和Linux之间的区别

Linux本质上是Unix的克隆。但是,基本区别如下所示:

相关文章

「高频考点」系统软件

系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统,此次教师网对系统软件这一知识点进行了归纳汇总,具体内容如下:...

编写汇编语言常见错误分析

一、汇编软件汇编失败原因分析:这里采用Keil C51软件包中的宏汇编器A51作为编绎器,单片机的汇编语言编写时要注意一定的语法,详细介绍可以参考相关参考书,语法错误会造成汇编失败,常见的汇编错误如下...

linux 汇编2-关于寄存器及系统调用

后续主要在linux操作系统下学习基于X86的32位汇编语言32位的X86处理器中有8个32位的通用寄存器(EAX、EBX、ECX、EDX、ESI、)。EDI、ESP、EBP),由于历史的原因,EAX...

1.2电脑的软件组成和功能。

软件只运行在电脑硬件上,用于实电脑高级功能的程序。用户通过软件才能对电脑进行控制和实现各种高级功能。电脑只有同时具备软件和硬件才可以正常工作。软件主要储存在外部储存中软件系统一部分操作系统软件。程序设...

学点汇编吧,它让你懂得更多

我是从学foxbase开始接触编程的(当foxbase是编程语言吧)。很容易学,不多久就可以就可以设计自己的数据库,配合简单的菜单来操控数据库:增加、删除、插入、排序、查找、打印都得心应手,觉得编程好...

黄河水利委员会规划部署业务软件统一及仪器设备集成工作

人民网北京3月25日电 (记者王仁宏)近日,黄河水利委员会水文局组织召开新技术统一与新仪器集成安排部署会,规划部署业务软件统一及仪器设备集成工作。会议指出,近年来,黄委水文局强力推进水文测报新技术应用...