计算机操作系统(一) 什么是操作系统

计算机操作系统(一) 什么是操作系统

  • 前言
  • 一、什么是操作系统
  • 二、操作系统的作用
  • 三、推动操作系统发展的主要动力
  • 总结(核心概念速记):


前言

  • 当你打开电脑、点击应用、播放音乐时,是谁在背后默默协调这一切?
  • 没错,就是操作系统
  • 从这节博客开始,我们将详细讲解计算机操作系统,了解它底层的相关知识

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343


在这里插入图片描述

一、什么是操作系统

  • 操作系统(Operating System,简称 OS)是计算机的底层软件,是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。它是一组控制和管理计算机硬件和软件资源、合理地组织计算机工作流程以及方便用户使用的程序的集合。
    在这里插入图片描述

  • 从用户的角度看,操作系统提供了用户与计算机之间的接口。用户通过操作系统来使用计算机系统,而无需了解计算机硬件的细节。比如,普通用户可以通过图形化界面(GUI),如 Windows 操作系统的桌面,方便地进行文件管理、应用程序的启动等操作;而专业用户或开发者则可以通过命令行界面(CLI),如 Linux 系统的终端,更高效地执行各种系统管理和开发任务。

  • 从系统的角度看,操作系统是计算机系统资源的管理者。它负责管理计算机的四大类资源:处理机(CPU)、存储器、I/O 设备以及信息(数据和程序)。通过合理地分配和调度这些资源,使得计算机系统能够高效、稳定地运行。
    在这里插入图片描述

二、操作系统的作用

  1. 作为用户与计算机硬件系统之间的接口:操作系统提供了方便易用的接口,使得用户能够轻松地使用计算机。除了前面提到的图形化界面和命令行界面外,操作系统还支持各种输入设备(如键盘、鼠标、触摸屏等)和输出设备(如显示器、打印机等),让用户可以与计算机进行交互。例如,当我们在 Windows 系统中使用鼠标点击图标打开应用程序时,操作系统会接收鼠标的点击事件,并执行相应的操作来启动应用程序
  2. 作为计算机系统资源的管理者
    • 处理机管理:负责对 CPU 的时间进行分配和调度,使得多个程序能够并发执行。常见的调度算法有先来先服务(FCFS)、短作业优先(SJF)、时间片轮转等。例如,在多任务操作系统中,多个程序同时运行,操作系统会根据一定的算法为每个程序分配 CPU 时间片,使得每个程序都能得到执行的机会。
    • 存储器管理:管理内存的分配和回收,将内存空间合理地分配给各个程序使用,并保证程序之间的内存不会相互干扰。同时,还负责虚拟内存的管理,当物理内存不足时,将部分数据从内存换出到外存(如硬盘)上,以满足程序的运行需求。
    • 设备管理:负责管理计算机的各种 I/O 设备,如硬盘、打印机、网卡等。通过设备驱动程序,操作系统能够控制设备的工作,实现设备的输入输出操作,并对设备进行分配和回收。
    • 文件管理:对计算机中的文件和目录进行管理,包括文件的创建、删除、修改、查询等操作。操作系统提供了文件系统,使得用户可以方便地对文件进行组织和管理,同时保证文件的安全性和一致性。
  3. 实现了对计算机资源的抽象操作系统隐藏了硬件的具体细节,向用户提供了抽象的资源和服务。例如,用户在使用文件时,不需要了解文件在硬盘上的具体存储位置和方式,只需要通过操作系统提供的文件操作接口(如打开、读取、写入等函数)来操作文件即可。这种抽象使得用户能够更方便地使用计算机资源,同时也提高了系统的可扩展性和兼容性。

三、推动操作系统发展的主要动力

在这里插入图片描述

  1. 不断提高计算机资源利用率的需要:早期的计算机硬件资源昂贵,为了充分利用有限的资源,操作系统应运而生。随着计算机技术的发展,硬件性能不断提升,但资源的利用率仍然是一个重要的问题。例如,通过多道程序设计技术,操作系统可以让多个程序同时在内存中运行,共享 CPU 和其他资源,从而提高系统的资源利用率。
  2. 方便用户使用的需要:计算机的用户群体不断扩大,从专业的计算机人员逐渐扩展到普通用户。为了满足不同用户的需求,操作系统需要提供更加方便、易用的界面和功能。例如,图形化用户界面(GUI)的出现,使得计算机的操作更加直观和简单,大大降低了用户的使用门槛。
  3. 器件的不断更新换代计算机硬件的不断发展,如 CPU 性能的提升、内存容量的增加、存储设备的更新等,推动了操作系统的发展。新的硬件需要新的操作系统来充分发挥其性能,同时操作系统也需要不断地优化和改进,以适应硬件的变化。例如,随着多核 CPU 的出现,操作系统需要支持多核心的调度和管理,以提高系统的性能。
  4. 计算机体系结构的不断发展:计算机体系结构的变化,如分布式系统、并行系统、嵌入式系统等的出现,对操作系统提出了新的要求。不同的体系结构需要不同的操作系统来管理和协调资源,因此推动了操作系统的多样化和专业化发展。例如,分布式操作系统需要管理多个计算机节点之间的资源和通信,以实现分布式计算的功能。

总之,操作系统作为计算机系统的核心软件,在计算机的发展和应用中起着至关重要的作用。了解操作系统的基本概念、作用和发展动力,对于深入学习计算机系统和进行相关的开发和应用具有重要的意义。

总结(核心概念速记):

核心概念速记
操作系统 = 计算机系统的核心底层软件,协调软硬件资源

  • 基本概念
    • 操作系统是配置在计算机硬件上的第一层软件,是对硬件的首次扩充。它是控制和管理计算机软硬件资源、组织工作流程、方便用户使用的程序集合。
    • 从用户角度,提供图形化界面(GUI)如Windows桌面和命令行界面(CLI)如Linux终端,作为用户与计算机的接口,隐藏硬件细节。
    • 从系统角度,是计算机系统资源(处理机、存储器、I/O设备、信息)的管理者。
  • 操作系统的作用
    • 用户与硬件接口:支持各类输入输出设备,实现用户与计算机交互,如Windows中鼠标点击图标启动应用程序。
    • 资源管理
      • 处理机管理:分配和调度CPU时间,常见算法有FCFS、SJF、时间片轮转等,使多程序并发执行。
      • 存储器管理:管理内存分配回收,处理虚拟内存,保证程序内存不干扰。
      • 设备管理:通过设备驱动程序控制I/O设备,进行设备分配回收。
      • 文件管理:管理文件和目录,提供文件系统,保障文件安全和一致。
    • 资源抽象:隐藏硬件细节,提供抽象资源和服务,如用户通过文件操作接口使用文件,无需了解存储细节。
  • 发展动力
    • 提高资源利用率:早期因硬件资源昂贵而生,多道程序设计技术可提升资源利用率。
    • 方便用户使用:用户群体扩大,GUI降低使用门槛。
    • 器件更新换代:硬件性能提升(CPU、内存、存储设备等),促使操作系统优化适应。
    • 体系结构发展:分布式、并行、嵌入式等系统出现,要求操作系统多样化、专业化,如分布式操作系统管理节点资源和通信。

操作系统关键概念对比

概念定义描述示例作用
操作系统底层软件,软硬件资源管理者Windows、Linux系统协调系统资源,方便用户使用
图形化界面直观的用户操作界面Windows桌面方便普通用户操作计算机
命令行界面以命令形式操作的界面Linux终端适合专业用户高效管理开发
处理机管理分配调度CPU时间时间片轮转调度算法使多程序并发执行,提高CPU利用率
存储器管理管理内存分配回收和虚拟内存物理内存不足时数据换出到硬盘合理分配内存,保障程序运行
设备管理控制管理I/O设备硬盘、打印机的驱动和操作实现设备输入输出,分配回收设备
文件管理管理文件和目录文件的创建、删除、修改操作组织管理文件,保障文件安全一致

操作系统作用与发展动力关系图解

操作系统作用 —— 用户接口、资源管理、资源抽象↓         ↓
发展动力 —— 提高资源利用率、方便用户、器件更新、体系结构发展↓         ↓
相互促进 —— 作用推动动力需求,动力促进作用完善

知识图谱

计算机操作系统(一) 什么是操作系统
├─ 什么是操作系统
│  ├─ 基本定义:底层软件,硬件首次扩充,程序集合
│  ├─ 用户角度:提供GUI和CLI接口
│  ├─ 系统角度:管理四大类资源
│  └─ 示例:Windows、Linux系统体现方式
├─ 操作系统的作用
│  ├─ 用户与硬件接口:支持设备交互
│  ├─ 资源管理:处理机、存储器、设备、文件管理
│  ├─ 资源抽象:隐藏硬件细节提供接口
│  └─ 示例:文件操作接口的使用
├─ 推动操作系统发展的主要动力
│  ├─ 提高资源利用率:多道程序设计技术
│  ├─ 方便用户使用:GUI的出现
│  ├─ 器件更新换代:CPU、内存等硬件发展
│  ├─ 体系结构发展:分布式等系统对系统的要求
│  └─ 示例:多核CPU下操作系统的调度管理
└─ 核心要点├─ 操作系统的概念、作用及重要性└─ 理解发展动力对操作系统演变的影响

以上就是对本次关于操作系统博客内容的总结,后续我们将深入探讨操作系统更多知识。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343

非常感谢您的阅读,喜欢的话记得三连哦

在这里插入图片描述

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

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

相关文章

韦伯望远镜的拉格朗日点计算推导过程,包含MATLAB和python运动轨迹仿真代码

研究过程 起源与提出:1687 年牛顿提出 “三体问题”,旨在研究三个可视为质点的天体在相互之间万有引力作用下的运动规律,但因运动方程过于复杂,难以得到完全解。欧拉的贡献1:1767 年,瑞士数学家莱昂哈德・…

Gateway:网关路由与登录鉴权

在微服务架构中,用户登录和身份校验的处理方式确实与单体应用有所不同。在单体架构中,一旦用户通过身份验证,其会话信息可以在整个应用范围内共享,所有模块都能访问到用户信息。然而,在微服务架构下,每个服…

【结构光相机的精度极限】

1. 光源波长((\lambda)) 光源波长是决定结构光相机精度极限的核心因素之一。根据光学衍射极限理论,光的波长越短,能够分辨的细节越小,精度越高。 理论依据: 根据瑞利判据(Rayleigh Criterion&…

Vision Transformer (ViT):将Transformer带入计算机视觉的革命性尝试(代码实现)

Vision Transformer (ViT):将Transformer带入计算机视觉的革命性尝试 作为一名深度学习研究者,如果你对自然语言处理(NLP)领域的Transformer架构了如指掌,那么你一定不会对它在序列建模中的强大能力感到陌生。然而&am…

【实战ES】实战 Elasticsearch:快速上手与深度实践-8.1.1基于ES的语义搜索(BERT嵌入向量)

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 基于Elasticsearch与BERT的语义搜索架构设计与实战1. 传统搜索的局限性与语义搜索的崛起1.1 关键词搜索 vs 语义搜索1.2 Elasticsearch向量检索演进历程关键版本特性对比 2.…

linux 学习笔记

# Linux学习笔记 ## 1 Linux入门 ### 1.1 概述 Linux内核最初只是芬兰人在赫尔辛基大学上学时处于个人爱好而编写的。 Linux是一套免费使用和自 由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的U…

Python个人学习笔记(14):函数(匿名函数、内置函数(下)、三元表达式)

九、匿名函数 lambda表达式 语法规则&#xff1a; 变量 lambda 参数1,参数2,…:返回值 例&#xff1a;用lambda简化下述操作 def func(a,b):return ab ret func(1, 2) print(ret)代码&#xff1a; fn lambda a,b:ab print(fn) print(fn(12,13))结果&#xff1a; <fun…

dns劫持是什么?常见的劫持类型有哪些?如何预防?

DNS劫持的定义 DNS劫持&#xff08;Domain Name System Hijacking&#xff09;是一种网络攻击手段&#xff0c;攻击者通过篡改域名解析的过程&#xff0c;将用户对某个域名的访问请求重定向到错误或恶意的IP地址。这种攻击可能导致用户访问到钓鱼网站、恶意广告页面&#xff0…

prompt大师高效提示词解析

Prompt大师李继刚高效提示词示例解析 一、「汉语新解」提示词 核心结构 采用Lisp语言框架嵌套中文语义&#xff0c;通过(defun 新汉语老师 ()...)定义角色风格&#xff08;融合奥斯卡王尔德、鲁迅的批判性语言&#xff09;&#xff0c;用(隐喻 (一针见血...))构建解释逻辑链。…

基于 Vue 的Deepseek流式加载对话Demo

目录 引言组件概述核心组件与功能实现1. 消息显示组件&#xff08;Message.vue&#xff09;2. 输入组件&#xff08;Input.vue&#xff09;3. 流式请求处理&#xff08;useDeepseek.ts&#xff09;4. 语音处理模块&#xff08;Voice.vue&#xff09; 总结Demo Github 地址 引言…

RK3588 编译 openssl

在编译 OpenSSL 时,你需要确保你的系统环境已经配置好了所有必要的依赖和编译工具。下面是一般步骤和一些常见问题的解决方案,特别是在使用 RK3588 这类的 ARM 处理器上。 1. 安装依赖 首先,你需要安装编译 OpenSSL 所需的依赖。这通常包括编译器(如 GCC)、make 工具、Per…

常见JVM命令

1. java -XX:PrintCommandLineFlags HelloGC 作用&#xff1a;打印 JVM 启动时的命令行参数&#xff0c;包括用户显式设置的参数和 JVM 自动默认设置的参数。用于确认 JVM 实际使用的配置。 2. java -Xmn10M -Xms40M -Xmx60M -XX:PrintCommandLineFlags -XX:PrintGC -XX:Prin…

easy-poi导出and导入一对多数据excel

easy-poi导出and导入一对多数据excel 一、导入jar包 <!-- easy-poi --><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-spring-boot-starter</artifactId><version>4.4.0</version></dependency> 二…

c#如何直接获取json中的某个值

在 C# 中直接获取 JSON 中的某个值,通常可以通过以下方法实现(以 Newtonsoft.Json 和 .NET 内置的 System.Text.Json 为例): 方法 1:使用 System.Text.Json(.NET 内置库) using System.Text.Json;// 示例 JSON 字符串 string json = @"{""name"&qu…

WPS二次开发系列:Android 第三方应用如何获取WPS端内文档

1.需求场景 在项目开发中碰到这种情况&#xff0c;我们需要利用WPS的文档管理能力&#xff0c;比如需要调用WPS的文件选择器&#xff0c;来选择文档&#xff0c;同时需要得到WPS选择的文档结果返回给我们的应用。之前在网上找到了很久都没有找到WPS移动端有相关的API接口文档和…

Pytesseract识别图片

1. Pytesseract识别图片原理 1.1 Tesseract引擎工作原理 Tesseract OCR 引擎是一个功能强大的开源文字识别工具&#xff0c;其工作原理可以分为以下几个关键步骤&#xff1a; 图像预处理&#xff1a;Tesseract 首先对输入的图像进行预处理&#xff0c;包括灰度化、二值化、去…

Flutter 基础组件 Text 详解

目录 1. 引言 2. 基本使用 3. 自定义样式 4. 文本对齐与溢出控制 5. 外边距 5.1 使用 Container 包裹 5.2 使用 Padding 组件 5.3 在 Row/Column 中使用 5.4 动态边距调整 5.5 关键区别说明 5.6 设置 margin 无效 6. 结论 相关推荐 1. 引言 Text 组件是 Flutter 中…

Acknowledgment.nack方法重试消费kafka消息异常

文章目录 问题示例异常 原因nack方法Acknowledgment接口实现类&#xff1a;ConsumerAcknowledgment实现类&#xff1a;ConsumerBatchAcknowledgment 解决方案1 批量消费指定index示例 2 单条消费示例 问题 使用BatchAcknowledgingMessageListener 批量消费Kafka消息&#xff0…

Java 反序列化 - commons collection 之困(一)

#01多余的碎碎念 说到 java 反序列化&#xff0c;去搜索的话能看到网上有很多分析关于 commons collection 利用链的文章&#xff0c;emm 我一开始看不懂&#xff0c;看到很多代码的图头晕。 这篇文章的话其实是我跟着 p 神的文章一路走下来的&#xff0c;所以整个逻辑会按照…