UNIX操作系统

UNIX操作系统是一种多用户、多任务的分时操作系统。它由最内层的硬件提供基本服
务,内核提供全部应用程序所需的各种服务。

UNIX文件系统

UNIX文件系统采用树形带交叉勾连的目录结构,根目录即为,非叶节点是目录
文件,叶节点可以是目录文件,也可以是文件或特殊文件。目录是一个包含目录项的文件,
在逻辑上可以认为每一个目录项都包含一个文件名,同时还包含说明该文件属性的信息。
某些UNIX文件系统限制文件名的最大长度为14个字符,BSD版本则将这种限制扩展到了
255个字符。


UNIX文件系统结构由四部分组成,即引导块、超级块、索引节点区和数据存储区。

  • 引导块:占据文件系统的开头,通常占用一个物理块,包含引导代码段。
  • 超级块:描述文件系统的状态。
  • 索引节点区:第一个索引节点就是文件系统的根索引节点,当执行mount命令后,
该文件系统的目录结构就可以从这个根索引节点开始进行存取。
  • 数据存储区:专门存放数据的区域。

UNIX进程与存储管理

1.进程管理

UNIX中的进程由进程控制块(PCB)、正文段和数据段组成。PCB由常驻主存的基本进
程控制块proc和非常驻主存的进程扩充控制块user两部分组成。正文段可供多个进程共享。
系统设置一正文表text,每个正文段都占据一个表项,用来指明正文段在主存和磁盘中的位
置。数据段是进程执行时用到的数据段,若进程执行时的程序是非共享的,则也构成数据传统的UNIX进程控制子系统有进程同步、进程通信、存储管理和进程调度几大功能。进程调度采用动态优先数调度算法,进程的优先数随着进程的执行情况而变化。UNIX系统中优先数的确定方法有两种,即设置方法和计算方法。

2. 存储管理

UNIX早期的版本采用“对换技术”扩充主存容量,进程可以被换出到对换区,也可以从对换区换进到主存。高版本的 UNIX 主存管理采用分页式虚拟存储机制,对换技术作为一种辅助手段,并采用二次机会页面替换算法。

# UNIX设备管理
1.设备管理

UNIX系统中的文件等同于系统中可用的任何资源。UNIX的设计者们遵循一条这样的规则∶UNIX系统中可以使用的任何计算机资源都用一种统一的方法表示。它们选择用“文件”这个概念作为一切资源的抽象表示方法。
UNIX系统包括两类设备,即块设备和字符设备。

UNIX设备管理的主要特点如下。

(1)块设备与字符设备具有相似的层次结构。这是指对它们的控制方法和所采用的数据结构、层次结构几乎相同。


(2)将设备作为一个特殊文件,并赋予一个文件名。这样,对设备的使用类似于对文件的存取,具有统一的接口。


(3)采用完善的缓冲区管理技术。引入“预先读”“异步写”和“延迟写”方式,进一步提高了系统效率。

2. 输入输出转向

在UNIX中,任何一个存放一条或多条命令的文件称为Shell程序或Shell过程。Shell 向用户提供了输入输出的转向命令,可以在不改变应用程序本身的情况下自由地改变其数据的输入源和输出目的地。其中,“>”“>”表示输出转向,“<”表示输入转向。

3.管道

在 UNIX 系统中,“|”符号表示管道。一个管道总是连接两条命令。若将左边的标准输出命令和右边的标准输入命令相连,则左边命令的输出结果就直接成为右边命令的输入。这个功能使得用户可以在不改动程序本身的前提下使多个程序通过标准输入输出设备进行数据传递。

shell程序

shell不但负责管理命令行界面,而且shell自己也是一个编程的环境。实际上,可以将命令按照命令行的格式写入一个文件,再将其权限设置为可执行,就可以像普通命令一样执行它了。这个文件通常称为脚本。熟悉DOS的用户自然想到shell脚本相当于DOS的批处理文件,而且shell脚本中也同样支持如if、for和case等程序控制流程,甚至还支持变量和函数定义。shell实际上是一种编程语言。利用shell语言可以编写出功能很强的shell程序,并可将程序段组合起来。

1. 正则表达式





在UNIX中,正则表达式不仅用在vi中,还用在shell中。正则表达式是用来确定字符串模式的一个规则集,是对文本字符串的一种描述,该描述能简洁而又完整地刻画文本字符串的关键特性。因此,正则表达式通常被用作字符串的匹配操作。






2. shell变量





shell中的变量可分为3种类型,即用户定义变量、系统定义变量和shell定义变量。用户定义变量是必须以字符或下划线开始,可以包含字母、下划线和数字的字符序列。系统定义变量和shell定义变量要相对复杂一些。

3. shell程序

shell 向用户提供了许多用于简化输入的符号,这些符号包括各种通配符、字符串定义符、转义符和变量定义符等。这些符号可以被看作shell的保留字,通常称为“元字符”。元字符的种类和作用非常多,它们无论在shell的命令行输入还是在shell程序设计中都起着非常重要的作用。

shell 命令行本身也是一个交互式的脚本执行环境,也就是说,在命令行上同样可以使用脚本中的控制语句,也可以定义变量(实际上就是环境变量),甚至可以定义函数。这都与脚本文件中的命令一样。但是有一点必须注意,shell程序有许多种,不同的shell有不同的编程命令和语法。虽然它们基本上大同小异,但还是有许多差别。

未完待续。。。

更多知识传送:

计算机操作系统–基础知识
计算机操作系统–进程管理
计算机操作系统–存储管理
计算机操作系统–设备管理
计算机操作系统–文件管理
计算机操作系统–作业管理
计算机操作系统–网络操作系统和嵌入式操作系统

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

以上内容整理参考《软件设计师教程(第5版)》和《软件设计师考试同步辅导(第四版)》(忘记是哪个老师的了,侵删)。本文章内容旨在帮助更多想要进军软考,给自己镀金的小伙伴。有兴趣的小伙伴可以共勉。

计算机操作系统--UNIX操作系统相关推荐

  1. Unix操作系统背后的女程序员Lorinda Cherry去世,享年78岁

    作者 | 丁广辉       责编 | 张红月 出品 | CSDN(ID:CSDNnews) Unix是一个强大的多用户,多进程,支持多种处理器架构的操作系统,按照操作系统的分类,属于分时操作系统.它 ...

  2. 计算机四级操作系统原理知识汇总,2015年全国计算机四级《操作系统原理》考试内容...

    2015年全国计算机四级<操作系统原理>考试内容 一.操作系统概述 1.操作系统基本概念.特征.分类 2.操作系统主要功能 3.操作系统发展演化过程,典型操作系统 4.操作系统结构设计,典 ...

  3. 计算机四级考试操作系统单元题,计算机四级考试操作系统单选练习

    计算机四级考试操作系统单选练习 关于基础,我们不能不巩固好,只有底子好,才能获得高分.下面是小编为大家搜集整理出来的有关于计算机四级考试操作系统单选练习,希望可以帮助到大家! 操作系统单选题 1下列选 ...

  4. FreeBSD是一种UNIX操作系统

    FreeBSD是一种UNIX操作系统,是由经过BSD.386BSD和4.4BSD发展而来的Unix的一个重要分支.FreeBSD 为不同架构的计算机系统提供了不同程度的支持. 目录 简介 许可协议 发 ...

  5. 计算机组成原理、操作系统、数据结构和计算机网络融会贯通

    原文地址: 原文个人主页:计算机组成原理.操作系统.数据结构和计算机网络融会贯通 计算机组成原理 这门学科告诉你什么是计算机. 首先,我们可以把计算机分解成最原始的部件--晶体管.晶体管是一种半导体材 ...

  6. 【转】操作系统Unix、Windows、Mac OS、Linux的故事

    电脑,计算机已经成为我们生活中必不可少的一部分.无论是大型的超级计算机,还是手机般小巧的终端设备,都跑着一个操作系统.正是这些操作系统,让那些硬件和芯片得意组合起来,让那些软件得以运行,让我们的世界在 ...

  7. 计算机中现代操作系统两个基本特征是什么,现代操作系统的两个基本特征是资源共享和...

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 现代操作系统的两个基本特征是资源共享和程序的并发执行. 操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系 ...

  8. 操作系统Unix、Windows、Mac OS、Linux的故事

    2019独角兽企业重金招聘Python工程师标准>>> 我们熟知的操作系统大概都是windows系列,近年来Apple的成功,让MacOS也逐渐走进普通用户.在服务器领域,恐怕Lin ...

  9. 什么是计算机的多用户,操作系统多用户是什么意思

    导语:如果1台电脑只能使用一个用户的话,就称之为单用户.更多精彩,请继续关注应届毕业生考试网. 一.什么是多用户? 当然想知道多用户操作系统的话,先了解什么是多用户,什么是单用户,这里还是以电脑系统为 ...

  10. Unix操作系统历史

    1.1965年前后,由贝尔实验室(Bell),麻省理工学院(MIT),通用电气公司(GE)共同发起了Multics的计划,其目的是想让大型主机可以达成提供300个以上终端联机使用的目标.不过到了196 ...

最新文章

  1. 因果作用推断、因果网络学习及其他
  2. yii2地址多级联动
  3. ASP.NET3.5 企业级项目开发 -- 第二章(续) 数据访问层(DAL)的开发解决方案提出...
  4. widedeep 在贝壳推荐场景的实践
  5. C# 8.0的三个令人兴奋的新特性 1
  6. CSS3实战开发: 纯CSS实现图片过滤分类显示特效
  7. 思科交换机端口模式配置 端口安全配置 思科模拟器
  8. IIS 7无法写入配置文件C:\Windows\System32\inetsrv\config\applicationHost.config
  9. STM32开发(14)----CubeMX配置ADC
  10. 华为Mate40Pro和华为Mate40Pro+ 哪个好
  11. 源自神话的写作要义之英雄
  12. C#隐藏tabcontrol
  13. C++ + ubuntu 调用boost 的一个问题
  14. Windows Media Player Network Sharing Service 启动失败
  15. uniapp接入支付宝支付详细申请流程2021.6.1
  16. 通过IPV6上QQ及自建IPV6代理的方法
  17. AE-预览的时候出现FPS非实时-解决办法
  18. 如何修改springboot通过maven下载的jar包源码
  19. V 神呼4123吁宽大处理1234123发者 Virgil Griffith 被判入狱 63 个月阿萨德按时
  20. 未来智能,触摸未来 ---记2016华为开发者大赛沙龙上海站

热门文章

  1. 关于加密与解密、签名与验签
  2. [HNOI2003]多边形
  3. mongodb索引 多健索引
  4. Path.Combine 合并两个路径字符串,会出现的问题
  5. mdf和ldf是什么文件
  6. 安装无线网卡后,显示网络电缆被拔出?
  7. 【C语言】04-函数
  8. python 生成器_彻底理解 Python 生成器
  9. java 操作日志记录_高效日志系统搭建秘技!架构师必读
  10. Debugging a Create React App with VS Code