计算机系统的层次结构 用户 应用程序 操作系统 纯硬件:CPU、RAM、ROM 其中,操作系统: 从操作系统层往两侧看:负责管理协调硬件、软件等计算机资源的工作 从上往下看:为上层的应用程序和用户提供简单易用的服务...从下往上看:操作系统系统软件,而不是硬件 定义 Operating System是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境...他是计算机系统中最基本的系统软件。 操作系统的功能和目标 作为系统资源的管理者(从操作系统层向两侧看) 进程 是一个程序的执行过程。...例如在terminal下输入指令,可以得到反馈,这就是交互的体现,而这些指令是可以直接被用户所使用的 程序接口 例如在windows操作系统下,常见.dll文件。...、独木舟,而无需关系这些东西在底层是如何组织起来工作的 换言之,操作系统对硬件机器的拓展,实际上就是操作系统对硬件进行调用,封装得到直接对硬件进行调用的功能给用户 发布者:全栈程序员栈长,转载请注明出处
在我这几天没有听计算机操作系统的课程之前,我一直对微内核这个概念懵懵懂懂(这里说明一下,我自身是非科班出身的,大学里面就没有接触过这个计算机操作系统的课程,也就学了考计算机二级的基础知识,读者不要笑话我...,对于我来说,这确实是真的);我记得上次去参加物联网大会,有介绍增,但我还是没听明白这个微内核是啥,直到这几天,听了这个计算机操作系统的课,我才明白了(下面文章里面我会写出宏内核与微内核的区别);好了,...什么是操作系统 - 定义 - 操作系统,英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核心。...是处于用户与计算机系统硬件之间用于传递信息的系统程序软件。例如:操作系统会在接收到用户输入的信息后,将其传给计算机系统硬件核心进行处理,然后再把计算机系统硬件的处理结果返回给使用者。...总结 今天主要是简单的介绍了一下计算机操作系统,后面将更加详细的介绍操作系统里面的其它内容!
运行于计算机之上的这一切都只是程序。这些程序经过指定的步骤,从高级到低级,从人类可以理解到无法识别,最终转换为计算机可以识别的指令。 ?...编程语言与操作系统 我们编写的所有的源代码,最终都要转换成计算机系统可以识别的内容,而计算机系统包括硬件以及运行其上的系统软件。...我们所有的编码,都是面向指定的语法,而这门语言本身,则是面向操作系统的,因为外部软件通常是不能直接操纵硬件资源,需要借助于操作系统。...不管是进程还是线程,都是操作系统对于程序执行的抽象描述,是相关数据:寄存器状态、堆栈值等所有相关数据的集合。 ?...通过进程的相关信息的维护管理,操作系统保障多道程序可以顺利的切换执行;进程之间的是怎么进行交互的呢?通过TCP/IP的端口来实现。这就是RPC,微服务框架等等的实现了。 ?
一、操作系统概述 计算机系统由硬件系统和软件系统两大部分组成。操作系统(英语:Operating System,缩写:OS)是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石。...计算机系统层次结构 二、操作系统发展 无操作系统阶段: 从第一台计算机诞生(1945年)到20世纪50年代中期的计算机,属于第一代计算机。...这时还未出现OS,计算机操作是由用户(即程序员)采用人工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机...虚拟 操作系统中的所谓“虚拟”(Virtual),是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的,即实际存在的,而后者是虚的,仅是用户感觉上的东西。...---- 《操作系统——维基百科》 《计算机操作系统 第三版》 《深入理解计算机系统》 《现代操作系统 第四版》 https://www.ibm.com/developerworks/cn/linux/
,计算机设计中是如何解决这个悖论的呢?...BIOS 中断 既然我们已经知道了计算机启动的上述过程,我们能不能编写自己的启动程序呢?答案当然是肯定的。...启动你自制的操作系统 你可以将刚刚生成 ISO 或者 IMG 文件刻录到 U 盘、光盘或是软盘上,然后放入计算机,重启,在 BIOS 中设置从该设备启动,就可以看到屏幕上显示出了闪闪的“Hello World...是不是从未想过制作一个自己的操作系统是如此简单?...很遗憾,这还完全不能称得上是一个操作系统,但我们已经顺利让 BIOS 从我们的初始扇区启动了,并且显示出了激动人心的 Hello World,接下来的事情还有什么难的呢?
作者 | 陌无崖 转载请联系授权 导语 相信大家都知道金鱼是不知道饥饿的,如果有食物吃,金鱼就会不停的填饱肚子,哪怕被撑死。在计算机中锁的进化可以用金鱼生存的例子来引入。...当然这样的做法在现实生活中可以实行,但是如果切换到计算机操作系统时,可能就会出错了。...在计算机中,线程是可以任意穿插的,因此对于金鱼问题,当线程切换到左一,左一检查鱼的状态时,发现鱼没有被喂,此时线程切换到右尔,右尔也检查鱼的状态,此时鱼没有被喂,因此成功喂了鱼,这时线程又切换到左一,左一现在的状态就是喂鱼...看起来这样的方法是可以的,但是在计算机中导致了什么问题呢?...这样就不会导致一个线程执行速度慢,导致其他线程出现一直等待的情况。 于是左一和右尔每天开心的喂着鱼,虽然还会有等待的时间,但是这个等待时间是可以容忍的。 本文参考书籍《计算机操作系统之哲学原理》
前言 本章将会讲解计算机的操作系统。 一.操作系统 马路修起来需要人车通过才有价值,计算机硬件组成后需要操作系统才能体现价值。...1.操作系统简介 操作系统(Operating System,OS)就好比一个计算机内部的管理者,是管理和控制计算机硬件与软件资源的计算机程序,直接运行在“裸机”上的最基本的系统软件,任何其他应用软件都必须在操作系统的支持下才能运行...,操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。...(3)程序控制 一个程序的执行是在操作系统控制下进行的,一个用户将某问题用某编程语言编写了一个程序 后就将该程序连同对它执行的要求输入计算机,操作系统就根据要求控制这个程序的执行。...对于安全性而言,现在的计算机病毒大部分是针对Windows 操作系统的。
OS引论 OS定义 是一组控制和管理计算机硬件和软件资源,合理对各类作业进行调度,以及方便用户使用的程序集合。 OS目标 (1)有效性:提高系统资源利用率;降低作业周转时间,增加系统吞吐量。...(4)I/O设备 (5)数据信息 2.抽象计算机资源:例如在I/O设备覆盖一层软件,用软件接口(read/write)隐藏硬件接口。...0开始的,程序中的其它地址是相对于起始地址计算的。...设备控制器是计算机中的一个实体。它是CPU与I/O设备之间的接口。它接受从CPU发出来的命令,并去控制I/O设备工作。在一个设备控制器上,可以连接一个或多个设备。...目的是使原来由CPU处理的I/O任务转由通道来承担。 总线 在计算机系统中的各部件之间的联系都是通过总线来实现的。例如PCI总线。
同时,还有一点非常关键的是,将CPU硬件逻辑设计为加电瞬间强行将CS的值置为0xF000、IP的值置为0xFFF0,这样CS:IP就指向0xFFFF0这个地址位置。 ?...IP/EIP(Instruction Pointer):指令指针寄存器,存在于CPU中,记录将要执行的指令在代码段内的偏移地址,和CS组合即为将要执行的指令的内存地址。...小贴士 CS(Code Segment Register):代码段寄存器,存在于CPU中,指向CPU当前执行代码在内存中的区域(定义了存放代码的存储器的起始地址)。...注意,这是一个纯硬件完成的动作!如果此时这个位置没有可执行代码,那么就什么也不用说了,计算机就此死机。反之,如果这个位置有可执行代码,计算机将从这里的代码开始,沿着后续程序一直执行下去。...BIOS程序的入口地址恰恰就是0xFFFF0 ! 也就是说,BIOS程序的第一条指令就设计在这个位置。 ?
我们对于操作系统很难进行一个精确的定义。但是一般来说,操作系统是运行在裸机之上的,它为上层应用软件的运行提供了环境。同时,操作系统一般来说总是运行在内核态的。...其中一种观点是:“操作系统给上层应用软件提供了一种抽象,将硬件给隐藏了起来(对于上层应用软件的设计者而言,并不关心底层的硬件。),给上层应用软件提供一个抽象的接口”。这种观点是自顶向下的。...另外一种观点是自底向上的,它将操作系统看做是管理计算机这个复杂系统的。从这个观点来看,操作的功能是合理的对硬件资源进行分配(包括CPU,磁盘,内存等)。
计算机操作系统学习笔记 | 操作系统特征 1.并发性 并发是指多个事件在同一时间段内发生,并且这多个事件会互相影响。 而我们常说的并行在操作系统内的意思是多个程序是独立的,互不产生影响。...正如并发和并行的名字,并发主要想着重描述的是出发,并发就是同时出发。而并行主要想着重描述的是运行,并行也就是同时运行。 而操作系统之所以有进程、线程和我最喜欢的协程,就是为了让程序能够并发执行。...2.共享性 共享就是多个并发进程能够共享有限的计算机资源。 在操作系统中存在着两种共享方式。 一种是互斥共享,而另一种是同时共享。...而同时共享指的就是一段时间内允许多个进程访问同时共享的资源。 3.虚拟性 虚拟性指的就是在操作系统中,一个物理实体可以变成多个逻辑实体。 主要有两种技术:时分复用技术 以及 空分复用技术。...地址空间的页被映射到物理内存,地址空间的页并不需要全部在物理内存中,当使用到一个没有在物理内存的页时,执行页面置换算法,将该页置换到内存中。
大二计算机操作系统课程笔记 计算机操作系统 第一章 操作系统引论 操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。...1.1.3 推动操作系统发展的主要动力 不断提高计算机资源利用率和系统性能 方便用户 器件的不断更新换代 计算机体系结构的不断发展 不断提出新的应用需求 1.2 操作系统的发展过程 1.2.1 未配置操作系统的计算机系统...一, 人工操作方式: 计算机的工作特点 用户独占全机 (用户是程序元,计算机专业人员) (编程语言是机器语言) (输入/输出:纸带或卡片) CPU等待人工操作:严重降低计算机资源的利用率,...(6)用户与系统的接口问题 操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进调度,以及方便用户使用的程序集合 单道与多道的区别: 1.2.4 分时系统 分时系统的引入,用户需求具体表现在...(2)在各种计算机操作系统上,按网络体系结构协议标准开发的软件 (3)包括网络管理、通信、安全、资源共享和各种网络应用 (4)目标:是相互通信及资源共享 分布式操作系统: 1)特征: (
什么是语言 ---- 语言是一个事物与另一个事物沟通的介质 什么是编程语言 ---- 编程语言是程序员与计算机沟通的介质 所有的计算机内部使用的都是二进制,不过大多数的人都是不擅长使用这种语言,我们需要一种更简便的方法来告诉计算机要做什么...利用计算机编程语言,我们可以先用一种自己理解的方式写程序,然后再把它翻译成二进制提供给计算机使用 什么是编程 ---- 编程是程序员按照某种编程语言的语法规范将自己想要计算机做的事情表达出来,表达的结果就是程序...)+ 平均延迟时间(转半圈的时间)= 一次IO时间 7200转/分种的硬盘来说,一次IO的时间大概:5MS + 4MS = 9MS 操作系统 ⭐️⭐️⭐️⭐️ ---- 操作系统的本质是一个软件,该软件的功能是专门用来帮助我们控制硬件的一个控制程序...操作系统位于计算机硬件与软件之间,用于协调,管理,控制计算机硬件资源与软件管理 操作系统的两大功能: 1.将复杂的硬件操作封装成简单的功能提供给用户/应用程序使用 2.将多个任务对硬件的竞争变得有序...一个完整的计算机系统应该分为三部分: 应用软件:通过操作系统来间接控制硬件的 操作系统 计算机硬件
这时候,操作系统开始登上舞台。而启动盘第一个扇区的代码就是下面这块代码。这段代码主要作用是加载其他代码。加载完后,跳到被加载代码的地方继续执行。下面我们分析这个过程。 ! !...该信息是bois读取软盘的时得到的,然后判断软盘的类型 mov bx,sectors /* 软盘的主设备号是2,次设备号是type * 4 + n (n = 0-3)...1.2mb的软盘type是2,1.44mb的软盘type是7, 对比bios读取的信息和1.2、1.44软盘的信息,是否一样。...,磁头号加一,track是轨道的意思,即磁道 inc track /* 记录准备读的磁头号, 如果是跳转过来的,说明ax是1,即读取一号磁头,已读取扇区是0,即ax清0,...但有个前提是,读取完数据后, bx的大小是小于等于64kb的,所以走到这里说明是等于64kb。
建了一个用户交流群,我在群里说:“Windows 是最安全的操作系统。” 立刻引发了很多有意思的观点。我在群里一个人说不过大家,先篇文章把自己的论点罗列一下。...对操作系统攻击的方式 有5类基本的攻击方式: 1、 系统口令攻击:猜测攻击、字典攻击、穷举攻击、混合攻击、直接破译攻击、网络嗅探、键盘记录、中间人攻击、社会工程学 2、 SMB/NetBIOS协议攻击:...问题是首先要考虑,如果自己的应用边界应用,并且是很多黑客觊觎的产品的一部分,安全是第一重要的,应该尽量选用无已经被发现漏洞的高级版本。因为像 Equifax 被攻击这种事情,30年也就发生一次。...第二,不要在不需要的情况下开启软件的高级特性,增加引入漏洞的几率。 总结 近年来,由于操作系统本身的问题引起的漏洞要少了上面运行的软件的漏洞。...而 Windows 操作系统由于拥有更多的用户量,配套的软件也更多更全,很多都很难从官方渠道免费使用,使得携带病毒的软件有可乘之机。
平台是物联网产业链生态的重要组成部分,并且是一个快速增长的市场,预计到2023年将超过220亿美元。物联网平台为企业提供了巨大的价值,使其能够降低开发成本,加快启动并简化流程。...近年来,物联网操作系统(IoTOS)作为一个新的概念被频繁提起,相对于平台更加具象化,不那么宽泛,也触达了物联网的本质,即操作系统。...内置操作系统的电脑或手机更像是一个硬件产品,边界清晰。...这里要区分一个通常误解的概念,“物联网操作系统”确实有像华为鸿蒙、rtThread这类主打面向嵌入式硬件产品的OS,严格意义上这类可以叫“物联网设备操作系统”。...至此,这就是继物联网平台之后,下一代的3D物联网操作系统平台。
对于计算机来说,什么是那个不变的宗呢? 计算机模型 从物理角度看,晶体管的电容只有两种状态:开和关;从光传输的规律看,电压只有高低两种电压。这对应了数字世界的0和1(量子计算除外)。...计算机通电的过程很像宇宙大爆炸,接下来就是比特之旅。比特在旅途过程,从磁盘->总线->内存->CPU,不停的移动。...冯-诺伊曼体系 比如,从组成计算机的金字塔来看,该体系到现在也是稳定的,不管是PC还是移动还是正在发生的物联网架构。计算机的核心部件还是这么几样东西:运算器、存储器、控制器,输入输出设备。...编译原理 如果你要了解各种计算机语言的底层原理,那么对语法分析,词法分析,语义分析,正则表达式,有限状态机的知识点是绕不开的话题,所以说编译原理其实也没有怎么变化过。...代表计算机世界的思维方式,更切确的说应该是数学思维,是对万事万物进行数字建模后的一种面向产业和应用的计算,所以数感、数学思维是计算机学习的内功,虽然当下并不明显。
的一个抽象 将一个CPU变换成多个虚拟的CPU 系统资源以进程为单位分配,如内存、文件等,操作系统为每个独立的进程分配了独立的地址空间 操作系统将CPU调度给需要的进程,即将CPU的控制权交给某个进程就称为调度...进程表的大小往往固定,这也决定了一个操作系统最多支持多少个进程,有时我们称为系统支持的并发度1.4.1 PCB中需要保存的信息 1、进程描述信息 进程标识符(process id),这个标识是唯一的,通常是一个整数...5.4 进程的地址空间 操作系统为每个进程分配了一个地址空间。...(计算机科学)")或模块 "模块 (程序设计)"))形成的多个工作线程 "工作 (信息学)")互斥访问共享资源。...六、死锁检测与解除 死锁检测 允许死锁发生,但是操作系统会不断监视系统进展情况,判断死锁是否真的发生。一旦死锁发生则采取专门的措施,解除死锁并以最小的代价恢复操作系统运行。
从打开电源到开始操作,计算机的启动是一个非常复杂的过程。 我一直搞不清楚,这个过程到底是怎么回事,只看见屏幕快速滚动各种提示...... 这几天,我查了一些资料,试图搞懂它。下面就是我整理的笔记。...最早的时候,工程师们用它来比喻,计算机启动是一个很矛盾的过程:必须先运行程序,然后计算机才能启动,但是计算机不启动就无法运行程序!...2.1 主引导记录的结构 "主引导记录"只有512个字节,放不了太多东西。它的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。..."卷引导记录"的主要作用是,告诉计算机,操作系统在这个分区里的位置。然后,计算机就会加载操作系统了。 3.2 情况B:扩展分区和逻辑分区 随着硬盘越来越大,四个主分区已经不够了,需要更多的分区。...Linux环境中,目前最流行的启动管理器是Grub。 四、第四阶段:操作系统 控制权转交给操作系统后,操作系统的内核首先被载入内存。 以Linux系统为例,先载入/boot目录下面的kernel。
一、存储系统 在计算机系统中存储层次可分为,处理器上的寄存器、高速缓冲存储器、主存储器(内存)、辅助存储器(外存)四级。高速缓冲存储器用来改善主存储器与中央处理器的速度匹配问题。...挂起状态:把一个进程从内存移到外存中 激活状态:从外存移动到内存 状态转换 举个栗子:CPU是个好姑娘(唔,花魁吧,是这个叫法吧),进了内存(chun楼)的都是进程(为了花魁而来的文人才子),那就不管你是在哪儿...然后,如果有多个花魁,那就是多道操作系统了。...进程控制 创建、撤销、完成,通过原语完成 fork()的使用 fork是在父进程下开一个子进程的函数。执行一次,返回两个结果,一个是父进程返回的子进程的PID 也就是子进程的代号。...还有一个是子进程返回的0 fork()后的代码是两个进程共有的,会执行两次后面的代码。结果返回一个child:x=2 parent:x=0 © 著作权归作者所有
领取专属 10元无门槛券
手把手带您无忧上云