当前位置: 首页 > article >正文

【Linux】深刻理解操作系统的管理

文章目录

  • 1.操作系统的概念(是什么)
  • 2.为什么要有OS(为什么)
  • 3.OS是如何管理的(怎么办)
  • 4.OS上层怎么用OS

在这里插入图片描述

1.操作系统的概念(是什么)

操作系统本质是:进行软硬件资源管理的一款软件

操作系统包括:

  • 内核
    • 进程管理(例如启动/关闭一个程序,需要os管理该程序的进程)
    • 内存管理(例如程序运行很多,系统变卡。关闭某些程序后,腾出来内存)
    • 文件管理(例如拍一张照片,它将被存储在哪里)
    • 驱动管理(例如打开/关闭摄像头、麦克风、网卡)
  • 其它程序(例如函数库,shell程序等)

举个栗子:在一座豪宅当中,操作系统就像是豪宅的管家,普通用户相当于豪宅的主人。用户需要什么,只需要吩咐管家即可。因此操作系统就是大家买回去的电脑中预先安装的一个管家,它的工作就是管理电脑。

2.为什么要有OS(为什么)

普通人又不懂内存、CPU、磁盘、外设等,因此操作系统就是为了降低用户使用的成本。

下图是计算机软硬件的体系结构图
在这里插入图片描述
操作系统存在的价值:以人为本!

  • 对下管理好软硬件资源,保证所有的资源是稳定、高效、安全的,能进行良好的工作(手段)
  • 对上给用户提供一个稳定、高效、安全的运行环境(目的)

3.OS是如何管理的(怎么办)

下面所描述的都是操作系统进行管理的“顶层上”的理解。

举个栗子:

  • 在学校中,学生就好比底层硬件,校长好比操作系统,校长管理学生。
    但校长管理好一堆学生,不一定和学生见面!
  • 那校长是如何做到的呢?
    我们要知道管理的本质:其实是对数据的管理(校长分析你的成绩、奖项、违纪等等,就可以管理学生)
  • 校长通过辅导员拿到学生的数据,即可管理学生。

在这里插入图片描述

但是当学生变得非常多的时候,校长就不好管理了。为了借助计算机来解决,可以设计一种结构,来描述学生的信息;但是独立的学生结构也不好管理,因此可以使用某种数据结构将所有的学生“串”起来,这样就方便计算机进行管理了。
在这里插入图片描述

那操作系统具体是如何管理硬件的呢?

  • 首先要获得硬件的各种数据(属性),然后将它们“串”起来
  • 对硬件的管理就变成了对数据结构的增删查改操作

在这里插入图片描述

因此,操作系统进行管理的方式为:先描述、再组织,所以操作系统中一定充满了大量的对象(拥有属性和方法)和数据结构。

4.OS上层怎么用OS

由于操作系统是不相信任何人的,所以它将自己封闭起来;但是它又要为上层提供服务,所以它必须为上层提供各种接口,这些接口就叫做系统调用(system call);
在这里插入图片描述
但是使用系统调用接口需要对系统有一定的了解,对一般的人来说,使用起来依旧很麻烦。所以系统调用接口被二次封装成了标准库(lib)、指令、图形化界面等供用户使用

至此,操作系统的管理就完整了。

在这里插入图片描述


http://www.kler.cn/a/304373.html

相关文章:

  • 1.系统学习-线性回归
  • 振动分析-46-设备振动监测和故障诊断能力提升需要理解和掌握的知识体系
  • openwrt 负载均衡方法 openwrt负载均衡本地源接口
  • 如何在谷歌浏览器中进行网络速度测试
  • sentinel学习笔记6-限流降级(上)
  • Mac Android studio 升级LadyBug 版本,所产生的bug
  • 若依plus- cloud RuoYiGatewayApplication :8080/(ruoyi-gateway)启动不了,报错!
  • 鸿蒙 - 判断手机号、身份证(正则表达式)
  • CMake构建学习笔记16-使用VS进行CMake项目的开发
  • 计算机组成原理(第二次笔记)
  • PHP高效协同无缝对接一站式生产管理系统小程序源码
  • 深入理解指针(二)
  • vue3里根据配置信息显示el-button的问题
  • iOS中的链表 - 单向链表
  • 多核DSP(6000系列)设计与调试技巧培训
  • 【案例70】invalid secrity token(null)
  • 【SpringBoot】调度和执行定时任务--DelayQueue (附demo)
  • STM32——看门狗通俗解析
  • 【Linux网络】详解TCP协议(1)
  • C++特性--动态内存和智能指针
  • 工作睡觉监测识别摄像机
  • fly专享
  • 【三】TDengine 3.3.2 生产级别集群搭建
  • 【互联网的低潮期】
  • 相亲交友中的用户画像构建方法探讨
  • 【拥抱AI】使用Conda的一些常见命令