【系统架构设计师】第一章:操作系统(1.1.1—1.1.2)操作系统的分类和结构

【系统架构设计师】第一章:操作系统(1.1.1—1.1.2)操作系统的分类和结构好久不见了。最近由于忙着期末考试,所以一直没更新帖子,最近考完了,我又回来了。很久不动笔了,突然很手痒,但是又一直在纠结写什么。原计划要写kali的从零开始的教程,不过仔细想想其实那个并没有系统架构师的专注力大,因为这个是我的一个目前的目标。你们知道的,我今年大二,下个学期会特别忙,有七八场ctf和awd,线上线下的都有,这就意味着我基本整个学期的一半都要在外地跑。更别说还有实习,招警考试…想想就头疼。不过好在我学计算机还是比较有天赋的,所以专业课反而是最轻松的一个。但是,我的想法不仅仅只是课程.

大家好,又见面了,我是你们的朋友全栈君。

好久不见了。最近由于忙着期末考试,所以一直没更新帖子,最近考完了,我又回来了。
很久不动笔了,突然很手痒,但是又一直在纠结写什么。
原计划要写kali的从零开始的教程,不过仔细想想其实那个并没有系统架构师的专注力大,因为这个是我的一个目前的目标。
你们知道的,我今年大二,下个学期会特别忙,有七八场ctf和awd,线上线下的都有,这就意味着我基本整个学期的一半都要在外地跑。
更别说还有实习,招警考试…想想就头疼。
不过好在我学计算机还是比较有天赋的,所以专业课反而是最轻松的一个。但是,我的想法不仅仅只是课程,而是希望能在大学期间将系统架构师的资格证考下来。
当然,我其实对这软考的了解也不多,不过我大概翻了翻系统架构师的目录,发现里面的内容基本四分之三都是我以前琢磨过的,所以就直接选了这个。
(后来问了人才知道,这个貌似是软考高级里面最难的一个…)
不多说了,直接上菜了。

参考教材:
《系统架构设计师考试全程指导(第二版)》
《系统架构设计师教程》

1.1 操作系统的类型和结构

1.1.1 操作系统的类型

1> 概念

  • 操作系统是计算机系统中的核心系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效的利用资源,在计算机与用户之间起接口的作用。

我觉得这一段都能理解吧?其实我也不想这么啰嗦,但是就怕概念这么考。
先说说接口吧。这个就类似于我们的接口函数,比如你有嘴,能干啥呢?能吃饭,喝水,不管干什么,都要经过你的嘴,不管喝的是什么,都要用嘴来喝。接口,就是起的这样的作用,不管送过来啥都照收不误,都按照预定的动作处理。
所以我们就很容易理解这些概念了,什么是操作系统呢?就是能让你正常使用软件的东西。你点击一下屏幕,都是操作系统在帮你传递点击的信息。再傻的人都知道windows和ios是完全不同的,对吧?

2> 操作系统的分类

懒得打字了。直接看图吧。
在这里插入图片描述

我开始还奇怪的很,我怎么没见过什么批处理操作系统,什么通用操作系统?我之间见过windows,linux啥的,这些是怎么回事?
其实理论上来说,我们所熟知的操作系统都是操作系统的名称,而不是分类。由于在早期技术还不是很发达的时候,很多东西都是一点一点发展来的,那时候没有这么多漂亮的软件和界面,只有一堆堆的黑框框,甚至最早的计算机都是晶体管组成的。
后来随着技术的发展,比如某天,原本系统只能一次打开一个文档,结果有人突然发明了一种新的算法,一次可以打开10个文档。着对于当时的技术来说是一种突破,因此就将这种分类保留了下来。
比如我们现在的windows系统:
在这里插入图片描述
再比如说linux:
在这里插入图片描述
可能随着时间的流逝,操作系统的种类就会更多。我们无需纠结于此,记住就好。
其实也是非常好记忆的,比如:

分时操作系统:这个就是特点名的名。如果学过计算机网络基础的同学可能会眼熟,在我们计算机网络基础里面关于带宽的使用就用到了时分复用,原理也是差不多的。

实时操作系统:这个也很好记,对吧?其实就是讲的一个实时性,也就是随时随地都紧密相连,能够即时相应和较高的可靠性。

剩下的我就不一一举例了。还是那句话,名称都是按照特点进行命名的。
需要注意的是,不管是以上的哪种系统,都要有五个功能。这一点我会在后面说明。

1.1.2 操作系统的结构

不知道是我没理解还是咋的,搜到的每篇帖子居然都和书上的内容不一样。最后没办法,只能一个一个的找了。
引用链接:
https://blog.csdn.net/CHS007chs/article/details/77678827
https://blog.csdn.net/jiangxps/article/details/9329139
https://wenku.baidu.com/view/f270efa70622192e453610661ed9ad51f01d54b6.html
https://jingyan.baidu.com/article/6b1823096c1af8ba58e1593f.html
https://blog.csdn.net/weixin_33699280/article/details/81198752

  • 1.无序结构
    先来个官方的解释。
    在这里插入图片描述
    看不懂吧?我找了个比较好懂的说法。
    在这里插入图片描述
    (无序结构又称为模块组合结构)
    啥意思呢?大概就是说,早期的操作系统用的类似于函数调用的方式进行处理任务的。比如,某个地方都用到了1+2,那么就可以把这个写成一个模块,专门用于计算1+2。数量少还行,但是一旦数量达到几万甚至几百万,那么系统就反应不过来了。

  • 2.层次结构
    官方说法
    在这里插入图片描述比较好的理解
    在这里插入图片描述
    是不是和OSI模型很像?每层只管每层自家的事情,不管其他人的事情。好处就是各管各的,出问题也只会在一个地方,不会同时出问题。

  • 3.面向对象结构
    官方
    在这里插入图片描述
    好理解

这个不知道为什么没有百度到。不过搜到了一个说的比较明白的。
在这里插入图片描述
可以看出,面向对象操作系统其实就是将面向对象的技术引入到了操作系统的开发中。这就像编程语言从c进步到cpp一样,系统更加安全可靠了。这个我认为可以将c类比成模块结构,cpp理解成面向对象结构从而进行理解。

  • 4.对称多处理结构
    官方说明
    在这里插入图片描述
    容易理解的版本

在这里插入图片描述
(以下是我个人理解,如果有不对的希望大神可以纠正)
其实百度的说的都很复杂。但是通俗的来讲,这种机制我认为强调的是一种共享。
非要我举个例子的话,我认为可以类比于c里面的指针。在我们操作指针和指针指向的变量时,会发现内存中的数都会产生变化,因为这两个公用的是同一块内存。
类比于上面,如果我们用两个cpu同时操作同一块内存,就可以认为是对称多处理结构。

  • 5.微内核技术

官方说明
在这里插入图片描述

个人理解
在这里插入图片描述
没什么好说的,其实就是把很多最小的功能做成一个类似于函数一样的东西,统称为内核。之后可以对其进行更改,便于移植。
比如我百度到的一个。
在这里插入图片描述

本篇内容主要介绍的是操作系统的一些分类与结构。后面几节会讲操作系统的五大功能。
下一节已更新。
【系统架构设计师】第一章:操作系统(1.2.1)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/154103.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Cannot resolve jdk.tools:jdk.tools:1.7

    Cannot resolve jdk.tools:jdk.tools:1.7

  • 数据库ER图该怎么画

    数据库ER图该怎么画什么是ER图实体关系图,通过一张ER图,能够快速的了解数据库层面的表结构设计。目前做企业级应用系统,花费了大量的时间在数据库表结构的设计上,所以打算从源头梳理一下怎么样才能画好ER图,画好图是第一步,在这个过程中怎么样做好设计,然后来保证业务系统的功能实现以及扩展性的要求。 ER图的核心要素是什么实体:客观存在并可以相互区别的事物属性:实体所具有的一个属性关系:实…

  • jsp out.print报错_idea代码错误但不提示

    jsp out.print报错_idea代码错误但不提示昨晚从网上copy一份代码到IDEA时,发现其中IDEA中的JSP文件在写入out.println时会报错,如图所示上网查阅资料发现有如下说法A、新建Java工程时,应选择JavaEnterprise而非Java里的webapplication(JavaEnterprise会自动关联Tomcat到Dependencies)B、应将Tomcat关联到File->ProjectStruct…

  • Makefile详解

    Makefile详解一、Makefile规则格式Makefile是由一系列的单一规则指令组合起来:目标XX1:依赖文件<TAB>命令1<TAB>命令2目标XX2:依赖文件<TAB>命令1<TAB>命令2……指令1:命令1命令2指令2:命令1命令2……示例:Tag:a….

  • linux中wq(linux a)

    LinuxESC:wq和:wq!的区别LinuxESC:wq和:wq!的区别发布者:IT人在线|发表时间:2018-12-417:20:43LinuxESC:wqesc(键退出)->:(符号输入)->wq(保存退出)wq(存盘并退出write%quite)即使文件没有被修改也强制写入,并更新文件的修改时间。:wq和:wq!的区别::wq(保存编辑操作退出)强…

  • 1123581321递归算法_线性递归数列例题

    1123581321递归算法_线性递归数列例题[BZOJ3231][Sdoi2008]递归数列题目大意给定Ci,i∈[1,k]给定C_i,i\in[1,k]定义若i>k,Ai=Ai−1∗C1+Ai−2∗C2+⋯+Ai−k∗Ck若i>k,A_i=A_{i-1}*C_1+A_{i-2}*C_2+\cdots+A_{i-k}*C_k否则Ai=Bi否则A_i=B_i询问sum(A)n−sum(A)m−1询问sum(A)_n-sum(A

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号