首页 > 其他分享 >我们为什么需要操作系统(Operating System)?

我们为什么需要操作系统(Operating System)?

时间:2024-04-16 20:01:20浏览次数:26  
标签:操作系统 虚拟化 计算资源 System 用户 Operating 体验 软件 OS

我们为什么需要操作系统(Operating System)?

  a) 从计算机体系的角度,OS向下统筹了所有硬件资源(1),向上为所有软件提供API调用(2),使得软件程序员不必知晓硬件的具体细节,实现了计算机体系的分层;

       b) 从资源管理的角度,OS对有限的计算资源进行分配(3),是软件按照“某种理想的状态序列”运行(4),以获得“性能与用户体验上的最优解”(5)。

 

       带来的一些问题:

              1> OS怎么统筹硬件资源?

      答:暂时不知道,但肯定具有统一的协议.

              2> OS 与 OS之间怎么统一API,使得软件具有可移植性?

                     答:POSIX协议.

              3> 为什么要分配计算资源,而不是每个程序直接执行即可?

                     答:合理地分配计算资源,可以更高效地完成任务;

              3.1> 怎么分配计算资源?

                     答:首先要对计算资源进行虚拟化,其次是其次;

              3.2> 什么叫资源的虚拟化?

      答:就是将物理资源转换为更通用、更easy to use 的虚拟形式【建立抽象层】,这也是我们为什么要对资源进行虚拟化的原因。

              4/5> 什么叫软件的“理想的状态序列”?

      答:我们希望当很多软件按照这个“理想的状态序列”运行的时候,能够兼顾高性能与用户体验;

              4.1> 怎么得到“理想的状态序列”?

                     答:通过OS的进程调度算法(这是我接下来会鸽的话题);

              5> 什么叫高性能?什么叫用户体验?

      答:高性能定义为一些作业从开始到结束的平均时间,时间越短,性能越高(好学术啊),总之同样的作业,完成的越快性能越高嘛;用户体验的话,比如你开始一个作业,却因为前面有作业正在占用计算资源,你的作业迟迟得不到回应,你肯定很急,但不考虑用户体验的OS只告诉你先别急;

              5.1> 一定要兼顾么?不能只取其一么?

                     答:可以,具体看应用场景的需求。

 

  总结一下,操作系统的目的之一是:在所有资源受控的情况下,为一些用户提供提供高性能与高体验的服务。

 

// 爆肝更新cpu虚拟化部分中…

标签:操作系统,虚拟化,计算资源,System,用户,Operating,体验,软件,OS
From: https://www.cnblogs.com/hk416hasu/p/18139058

相关文章

  • C:\Windows\servicing\Packages 是一个存储 Windows 更新程序包的目录。Windows 操
    C:\Windows\servicing目录包含了与Windows维护和更新相关的文件和子目录。让我们逐个解释一下每个子目录和文件的作用:CbsApi.dll和CbsMsg.dll:这两个DLL文件是Windows组件基础服务(CBS)的一部分。CBS是Windows中用于安装、卸载、维护和更新组件的服务。这些D......
  • docker使用centos镜像创建的容器内使用systemctl重启sshd服务报错或者无法使用
    问题是这样的:如果镜像是ubuntu系统的,创建容器后使用systemctl启动sshd没有什么问题,但是如果镜像是centos,那就会报错failedtoconnecttobusnosuch原因:centos系统的的安全性较高,相比ubuntu一些底层无法映射到容器中,即使在创建容器时加上--security-optseccomp:unconfined --......
  • vbs获取操作系统及其版本号
    <h2>vbs获取操作系统及其版本号</h2>'**************************************'*byr05e'*操作系统及其版本号'**************************************strComputer="."SetobjWMIService=GetObject("winmgmt......
  • 在Windows操作系统中,runonce.exe是一个系统进程,用于执行在用户登录时只需执行一次的任
    在Windows操作系统中,runonce.exe是一个系统进程,用于执行在用户登录时只需执行一次的任务或命令。它主要通过注册表中的RunOnce键来实现这些任务的执行。为什么会存在runonce.exe?初始化任务:在用户登录时,有时需要执行一些初始化任务,例如设置默认值、创建用户配置等。这些......
  • 什么是 Sysprep: Sysprep 是 全称为 System Preparation Tool,用于准备计算机的硬盘镜像
    C:\Windows\System32\Sysprep是Windows操作系统中的一个重要文件夹,用于存放系统准备工具(Sysprep)及其相关文件。让我来解释一下:什么是Sysprep:Sysprep是Windows操作系统中的一个工具,全称为SystemPreparationTool,用于准备计算机的硬盘镜像以进行系统部署。它能够将......
  • 搭建 Windows GPU 服务器需要考虑多个方面,包括硬件选择、操作系统安装、驱动程序安装
    搭建WindowsGPU服务器需要考虑多个方面,包括硬件选择、操作系统安装、驱动程序安装、软件配置等。以下是一个简单的指南,介绍了搭建WindowsGPU服务器的基本步骤:1.硬件选择选择适合您需求的硬件配置,包括GPU、CPU、内存和存储。GPU是关键的组件,应根据您的应用需求选择......
  • 操作系统是否支持ebpf特性检查
    内核版本信息uname-a操作系统信息cat/etc/os-release查看是否支持kprobe事件zcat/proc/config.gz|grepCONFIG_KPROBE_EVENTSorcat/boot/config-$(uname-r)|grepCONFIG_KPROBE_EVENTS查看是否配置为CONFIG_KPROBE_EVENTS=y查看是否支持uprobe事件zcat/proc/......
  • SystemVerilog -- 6.0 Interface
    SystemVerilogInterfaceWhatisanInterface?Interface是一种将信号封装到block中的方法。所有相关信号组合到一起形成一个接口块,以便可以将其重新用于其他项目。此外,与DUT和其它验证组件的连接也变的更加容易。interfaceExampleAPB总线协议信号被放在给定的接口中。......
  • NTLM(NT LAN Manager)是一种Windows操作系统中使用的身份验证协议,用于验证用户的身份以
     NTLM(NTLANManager)是一种Microsoft开发的身份验证协议,用于在Windows网络环境中进行用户身份验证和访问控制。它起源于Microsoft的早期操作系统,最初是作为WindowsNT的一部分而引入的。NTLM的发展可以追溯到1990年代初,当时Microsoft开始研发WindowsNT操......
  • Linux systemd 定时任务
    哈喽大家好,我是咸鱼。说到Linux定时任务,大家用得最多的就是crond服务,但其实systemd也有类似的功能。我们不但可以通过systemd来管理服务,还能设置定时任务,那就是systemdtimer。与crond相比,systemd定时任务具有以下优点:更高的精度:systemd定时任务可以精确到秒,而c......