操作系统学习笔记一

本文主要介绍了操作系统的基础知识,包括计算机系统操作、存储结构、I/O结构、操作系统结构和中断处理。详细阐述了引导程序的作用、中断处理机制、内存管理、进程管理和保护与安全的概念。此外,还提及了分布式系统、嵌入式系统以及计算环境的不同类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1计算机系统操作

  打开电源或重启时,计算机开始运行,需要运行一个初始化程序(引导程序),该引导程序(bookstrap program)比较简单通常位于只读内存(ROM)或者EEPROM(电可擦可编程只读存储器),称为 计算机硬件中的固件。他初始化系统中的包括cpu寄存器,设备控制器和内存内容等所有部分。引导程序必需知道如何装入操作系统和开始执行系统。因此,引导程序必须定位操作系统内核并把它装入内存。接着操作系统开始执行第一个进程 ,如init,并等待事件的发生。

  事件的发生通常通过硬件或软件的中断来表示。(中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。)

  硬件可随时通过系统总线(总线用来连接微机各功能部件而构成一个完整微机系统)向cpu发送信号,以触发中断。当cpu中断时,他暂停当前执行并立即转到固定位置继续执行。该固定位置通常是中断服务程序的开始地址。中断服务程序(处理器处理“急件”,可理解为是一种服务,是通过执行事先编好的某个特定的程序来完成的,这种处理“急件”的程序被称为——中断服务程序。)开始执行,执行完后,cpu重新执行被中断的运算。

  中断必须将控制转移给合适的中断处理程序。简单的方法是:调用一个通用子程序以检测中断信息。处理中断要快,通过使用中断处理子程序的指针表可间接调用中断处理子程序,而不需要其他中间子程序。通常指针表位于低内存地址(前一百左右的位置)这些位置包含各种设备中断处理子程序的地址(即中断向量interrupt vector).中断向量对于给定的中断请求通过唯一设备号来索引,以提供设备的中断处理子程序的地址。

  中断体系结构也保持被中断指令的地址,处理中断后,保存的返回地址会装入程序计数器,被中断的计算可以重新开始,就好像中断没有发生过一样

1.2存储结构

     计算机必须在内存或RAM(随机访问内存random access memory)运行

1.3I/O结构

      通用计算机系统有一个cpu和多个设备控制器组成,他们通过共同的总线连接起来。每个设备控制器负责特定类型的设备,可有多个设备与其连接。设备控制器维护一定量的本地缓冲存储和一定用途的寄存器。设备控制器负责在其所控制的外部设备与本地缓存之间进行数据传递。通常操作系统为每个设备控制器提供一个设备驱动程序。

      为了开始I、O操作,设备驱动程序在设备控制器中装载适当的寄存器。相应的,设备控制器检查这些寄存器的内容以决定采取什么操作(如从键盘读取一个字符),控制器开始从设备想本地缓存传输数据,一旦数据传输完成,设备控制器会通过中断告诉驱动程序已完成操作,然后,驱动程序返回对操作系统的控制。

      这种IO中断驱动适合少量数据,DMA(直接内存访问)可以用于大量数据移动,设备控制器能在本地缓冲和内存之间传送一整块数据,而无需cpu的干预,且每块只产生一个中断,而不是一个字节一个中断。

1.3操作系统结构(用户:在计算机里还指人、帐号、进程等。)

       多道程序设计指的是允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。也就是说,计算机内存中可以同时存放多道(两个以上相互独立的)程序,它们都处于开始和结束之间。只要有一个程序或任务可以执行,cpu就不会空闲。

        分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。分时操作系统是指在一台主机上连接多个带有显示器和键盘的终端,允许多个用户通过主机的终端以交互方式使用计算机,共享主机中的资源。

        共享需要一种交互式计算机系统,它能提供用户和系统之间的直接通信。分时允许许多用户同时共享计算机,每个用户只要少量cpu时间,随着系统从一个用户切换到另一个用户,每个用户会感觉到整个系统只为自己所用。

       装到内存并执行的程序通常被称为进程(process),当进程执行时,通常他只执行较短的一段时间,,此时他并未完成或者需要进行IO操作。由于交互IO通常按人的速度来运行,会运行很长时间,例如每秒5个字符的输入速度对计算机相当的慢了。用户交互输入时,系统为了不让cpu空闲,会将cpu 切换到其他用户的程序。

        分时和多道程序设计需要在存储器中同时保存有几个作业。由于主存较小,通常在开始将作业存储在磁盘的作业池中。作业调度(job scheduling)按照一定的算法,从作业池或后备队列中选取某些作业调入内存,并为它们创建进程、分配必要的资源。

         在分时操作系统中,操作系统必须保证合理的响应时间,这需要交换即进程在内存与磁盘之间的来回转移来实现。更常用的方法是使用虚拟内存(virtual memory),虚拟内存允许将一个执行的作业不完全放在内存里,且他可以比物理内存大。还有,虚拟内存将内存抽象成一个 庞大且统一的存储数组,将用户索理解的逻辑内存(logical memory)与真正的物理内存区别开来。

1.4  操作系统操作

         陷阱或异常是一种软件中断,由于出错比如除数为零或者源于用户程序的一个特别请求(完成操作系统服务)。

         采用共享,许多进程可能会受到一个程序的漏洞的不利影响,因此操作系统的设计必须保证一个错误的程序不会造成其他程序执行错误。

         为保证操作系统的正常执行,必须区分操作系统代码和用户定义的代码。可以采用的方法是提供硬件支持以允许区分各种执行模式。

         计算机硬件中增加一个称为模式位(mode bit) 的位以表示当前模式:监督程序模式0和用户模式1.有了模式位就可以区分操作系统和用户分别执行的任务。

         双城模式操作系统为保护操作系统和用户程序不受错误用户程序影响的手段。实现方法是:将能引起损害机器的指令设为特权指令(privileged instruction),用户模式执行这些指令是非法的,并将其以陷阱的形式通知操作系统。

        系统调用把应用程序的请求传给内核,调用相应的的内核函数完成所需的处理,将处理结果返回给应用程序。系统调用通常采用陷阱到中断向量的一个指定位置的方式。

         为确保系统对cpu的控制、防止程序进入死循环或不调用系统服务,并且不将控制全返回到操作系统。为实现之一目标,可使用定时器。系统在将控制权交给用户之前,应确保设置好计时器以便产生中断。计时器产生中断,控制权自动交给操作系统。

1.5进程管理

        程序本身并不是进程,程序是被动的实体。而进程是活动的实体。进程是系统工作的单元。

1.6内存管理

         内存通常是cpu所能直接寻址和访问的唯一大容量存储器。如果一个程序要执行,必须先变换成绝对地址并装入内存。为改善cpu的利用率和计算机对用户的响应素度,通用计算机必须在内存中保留多个程序。

1.8存储管理

          每种 存储介质通过一个设备来控制,如磁盘驱动器和磁带驱动器。

          大部分计算机采用硬盘作二级存储器(secondary storage)。但有时也使用三级存储如磁带光盘等存放很少使用的数据、长期档案。

          信息通常保存在一个存储系统中,当使用它时,他会被临时复制到更快的存储系统——高速存储。绝大多数系统在其存储层次上都有一个或多个高速缓存。

1.9保护和安全

          保护是一种控制进程或用户对计算机系统资源课访问的机制。安全的主要工作是防止系统不受外部或内部攻击。保护盒安全需要系统能区分他的所有用户。

1.10分布式系统

           网络,简单的说,就是两个或多个系统之间的通信路径。分布式系统通过网络提供功能。

1.1专用系统

           嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”。有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。

            嵌入式系统几乎都运行实时操作系统。实时操作系统是保证在一定时间限制内完成特定功能的操作系统。传感器将数据传给计算机,计算机必须分析这些数据并可能调整控制以改变传感器的输入。

           多媒体系统

           手持系统包括个人数字助理(PDA),如Palm、手机,其中许多都使用专门的嵌入式操作系统。

1.12计算环境

          客户机/服务器系统 Client/server system 简称C/S系统。是一类按新的应用模式运行的分布式计算机系统。C/S系统中各计算机在不同的场合既可能是客户机,也可能是服务器。

          分布式系统的另一种结构是对等(P2P)系统模式。采用这个模式,这些计算机同时扮演着服务器和客户机的角色,因此,对等计算模式可以有效地减少传统服务器的压力,使这些服务器可以更加有效的执行其专属任务。

          web计算

1.13小结

         对称多处理技术(SMP)是最普通的多处理器设计技术,其中所有的处理器被视为对等的且彼此独立运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值