操作系统学习笔记 | 1. 操作系统概述
什么是操作系统
-
• 从用户角度来看:操作系统是一种控制软件
-
- • 管理应用程序
- • 为应用程序提供服务
- • 结束(杀死)应用程序
-
• 从系统内部角度来看:操作系统是一个资源分配器
-
- • 负责资源管理
- • 管理外设,分配计算机资源
操作系统站在管理者的角度,为应用程序和底层硬件提供管理和控制功能。
操作系统层次
操作系统将硬件资源抽象化,向应用程序提供统一的服务:
- • 将 CPU 资源抽象为进程
- • 将 磁盘 资源抽象为文件
- • 将 内存 资源抽象为地址空间
操作系统位于硬件之上、应用程序之下,为应用软件提供支持和服务。
操作系统作为软件,提供两类主要接口:
- • Shell(外壳):为外部应用程序提供交互界面,如 Linux 的命令行界面、Windows 的 GUI
- • Kernel(内核):负责计算机内部资源的管理(重点内容)
操作系统内部组件
- \1. CPU 调度器
- \2. 物理内存管理
- \3. 虚拟内存管理:为上层应用提供一个安全、连续且虚拟化的内存空间
- \4. 文件系统管理:在磁盘上抽象出便于访问的文件存储结构
- \5. 中断处理与设备驱动
重点关注:CPU 调度、内存管理、文件管理、I/O 管理
操作系统的特征
并发
允许多个程序同时运行,操作系统负责管理和调度 CPU。
- • 并发:一个时间段内多个程序可以运行
- • 并行:一个时间点上多个程序同时运行
共享
- • 同时共享:多个用户同时访问资源
- • 互斥共享:资源只能被一个用户独占使用
虚拟
通过程序设计技术,虚拟出一个每个用户独占计算机的环境。
异步
程序运行并非一贯到底,而是走走停停,向前推进的速度不可预测。但操作系统必须保证程序在相同环境下的运行结果一致。
学习操作系统面临的挑战
-
\1. 体系庞大
-
- • 代码量大,需聚焦核心内容学习
-
\2. 并发性
-
- • 并发带来复杂的编程挑战
-
\3. 硬件依赖性
-
- • 涉及时间依赖行为、非法行为、硬件故障
-
\4. 高效性要求
-
- • 必须尽可能低耗 CPU、内存和磁盘
-
\5. 可靠性需求
-
- • 操作系统出错会导致整机崩溃,需要高度稳定
-
\6. 安全性
-
- • 操作系统是系统安全的基础
-
\7. 知识更新
-
- • 技术发展迅速,需从更高的视角理解核心原理
操作系统的重点
权衡
- • 空间与时间
- • 性能与可预测性
- • 公平与性能
硬件管理与资源分配
- • 高效管理硬件资源
- • 合理分配资源
例如:硬盘速度远低于 CPU,需要操作系统合理协调处理。
总结
操作系统是介于硬件和应用程序之间的重要软件,其核心作用在于通过并发、共享、虚拟和异步等特性,实现对硬件资源的高效管理和抽象服务。学习操作系统需要掌握其关键组件和特征,并理解其在硬件管理、资源分配和系统安全中的重要作用。
最后
从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。
因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。
干货主要有:
①1000+CTF历届题库(主流和经典的应该都有了)
②CTF技术文档(最全中文版)
③项目源码(四五十个有趣且经典的练手项目及源码)
④ CTF大赛、web安全、渗透测试方面的视频(适合小白学习)
⑤ 网络安全学习路线图(告别不入流的学习)
⑥ CTF/渗透测试工具镜像文件大全
⑦ 2023密码学/隐身术/PWN技术手册大全
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
扫码领取
1069

被折叠的 条评论
为什么被折叠?



