操作系统概述

操作系统概述

## 认识操作系统

不同角度看到的操作系统 : 整体看, 使用者, 操作系统者, 普通开发者

从程序执行看

操作系统是其它所有用户程序运行的基础

#include <stdio.h>int main()
{printf(“ Hello world\n”);
}  

该程序的执行过程 :

操作系统检查字符串的位置是否正确

操作系统找到字符串被送往的设备

操作系统将字符串送往输出设备窗口系统确定这是一个合法的操作,然后将字符串转换成像素

窗口系统将像素写入存储映像区

视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)

显示器发射电子束。你在屏幕上看到 Hello world

设计者角度看

操作系统的设计目标是:

尽可能地方便用户使用计算机, 让各种 软件资源硬件资源 高效而协调地运转起来

一个操作系统必须包含以下几部分:

操作系统接口, CPU管理, 内存管理, 设备管理, 文件管理

认识操作系统-定义

操作系统是计算机系统中的一个系统软件,是一些程序模块的集合——它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能高效、顺畅地运行。

## 操作系统的发展

操作系统的演变

单道批处理系统, 串行执行预先组织好的一组任务, 提高了系统效率 。

多道批处理系统, 可以交错运行多个程序, 再次提高系统效率。

分时系统, 将处理器的运行时间分成数片,均分或依照一定权重派发给系统中的用户使用, 快速响应

硬件角度:

年 代硬件特点领域背 景
第二代 50年代~60年代中期
晶体管算机
1)采用印刷电路
1)单道批处理系
1947
第三代计算机 60年代中期~70年 代初
集成电路计算机
2)稳 性 3)批 可 4)进定性与可靠 大 大 提 高 量生产成为 能 入实际应用统 )操作系统以监 督软件形式出现 )任务按顺序方 式处理
但数量有限
1)体 价 2)小 展 3)进积减小,性 迅 速 提 高 型计算机发 迅 速 入商业应用)涌现大批操作 系统 多道批处理系统 分时系统和实时 系统
4)尚不适合家庭 应用的需求2)奠定了现代操 作系统的基本框 架

软件角度 :

主流操作系统 主流操作系统系统特点 系统特点计 算 机 语 言 计 算 机 语 言背 景 背 景
无 类Unix系列 WINDOWS系列手工操作 人机交互成为 主题 1)可视化界面无编程语言直接 使用机器代码 面向对象语言成 为主流1936年图灵提 出图灵机 80 年 代 中 期 开 始 面 向 对 象 技 术逐步发展
单道批处理系作业运行的监 2)多媒体技编程语言雏形期1957 年
统 网络操作系统督程序 微内核技术兴ORTRAN语言开 发成功 1995 年 JAVA 推1)JAVA语言
多道批处理操作系统结构1)编程语言大量60年代的软件
分时系统 实时系统 多处理系统 嵌入式系统确立,分为处 理机管理、内 存管理、设备 管理、文件管 理等模块 单内核与微内 核竞争激烈涌现 2)结构化程序设 计 3)C语言逐渐 编程工具向跨平 台方向发危机导致软件 工程的发展 1969年 Unix诞 生 1972年 C语言 推出 1991年免费的 操作系统Linux 发布

分布式操作系统

2)脚本语言兴起

## 开放源代码的Unix/Linux操作系统

Linux内核

## Linux内核源代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/23428.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 35.5 + JetPack v5.1.3@ ego-planner编译安装

Linux 35.5 JetPack v5.1.3 ego-planner编译安装 1. 源由2. 编译&安装Step 1&#xff1a;依赖库安装Step 2&#xff1a;建立工程Step 3&#xff1a;编译工程Step 4&#xff1a;安装工程 3. 问题汇总3.1 planner/plan_env - OpenCV3.2 uav_simulator/local_sensing - CUDA优…

《Navi日语社》App:日语学习与翻译的智能助手,支持日文OCR识别提取文字,无需打字对着说话就能翻译的日语语音翻译工具!

在全球化的今天&#xff0c;掌握一门外语已经成为许多人的必备技能。尤其是日语&#xff0c;不仅在学术、商务领域有着广泛的应用&#xff0c;也是许多旅行者和动漫爱好者的心头好。《Navi日语社》App&#xff0c;作为一款专为日语学习者和翻译需求者设计的移动应用&#xff0c…

《解锁创意无限:Stable Diffusion 详细教程指南》

在当今数字艺术的浪潮中&#xff0c;Stable Diffusion 以其强大的功能和创新性成为了众多创作者的新宠。如果你还对它感到陌生&#xff0c;或者想要更深入地了解如何运用它来创造令人惊叹的艺术作品&#xff0c;那么这篇教程将是你的绝佳指南。 一、Stable Diffusion 简介 St…

Zookeeper复习

一、入门 1、概念 zookeeper文件系统通知机制 2.特点 1&#xff09;、一个领导者&#xff0c;多个跟随者组成的集群。 2&#xff09;、集群中只要有半数以上存活机制&#xff0c;zookeeper集群能正产服务。zk适合安装奇数台。 3&#xff09;、全局数据一致&#xff1a;每…

华为鸿蒙开发-鸿蒙基于ARKTS开发之启动模式

前言 鸿蒙生态取得爆发式增长&#xff01; 截至3月底&#xff0c;已有超4000个应用加入鸿蒙生态。 而在今年1月中旬&#xff0c;华为刚宣布HarmonyOS NEXT鸿蒙星河版面向开发者开放申请&#xff0c;这一版本鸿蒙系统也被称为“纯血鸿蒙”。 当时&#xff0c;华为宣布首批200…

2. QGis二次开发项目实践一之技术实现

前言 本文描述了QGis二次开发项目实践一的涉及到的技术点涉及到的QGis技术点如下 矢量图层加载显示矢量图层导出dxf矢量图层合并 代码描述 矢量图层加载显示 矢量图层加载显示在以前的教程中已有详细说明&#xff0c;请参考以下链接 5.1 加载矢量图层(ogr,gpx)5.2 加载矢量…

03-3.1.3 栈的链式存储的实现

&#x1f44b; Hi, I’m Beast Cheng&#x1f440; I’m interested in photography, hiking, landscape…&#x1f331; I’m currently learning python, javascript, kotlin…&#x1f4eb; How to reach me --> 458290771qq.com 喜欢《数据结构》部分笔记的小伙伴可以订…

【微服务】使用kubekey部署k8s多节点及kubesphere

kubesphere官方部署文档 https://github.com/kubesphere/kubesphere/blob/master/README_zh.md kubuctl命令文档 https://kubernetes.io/zh-cn/docs/reference/kubectl/ k8s资源类型 https://kubernetes.io/zh-cn/docs/reference/kubectl/#%E8%B5%84%E6%BA%90%E7%B1%BB%E5%9E…

python中的函数概念

一段可以被重复使用的代码。 关于函数的定义 defdefine &#xff08;定义&#xff09; def 函数名&#xff08;形参列表&#xff09;&#xff1a;形参列表中&#xff0c;可以有多个形参&#xff0c;多个形参之间使用逗号分隔&#xff0c; 关于函数的调用 &#xff08;开始完…

Transformer 论文重点

摘要 提出了一个 Transformer 模型&#xff0c;针对于一个机器翻译的小任务上表现结果比当时所有模型的效果都好&#xff0c;并且架构相比其它更加简单&#xff0c;后面就火到了发现什么方向都能用的地步。 介绍 循环神经网络&#xff0c;特别是长短时记忆[ 13 ]和门控循环[…

kafka-消费者-指定offset消费(SpringBoot整合Kafka)

文章目录 1、指定offset消费1.1、创建消费者监听器‘1.2、application.yml配置1.3、使用 Java代码 创建 主题 my_topic1 并建立3个分区并给每个分区建立3个副本1.4、创建生产者发送消息1.4.1、分区0中的数据 1.5、创建SpringBoot启动类1.6、屏蔽 kafka debug 日志 logback.xml1…

nginx动静分离和反向代理

一、动静分离 动静分离指的是将动态内容和静态内容分开处理。动态内容通常由后端应用程序生成&#xff0c;例如PHP、Python或Node.js&#xff0c;静态内容则包括图片、CSS、JavaScript等文件。 例子&#xff1a; #代理服务器一 server{listen 80;server_name www.dj.com;r…

夏季高温来袭|危化品如何安全储存?

《危险化学品安全管理条例》第三条 本条例所称危险化学品&#xff0c;是指具有毒害、腐蚀、爆炸、燃烧、助燃等性质&#xff0c;对人体、设施、环境具有危害的剧毒化学品和其他化学品。 随着夏天高温的来袭&#xff0c;炎热的天气对危化品储存威胁巨大&#xff0c;危化品事故也…

Mybatis-Plus的一些理解

MybatisPlus在Mybatis的基础上进行了增强&#xff0c;进一步简化了SQL的编写。对于普通的单表的CRUD&#xff0c;MyBatisPlus提过了相关接口进行快速操作。比如&#xff1a; insert(T entity): 插入一个实体&#xff0c;null的属性也会保存&#xff0c;不会使用数据库默认值。…

详解Selenium 强制等待、隐式等待和显式等待

在Selenium中使用等待机制&#xff1a;强制等待、隐式等待和显式等待 在自动化测试中&#xff0c;等待是一个非常重要的部分&#xff0c;因为它可以帮助确保测试脚本在执行操作前&#xff0c;页面元素已经加载完成或者变为可用。Selenium WebDriver 提供了多种等待机制&#x…

【C++课程学习】:C++入门(输入输出,缺省参数)

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;C课程学习 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 &#x1f369;1.关于C输入输出&#xff1a; &#x1f369;2.缺省参数函数&#xff1a; 缺省参数的概…

聊聊大模型微调训练全流程的思考

前言 参考现有的中文医疗模型&#xff1a;MedicalGPT、CareGPT等领域模型的训练流程&#xff0c;结合ChatGPT的训练流程&#xff0c;总结如下&#xff1a; 在预训练阶段&#xff0c;模型会从大量无标注文本数据集中学习领域/通用知识&#xff1b;其次使用{有监督微调}(SFT)优化…

python如何快速的判断一个key在json的第几层呢,并修改其value值

python如何快速的判断一个key在json的第几层呢&#xff0c;并修改其value值 def find_and_modify_key(json_obj, target_key, new_value, current_level1):# 检查当前层是否包含目标keyif target_key in json_obj:print(f"找到 {target_key} 在第 {current_level} 层。&q…

在 JavaScript 中,除了使用可选链操作符,还有哪些方法可以安全地访问对象的深层属性?

在JavaScript中&#xff0c;除了使用可选链操作符&#xff08;?.&#xff09;&#xff0c;还有几种方法可以安全地访问对象的深层属性&#xff0c;避免因访问不存在的属性而抛出错误。以下是一些常用的方法&#xff1a; 1. 条件&#xff08;三元&#xff09;运算符&#xff1…

以太网基础 -- LLDP使用案例

LLDP使用技术报告 背景 链路层发现协议&#xff08;Link Layer Discovery Protocol&#xff0c;LLDP&#xff09;是一种网络协议&#xff0c;主要用于在以太网网络中发现相邻设备并与其交换信息。LLDP是一种开放的标准&#xff0c;由IEEE 802.1AB定义&#xff0c;能够跨多个厂…