Loading

操作系统笔记-概述

操作系统概念

​ 操作系统是一款复杂的软件,它屏蔽了底层复杂的电路硬件,对上层提供了统一的抽象接口,使得应用程序可以更方便的使用硬件资源。

为什么要学操作系统

​ 学习操作系统可以提升我们开发复杂软件的能力,更可以帮助我们理清楚计算机运行规律,目前出现的大部分技术都离不开操作系统的支持,比如网络框架Netty、java NIO等,其本质都是通过底层操作系统的epoll、select等多路复用机制才得以实现的。因此掌握了操作系统的运行原理后,就可以以不变应万变,可以更快的理解将来新出现的技术,而且操作系统的发展是缓慢的,因此操作系统涉及的概念远远少于新出现的技术。

学习操作系统的前提知识

​ 因为操作系统是一款软件,因此至少需要使用一种编程语言,通常需要掌握一点汇编知识,C语言、C++语言的基础。还需要掌握部分算法的相关知识,如果能了解计算机组成原理与软件设计过程最好不过了。

​ 并不需要靠自己纯手写一个操作系统,只需要搞清楚它的核心代码运行流程,理解它的原理即可,如果感兴趣可以后续深入研究。

本课程主要讲解的知识

​ 物理内存管理、虚拟内存管理、进程管理、文件管理、IO管理

操作系统结构

​ 操作系统大致上分为CPU、内存、硬盘三部分,其中CPU速度最快、内存次之、硬盘最慢,因此程序都是存放在硬盘中,需要运行时读取到内存中,由CPU执行。

​ 操作系统分为内核与外壳,外壳就是常见的shell,内核就是kernel,本课程主要讲解内核的相关知识。

操作系统的发展历史

​ 第一个被发明的操作系统是unix,后来因为unix商业化导致了linux的出现,windows与unix和linux又是两个差距很大的操作系统,linux 是开源的,它的分支繁茂,包含了centos、unbentu等。

​ 未来的操作系统有可能向微内核、分布式内核等方向发展,可以同各种嵌入式设备进行交互。

posted @ 2021-03-01 22:35  luffysk  阅读(68)  评论(0)    收藏  举报