type
status
slug
summary
tags
category
password
date
icon
notion image
notion image
notion image
 
notion image
  • 重要的笔记资源
  • 可以看的网课资源
 

Unit 0: 总览 | Overview

操作系统概述

什么是操作系统?
  1. 从其职能上来看
操作系统是一个资源管理系统
右图描述了计算机系统的抽象层级:自上而下,用户通过应用程序解决问题,应用程序向操作系统请求计算机资源;自下而上,计算机硬件为软件(包括 OS)提供了物质基础,本质上,硬件提供了计算机资源
操作系统作为中间层,向上为用户程序分配易用的资源,向下直接操作硬件资源。
操作系统还需要公平高效的解决资源分配之间的冲突的问题
 
notion image
 
具体来说,操作系统管理的资源有这些:① CPU,由于 CPU 的一个核(core)在特定时刻只能处理一件事,所以“CPU 能够为我所用”是一个非常重要的资源;② 内存,执行程序离不开内存,用户程序自然也需要占用一定的内存来解决问题;③ I/O 设备,打印机不能同时打印毛概历年卷和转专业申请表;
  1. 从其存在上来看
从其存在来看,操作系统本质上还是一个软件程序,是一个不停运行着的,用来执行用户程序的软件。这个角度的本质同时反应了操作系统最初存在的目的,为了提高计算机资源的利用效率,我们需要一个程序来自动化“让计算机完成一系列特定任务”这件事,而为了实现这个自动化,这个程序也需要成为计算机硬件的“代理人”,掌握硬件的所有资源,并且这个“代理人”还得想方法让自己好好“活着”。
操作系统中最中间最基础的部分是内核(kernel)
💡
The common functions of controlling and allocating resources are then brought together into one piece of software: the operating system.

操作系统的设计目标

首先,操作系统本身需要有较好的可靠性和安全性,也就是我们之前提到的,这个“代理人”要尽可能让自己好好“活着”。一方面它需要有良好的异常处理机制(通过中断机制实现),这个“代理人”需要有强健的体魄,不能一刮风它就病倒了;另一方面它需要有权限管理系统特权模式),以屏蔽来自用户程序的危险行为,用户可以向“柜台”索取抗生素,但是用户索取库房钥匙时,合格的“柜台”显然不能答应这个请求。
其次,操作系统需要有较好的易用性,它需要向用户提供简便的服务以请求系统资源,毕竟操作系统的目的之一就是方便用户使用系统资源——这意味着我们的“代理人”得是个好交流的人,而用户程序调用操作系统资源的途径是系统调用
当然,操作系统需要是高效的,从最早的批处理系统到现在的分时系统(操作系统的任务执行设计),CPU 的利用率在不断提升,周转时间也在不断缩短,如今的操作系统通过分时技术也实现了体感上的并行,提高效率的同时也提高了用户体验。
还有一点不容忽视的是操作系统的(一定程度上的)公平性,在进程管理这一章中我们会了解到,多进程语境下有大量的冲突问题需要解决,而我们在处理这些冲突问题的时候,可能会出现饥饿(starvation),而操作系统要做的就是避免饥饿的出现,就好像繁忙时段的电梯,我们不能因为二楼流量很大就不管三楼以上的人。

操作系统的整体设计

操作系统本身是软件,但是本身与硬件内容紧密相关。
notion image
 
科研经验分享Makefile
Loading...
fufu酱
fufu酱
一个爱折腾的大学生
公告
👋
欢迎 欢迎来到fufu酱的blog! 💞️我是22级浙江大学竺可桢学院计算机科学与技术专业的学生 一个爱折腾的大学生 🌱我会在这个网站上更新我的笔记和工具分享 🌈目前all in MLLM 📫你可以用下面的方式联系到我
🍀
今後ともよろしくお願いします