1:操作系统导论
1.1操作系统的定义
•Anoperatingsystemactsanintermediarybetweenuserofacomputerandthecomputer
hardware.
◦ 操作系统充当计算机⽤⼾和计算机硬件之间的中介
•Thepurposeofanoperatingsystemistoprovideanenvironmentinwhichausercanexecute
programsinaconvenientandefficientmanner.
◦ 操作系统的⽬的是提供⼀个⽤⼾可以⽅便和有效地执⾏程序的环境
•Anoperatingsystemissoftwarethatmanagesthecomputerhardware.
◦ 操作系统是管理计算机硬件的软件
计算机操作系统的架构
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kJ7Hn8A9-1686280981234)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230608215931680.png)]](https://img-blog.csdnimg.cn/0f6b6589871442049be26d3c4a5cc820.png)
1.2硬盘内部结构
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jDHxfv9h-1686280981235)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230608215946527.png)]](https://img-blog.csdnimg.cn/cb8ce1c45a10415ba956f5cbe45e530e.png)
磁头如何读写盘⽚数据?
•磁臂移动到指定的圈道
•等待要访问的数据点旋转到磁头下发
•读写操作:
◦ 读:将从磁盘上读到的磁性转化0或1
◦ 写:将0或1转化成相应的磁性写⼊磁盘
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CVYjj4Ra-1686280981235)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230608220009378.png)]](https://img-blog.csdnimg.cn/57497765cad24d368763887867f5e711.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bV1qiXaX-1686280981236)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230608220018701.png)]](https://img-blog.csdnimg.cn/681bf5d5f31f4b70a3b96c9460e048e0.png)
主引导扇区(BootSector)
•硬盘的0柱⾯、0磁头、1扇区称为主引导扇区,在这扇区⾥存放着⼀段代码:主引导记录MBR(MainBootRecord),它⽤于硬盘启动时将系统控制权转给⽤⼾指定的、在分区表中登记了某个操作系统分区
•MBR的内容是在硬盘分区时由分区软件写⼊该扇区的,MBR不属于任何⼀个操作系统,不随操作系统的不同⽽不同,即使不同,MBR也不会夹带操作系统的性质,具有公共引导的特性 Bootstrapofcomputer
•打开电源
•CPU将控制权交给BIOS(基本输⼊输出系统,存放在CMOS中)
•BIOS运⾏⼀个程序:通电⾃测试程序
•BIOS确认所有外部设备:硬盘或扩充卡
•BIOS找到磁盘的引导区,将其中的主引导程序bootloader装⼊内存。(主引导程序时⼀段代码,它可以将OS余下部分装⼊内存)
•引导操作系统结束,操作系统接管计算机
•操作系统等待事件发⽣…
1.3中断
•当有事件(Event)发⽣时,CPU会收到⼀个中断(Interrupt)信号,可以是硬中断也可以是软中
断
•CPU会停下正在做的事,转⽽执⾏中断处理程序,执⾏完毕会回到之前被中断的地⽅继续执⾏
•OperatingSystemisanInterruptdrivensystem
◦ 操作系统是⼀个由中断驱动的系统
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qXFVQx2h-1686280981236)(D:/%E4%BD%A0%E5%A5%BDJava/1337.png)]](https://img-blog.csdnimg.cn/e58649cda1464272852228adcc3fb2a4.png)
1.4存储系统
•CPU负责将指令(Instruction)从内存(Memory)读⼊,所以程序必须在内存中才能运⾏
•内存以字节为存储单位,每个字节都有⼀个地址与之对应。通过load/store指令即可访问地址的内
存数据
◦ load:将内存输⼊读⼊到寄存器
◦ store:将寄存器数据写⼊到内存
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-idqhtpFm-1686280981236)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230608220344786.png)]](https://img-blog.csdnimg.cn/8a66bf7be6b049e59c19c0ade99025c0.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BdpdbPFH-1686280981236)(D:/%E4%BD%A0%E5%A5%BDJava/1338.png)]](https://img-blog.csdnimg.cn/472011112ac64d19b9710f606f3a223c.png)
IO设备 设备的控制器 设备驱动程序 IO子系统 计算机cpu
我新买一个IO设备,要安装这个设备的驱动程序,这样IO子系统才会通过驱动程序,来操作IO设备。
1.5处理器系统
单处理器系统:
•Single-processSystem
•只有⼀颗注CPU,执⾏通⽤指令集
•带有其他专⽤处理器,为特定设备服务,如:磁盘、键盘、图形控制器等
注意其他专用的CPU是指:比如会专门有一个监听键盘操作的CPU,当你操作键盘的时候,这个CPU会处理你的键入信息。并不会让主CPU来处理,主CPU主要是干应用程序里的工作。
◦ 它们能够执⾏的指令有限,不处理⽤⼾进程
◦ 操作系统会向它们发出任务,并监控它们的状态
多处理器系统:
•Multiprocessor/MulticoreSystem
•有两个或多个紧密通信的CPU,它们共享计算机总线、时钟、内存和外设等

非对称处理:虽然有多个CPU但是其中有一个主要的CPU,当处理的任务很复杂的时候,就交给主要的CPU处理。
对称处理:每个CPU性能都差不多。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JfDnfnXc-1686280981237)(C:/Users/86159/AppData/Roaming/Typora/typora-user-images/image-20230609102738152.png)]](https://img-blog.csdnimg.cn/3bbd0bf18ffd4de4b0a80a16fdbf64ee.png)
集群系统:
•ClusteredSystem
•该系统由若⼲节点(Node)通过⽹络连接在⼀起,每个节点可为单处理器系统或多处理器系统,
节点之间是松耦合(looselycoupled)关系
◦ ⾼可⽤性(highavailability)
每个节点之间的关系是松耦合关系:即两个计算机之间的关系并不是非常的紧密,其中一个宕机了,并不会影响另一个,其他计算机仍然可以继续完成宕机计算机的任务。
◦ ⾼性能计算(high-performancecomputing)
1.6:操作系统结构
单道单⽤⼾模式
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-02eYNQz6-1686280981237)(D:/%E4%BD%A0%E5%A5%BDJava/1340.png)]](https://img-blog.csdnimg.cn/e14d5fdb863143fcad795accc5cbf700.png)
多道程序设计
•操作系统最重要的⼀点是具有多道程序能⼒
•单道程序不能让CPU和IO设备始终忙碌,多道程序设计通过安排任务使⽤的CPU总有⼀个执⾏任
务,从⽽提⾼CPU利⽤率
•实现的硬件保证:处理器和IO设备具备并⾏⼯作的能⼒
分时系统
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cml4ah49-1686280981237)(D:/%E4%BD%A0%E5%A5%BDJava/1341.png)]](https://img-blog.csdnimg.cn/b9f29855e9784f3cb4ff95bf9a338e73.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q5tO0IWI-1686280981237)(D:/%E4%BD%A0%E5%A5%BDJava/1342.png)]](https://img-blog.csdnimg.cn/82d3e60fd9db453ea285479b941f13d5.png)
小结:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tSncyEBJ-1686280981238)(D:/%E4%BD%A0%E5%A5%BDJava/1343.png)]](https://img-blog.csdnimg.cn/9dbb944c1242414d83660a78497508be.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lcnKtbNE-1686280981238)(D:/%E4%BD%A0%E5%A5%BDJava/1340.png4.png)]](https://img-blog.csdnimg.cn/f96df9d16ec84c64a7fbb15b8a01ab07.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bKE8WPvu-1686280981239)(D:/%E4%BD%A0%E5%A5%BDJava/1344.png)]](https://img-blog.csdnimg.cn/940c41f35fcb4e34a9e1a62b0897b659.png)
为什么只有将任务放到内存上才会被执行。
在计算机系统中,任务的执行需要通过将其加载到内存中进行操作。这是因为内存(RAM)是计算机中用于存储和执行程序的主要组件之一。
当你启动一个程序或执行一个任务时,操作系统会将程序的相关代码和数据从存储设备(如硬盘)加载到内存中。内存的特点是读写速度快,可以快速访问和处理数据,因此将任务加载到内存中可以提供更高的执行效率。
另外,CPU(中央处理器)是执行计算机指令的核心部件,它从内存中读取指令并执行相应的操作。如果任务未加载到内存中,CPU 就无法访问和执行相关的指令和数据。因此,将任务放到内存上是为了确保CPU可以正确地执行任务。
此外,内存还提供了多个程序之间共享数据的机制。多个任务可以同时加载到内存中,并通过共享内存中的数据进行通信和交互。
总而言之,将任务放到内存上执行是为了实现快速访问和处理数据、确保CPU可以执行相关指令,并提供多任务间的数据共享机制。
相关文章:
1:操作系统导论
1.1操作系统的定义 •Anoperatingsystemactsanintermediarybetweenuserofacomputerandthecomputer hardware. ◦ 操作系统充当计算机⽤⼾和计算机硬件之间的中介 •Thepurposeofanoperatingsystemistoprovideanenvironmentinwhichausercanexecute programsinaconvenientandeff…...
什么是微软的 Application Framework?
我是荔园微风,作为一名在IT界整整25年的老兵,今天来看一下什么是微软的 Application Framework? 到底什么是 Application Framework? 还没有真正掌握任何一套Application Framework的使用之前,就来研究这个真的不是很…...
一个关于宏定义的问题,我和ChatGPT、NewBing、Google Bard、文心一言 居然全军覆没?
文章目录 一、问题重述二、AI 解题2.1 ChatGPT2.2 NewBing2.3 Google Bard2.4 文心一言2.5 小结 一、问题重述 今天在问答模块回答了一道问题,要睡觉的时候,又去看了一眼,发现回答错了。 问题描述:下面的z的值是多少。 #define…...
【服务器数据恢复】断电导致RAID无法找到存储设备的数据恢复案例
服务器数据恢复环境: HP EVA存储,6块SAS硬盘组建的raid5磁盘阵列。上层操作系统是WINDOWS SERVER。该存储为公司内部文件服务器使用。 服务器故障&分析: 在遭遇两次意外断电后,设备重启时raid提示“无法找到存储设备”。管理员…...
Windows上不可或缺的5款宝藏软件,工作效率拉满!
职场小白与大牛的区别:小白需要耗费大半天琢磨的事情,而大牛可以只花5分钟就能处理。 “牛人”,即拥有过人之处,专业、经验、技术等等,学会灵活运用高效率的工具也是关键的一点。工具找得好,运用得快&#…...
链表内指定区间反转
题目: 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转,要求时间复杂度 O(n),空间复杂度 O(1)。 例如: 给出的链表为 1→2→3→4→5→NULL,m2,n4 返回 1→4→3→2→5→NULL 数据范围ÿ…...
Vue中如何进行地图展示与交互(如百度地图、高德地图)?
Vue中如何进行地图展示与交互 随着移动互联网的普及,地图应用已经成为人们生活中不可或缺的一部分。在Vue.js中,我们可以使用第三方地图库(如百度地图、高德地图)来实现地图的展示和交互。本文将介绍如何在Vue.js中使用百度地图和…...
uni-app组件概述
1、组件 1.1、组件的含义 组件是视图层的基本组成单元。 组件是一个单独且可复用的功能模块的封装。 组件,包括:以组件名称为标记的开始标签和结束标签、组件内容、组件属性、组件属性值。 <component-name>是开始标签,</compon…...
什么是防火墙?它有什么作用?
作者:Insist-- 个人主页:insist--个人主页 作者会持续更新网络知识和python基础知识,期待你的关注 目录 一、什么是防火墙 二、防火墙的分类 1、软件防火墙 2、硬件防火墙 三、防火墙的作用 1、防止病毒 2、防止访问不安全内容 3、阻…...
基础工程(cubeide串口调试,printf实现,延时函数)
0.基础工程(cubeide串口调试,printf实现,延时函数) 文章目录 0.基础工程(cubeide串口调试,printf实现,延时函数)外部时钟源CLOCK(RCC)系统时钟SYS与DEBUG设置UART串口设置cubeide设置…...
大厂设计师都在用的9个灵感工具
每一件伟大的设计作品都离不开设计师灵感的爆发。设计师有很多灵感来源,比如精美的摄影图片、酷炫的网站设计、APP的特色功能、友好的用户体验动画,或者一篇文章。 设计师每天都需要收集灵感,把灵感收集当成日常生活。在这篇文章中ÿ…...
安全实现SpringBoot配置文件自动加解密
需求背景 应用程序开发的时候,往往会存在一些敏感的配置属性 数据库账号、密码第三方服务账号密码内置加密密码其他的敏感配置 对于安全性要求比较高的公司,往往不允许敏感配置以明文的方式出现。 通常做法是对这些敏感配置进行加密,然后在…...
数据结构--队列2--双端队列--java双端队列
介绍 双端队列,和前面学的队列和栈的区别在于双端队列2端都可以进行增删,其他2个都是只能一端可以增/删。 实现 链表 因为2端都需要可以操作所以我们使用双向链表 我们也需要一共头节点 所以节点设置 static class Node<E>{E value;Node<E…...
网络安全:信息收集专总结【社会工程学】
前言 俗话说“渗透的本质也就是信息收集”,信息收集的深度,直接关系到渗透测试的成败,打好信息收集这一基础可以让测试者选择合适和准确的渗透测试攻击方式,缩短渗透测试的时间。 一、思维导图 二、GoogleHacking 1、介绍 利用…...
Linux 命令总结
基本操作 Linux关机,重启 # 关机 shutdown -h now# 重启 shutdown -r now 查看系统,CPU信息 # 查看系统内核信息 uname -a# 查看系统内核版本 cat /proc/version# 查看当前用户环境变量 envcat /proc/cpuinfo# 查看有几个逻辑cpu, 包括cpu型号 cat /proc/cpuinfo | grep na…...
使用腾讯手游助手作为开发测试模拟器的方案---以及部分问题的解决方案
此文主要介绍使用第三方模拟器(这里使用腾讯手游助手)作为开发工具,此模拟器分为两个引擎,一个与其他模拟器一样基于virtualbox的标准引擎,不过优化不太好,一个是他们主推的aow引擎,此引擎。关于aow没有太多的技术资料…...
牛客网论坛最具争议的Linux内核成神笔记,GitHub已下载量已过百万
原文地址:牛客网论坛最具争议的Linux内核成神笔记,GitHub已下载量已过百万 1、前言 Linux内核是一个操作系统(OS)内核,本质上定义为类Unix。它用于不同的操作系统,主要是以不同的Linux发行版的形式。Linu…...
docker如何容器迁移(实战)
手把手教你如何做容器迁移 第一步准备数据 假设要迁移一个 mysql 服务(docker部署),由于数据库过大(超过50 GB),用mysqldump备份和还原则太过耗时,下面尝试拷贝目录的方式来迁移,详…...
Android kotlin序列化之Parcelable详解与使用(二)
一、介绍 注解序列化篇:Android kotlin序列化之Parcelize详解与使用_蜗牛、Z的博客-CSDN博客 通过上一篇注解序列化,我们已了解的kotlin的序列化比Java复杂了很多。而且有好多问题,注解虽好,但是存在一些问题。 一般在大型商业…...
C++ 类设计的实践与理解
前言 C代码提供了足够的灵活性,因此对于大部分工程师来说都很难把握。本文介绍了写好C代码需要遵循的最佳实践方法,并在最后提供了一个工具可以帮助我们分析C代码的健壮度。 1. 尽可能尝试使用新的C标准 到2023年,C已经走过了40多个年头。新…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
