还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
操作系统原理课程导论什么是操作系统定义作用重要性操作系统Operating System,OS是管理操作系统作为用户与硬件之间的桥梁,主计算机硬件与软件资源的系统软件,是计要负责资源管理、进程管理、内存管理、算机系统的核心它提供用户与计算机硬文件管理以及设备管理等它使得用户能件之间的接口,负责控制和协调计算机的够方便、高效地使用计算机系统,而无需各种操作关注底层的硬件细节操作系统的发展历程早期阶段1最初的计算机没有操作系统,程序直接运行在硬件上后来出现了批处理系统,提高了计算机的利用率分时系统2分时系统的出现允许多个用户同时使用计算机,大大提高了交互性个人计算机时代3随着个人计算机的普及,出现了如、等操作系统,为用户提DOS Windows供了图形界面和丰富的应用程序现代操作系统4操作系统的基本功能进程管理负责进程的创建、撤销、调度以及进程间的通信与同步内存管理负责内存的分配、回收以及虚拟内存的管理,提高内存利用率文件系统负责文件的存储、组织、访问以及目录的管理,提供高效的文件操作接口设备管理操作系统的分类批处理操作系统分时操作系统实时操作系统网络操作系统按照作业的顺序批量处理,适允许多个用户同时交互使用,对时间要求严格,适用于工业用于大型计算任务适用于交互式应用控制、航空航天等领域计算机系统架构概述硬件层操作系统层应用程序层包括CPU、内存、硬盘、输入输出设备等位于硬件层之上,负责管理硬件资源,提物理部件,是计算机系统的基础供系统调用接口操作系统与硬件的交互中断直接内存访问系统调用DMA硬件通过中断通知操作系统,例如设备完成数设备可以直接访问内存,据传输无需干预,提高数CPU据传输效率进程管理基础进程进程控制块12PCB是程序的一次执行过程,是操是操作系统管理进程的重要数作系统进行资源分配和调度的据结构,包含进程的状态、标基本单位识符、优先级等信息进程调度3操作系统根据一定的算法选择下一个要执行的进程,实现进程的并发执行进程的概念与特征动态性并发性独立性进程是程序的一次执行过程,具有生命周多个进程可以在同一时间内并发执行,提每个进程都有独立的地址空间和资源,互期,会不断地创建、执行和消亡高计算机系统的利用率不干扰,保证系统的稳定性和安全性进程状态转换运行态2进程正在上执行CPU就绪态1进程已获得除外的所有资源,等待CPU的调度CPU阻塞态进程因等待某个事件而暂停执行,例如等待完成3I/O进程在运行过程中会不断地在就绪态、运行态和阻塞态之间转换进程调度器负责选择下一个要执行的进程,使得能够高效地利用起CPU来进程调度算法算法描述优点缺点先来先服务按照进程到达简单易实现短进程等待时FCFS的先后顺序进间长行调度短作业优先选择运行时间平均等待时间需要预知进程SJF最短的进程进最短的运行时间行调度优先级调度按照进程的优可以满足不同可能导致低优先级进行调度进程的需求先级进程饥饿时间片轮转每个进程分配公平性好时间片大小的一个时间片,选择影响性能轮流执行进程同步与互斥互斥同步12指多个进程不能同时访问临界指多个进程按照一定的顺序协资源,保证资源的独占性同完成任务,保证进程间的协调性临界资源3指一次只能被一个进程访问的资源,例如打印机、共享变量等死锁的概念与预防死锁死锁产生的必要条件死锁预防指多个进程因竞争资源而造成的一种僵局,互斥条件、请求与保持条件、不可剥夺条破坏死锁产生的必要条件,例如资源预分所有进程都在等待其他进程释放资源,导件、循环等待条件配、资源有序分配等致所有进程都无法继续执行内存管理基本原理内存分配内存回收操作系统为进程分配内存空间,保操作系统回收进程释放的内存空间,证进程的正常运行以便其他进程使用虚拟内存操作系统通过虚拟内存技术,使得进程可以使用比实际物理内存更大的地址空间内存分配策略策略描述优点缺点首次适应算法从空闲分区链简单易实现容易产生碎片表的头部开始查找,找到第一个满足要求的空闲分区最佳适应算法选择大小最接减少碎片增加查找开销近进程需要的空闲分区最坏适应算法选择最大的空减少小碎片容易导致大空闲分区闲分区被快速分配完虚拟内存技术分页分段地址映射将进程的地址空间划分将进程的地址空间划分将虚拟地址转换为物理为固定大小的页,物理为逻辑段,每个段有不地址,实现虚拟内存的内存划分为页框,实现同的长度,实现段的动访问页的动态映射态映射页面置换算法OPT12LRU3FIFO4LFU页面置换算法用于选择要置换的页面,以提高内存利用率算法具有最佳性能,但难以实现算法根据最近使用的页面进行置换,OPT LRU算法根据页面进入内存的先后顺序进行置换,算法根据页面被访问的频率进行置换FIFO LFU内存分段与分页分段按逻辑结构划分,如代码段、数据段、堆栈段分页将地址空间划分为固定大小的页,便于管理和交换段页式先分段,再将每段分页,结合两者的优点文件系统概述文件目录是存储在磁盘上的具有名称的一组用于组织和管理文件,构成层次结相关信息的集合构文件系统负责文件的存储、组织、访问和管理,提供高效的文件操作接口文件组织方式顺序文件索引文件索引顺序文件记录按顺序存储,适用于批量处理通过索引快速访问记录,适用于随机访问结合顺序和索引的优点,适用于混合访问目录结构两级目录2分为用户目录和文件目录,便于用户管理自己的文件单级目录1所有文件放在同一目录下,简单但不易管理树形目录构成层次结构,便于文件的组织和管理,3是现代操作系统的常用方式文件存储实现连续分配链接分配索引分配为文件分配连续的磁盘块,简单但容易产生通过指针将磁盘块链接起来,灵活但随机访为每个文件建立索引表,记录磁盘块的位置,碎片问性能差支持高效的随机访问磁盘管理技术磁盘调度磁盘高速缓存磁盘碎片整理123选择磁盘I/O请求的顺序,减少磁头将磁盘数据缓存在内存中,提高访问整理磁盘上的碎片,提高磁盘利用率移动时间速度输入输出系统设备控制器1设备驱动程序2中断处理程序3输入输出系统负责管理计算机的各种输入输出设备,实现数据的输入和输出设备控制器负责控制设备的物理操作,设备驱动程序提供设备的高级接口,中断处理程序处理设备的中断请求中断处理机制中断请求1设备发出中断请求,通知CPU中断响应2暂停当前任务,保存现场CPU中断处理3执行中断处理程序,处理中断事件恢复执行4恢复被中断的任务,继续执行设备驱动程序作用类型设计连接操作系统和硬件设备,实现设备控制字符设备驱动程序、块设备驱动程序、网需要考虑设备的特性、操作系统的接口以和数据传输络设备驱动程序等及性能优化系统调用原理用户态1系统调用2内核态3系统调用是用户程序请求操作系统服务的接口用户程序在用户态运行,通过系统调用陷入内核态,执行操作系统提供的服务,完成后返回用户态进程通信机制机制描述优点缺点管道单向通信,适简单易用效率较低用于父子进程或兄弟进程消息队列异步通信,适可靠性高开销较大用于不同进程间传递消息共享内存多个进程共享效率高需要同步机制同一块内存区域,适用于大量数据传输信号量与管程信号量管程用于控制多个进程对共享资源的访问,将共享资源和对资源的操作封装在一实现进程同步与互斥起,提供线程安全访问并发控制技术锁机制互斥锁、读写锁等,保证对共享资源的互斥访问事务保证一组操作的原子性、一致性、隔离性和持久性ACID乐观锁假设并发冲突较少,先执行操作,再检查是否冲突套接字通信客户端1套接字2服务器3套接字是网络通信的基本接口,客户端通过套接字与服务器建立连接,进行数据传输服务器监听客户端的连接请求,建立连接后进行数据交换操作系统安全性访问控制用户认证12限制用户对系统资源的访问权验证用户的身份,防止非法用限,防止非法访问户登录系统恶意代码防护3检测和清除病毒、木马等恶意代码,保护系统安全访问控制主体1权限2客体3访问控制是指限制主体对客体的访问权限,保护系统资源的安全主体可以是用户、进程等,客体可以是文件、目录等,权限可以是读、写、执行等用户认证机制密码认证多因素认证生物特征认证用户通过输入密码进行身份验证结合密码、短信验证码、指纹等多种因素通过指纹、人脸识别等生物特征进行身份进行身份验证验证加密与解密技术技术描述优点缺点对称加密加密和解密使速度快密钥管理困难用相同的密钥非对称加密加密和解密使密钥管理简单速度慢用不同的密钥,公钥加密,私钥解密哈希算法将数据转换为速度快不可逆固定长度的哈希值,用于验证数据的完整性系统架构Unix/Linux用户12Shell系统调用3内核4硬件5操作系统内核Windows内核执行体HAL硬件抽象层,屏蔽硬件差异核心组件,负责进程管理、内存管理等提供系统服务,例如文件系统、网络服务等实时操作系统硬实时软实时必须在规定的时间内完成任务,否则会造成严重后果在规定的时间内完成任务是理想的,但偶尔超时是可以接受的嵌入式操作系统特点体积小、功耗低、可靠性高应用广泛应用于智能手机、智能家居、工业控制等领域例子FreeRTOS,uC/OS,VxWorks分布式操作系统透明性2用户感觉不到分布式系统的存在,像使用单机一样方便集群1多台计算机协同工作,对外表现为一个整体可扩展性可以方便地增加或减少计算机节点,提高3系统的性能和可靠性云计算操作系统特点描述虚拟化通过虚拟化技术,将硬件资源池化,实现资源的动态分配和管理弹性伸缩根据用户的需求,动态调整资源,提供灵活的服务按需付费用户根据实际使用的资源付费,降低成本操作系统性能评估利用率内存利用率磁盘CPU I/O系统资源监控工具等top,vmstat,iostat指标使用率、内存使用率、磁盘、网络流量等CPU I/O目的及时发现系统瓶颈,优化系统性能性能调优技术调优内存调优磁盘调优CPU优化进程调度、减少进程切换优化内存分配、减少内存泄漏优化磁盘调度、减少磁盘碎片操作系统的容错机制冗余检测恢复备份重要数据和硬件,防止单点故障及时发现系统错误,例如校验和、奇偶校从错误中恢复,例如事务回滚、系统重启验等等系统备份与恢复类型描述完全备份备份所有数据增量备份备份上次完全备份或增量备份后修改的数据差异备份备份上次完全备份后修改的数据操作系统的演进趋势云计算容器化人工智能开源操作系统发展Linux最流行的开源操作系统,广泛应用于服务器、桌面和移动设备Android基于内核的移动操作系统,占据移动市场的主导地位LinuxFreeBSD家族的开源操作系统,稳定性和安全性好,适用于服务器环BSD境操作系统面临的挑战安全性1性能2可扩展性3随着计算机技术的不断发展,操作系统面临着越来越多的挑战,例如安全性、性能、可扩展性等如何应对这些挑战,是操作系统研究的重要方向人工智能与操作系统智能内存管理2根据进程的需求,动态调整内存分配智能调度1根据进程的特性,动态调整调度策略智能安全自动检测和防御安全威胁3操作系统安全新技术可信计算1容器安全2零信任3随着安全威胁的不断演变,操作系统安全技术也在不断发展,例如可信计算、容器安全、零信任等这些技术旨在提高操作系统的安全性,保护用户的数据和隐私微内核与宏内核微内核宏内核只包含最基本的功能,例如进程管理、内存管理、进程间通信等包含所有功能,例如进程管理、内存管理、文件系统、设备驱动等其他功能以用户态进程的形式实现所有功能都在内核态运行容器技术隔离性轻量级容器之间相互隔离,互不干扰容器占用资源少,启动速度快可移植性容器可以在不同的平台上运行虚拟化技术全虚拟化模拟完整的硬件环境,操作系统无需修改guest半虚拟化操作系统需要修改,与协同工作guest hypervisor硬件辅助虚拟化利用硬件提供的虚拟化支持,提高性能操作系统的未来发展安全化2更强大的安全机制,应对日益复杂的安全威胁智能化1人工智能与操作系统的深度融合云原生化为云计算环境量身定制的操作系统3课程总结核心概念设计原理12掌握操作系统的核心概念,例理解操作系统的设计原理,例如进程、内存、文件系统等如进程调度、内存管理等实现技术3了解操作系统的实现技术,例如系统调用、中断处理等操作系统学习路径基础知识1经典教材2实践项目3学习操作系统需要掌握计算机体系结构、数据结构、算法等基础知识阅读经典教材,例如《操作系统概念》、《现代操作系统》等参与实践项目,例如编写简单的操作系统内核、实现文件系统等推荐阅读资料书名作者简介操作系统概念Abraham Silberschatz,Peter BaerGalvin,经典的操作系统教材,内容全面、深入Greg Gagne现代操作系统Andrew S.Tanenbaum另一本经典的操作系统教材,侧重于实践深入理解计算机系统Randal E.Bryant,David R.OHallaron从程序员的角度深入理解计算机系统课程实验与实践目的内容工具巩固理论知识,提高实践能力编写简单的操作系统内核、实现文件系统、Linux、C语言、汇编语言等设计进程调度算法等答疑与交流欢迎大家提出问题,积极交流学习心得祝大家学习愉快!。
个人认证
优秀文档
获得点赞 0