大连网站建设服务公司,怎样查看网站的权重,dw网页制作基础知识,微信号注册官网网页版一、操作系统的基本概念
1.1 操作系统概念
控制和管理整个计算机系统的硬件与软件资源。合理地组织、调度计算机的工作与资源。为用户和其他软件提供方便接口与环境的程序集合。
1.2 操作系统的特征
特征#xff1a;并发#xff0c;共享#xff0c;虚拟#xff0c;异步…一、操作系统的基本概念
1.1 操作系统概念
控制和管理整个计算机系统的硬件与软件资源。合理地组织、调度计算机的工作与资源。为用户和其他软件提供方便接口与环境的程序集合。
1.2 操作系统的特征
特征并发共享虚拟异步
并发两个或多个事件在同一时间间隔内发生。使得系统具有处理和调度多个程序同时执行的能力。操作系统的并发是通过分时实现的。注意并发是指在一个时间段并行是指在同一个时段。并行是指系统具有同时执行或操作硬件支持多流水线或者多处理机。对于单机处理来说并行宏观上程序是同时在运行的微观上程序是交替执行的多道程序轮流占有CPU交替执行。 重要考点单核CPU同一时刻只能执行一个程序各个程序只能并发地执行。多核CPU同一时刻可以同时执行多个程序多个程序可以并行地执行。
共享互斥共享方式。例如打印机、磁带同一时刻只能供一个进程对资源进行访问。这种资源称作临界资源或者独占资源。
同时访问方式一段时间内允许多个进程对资源进行访问。典型代表磁盘设备重入码编写的文件。
虚拟一个物理上的实体变为若干逻辑上的对应物这种技术被称为虚拟技术。虚拟处理器采用多道程序并发的方式让每个终端用户感觉到有多个处理器。时分复用技术。
虚拟存储器将物理存储变为虚拟存储器逻辑上扩充存储器用量。空分复用技术。
也可以将一台IO设备虚拟为多台逻辑上的IO设备并允许每个用户占用一台逻辑上的IO设备。
异步多道程序走走停停进程以不可预知的速度向前进。
1.3 操作系统的运行环境
程序运行程序运行的过程是执行CPU一条条的机器指令的过程。
操作系统的运行机制
CPU执行的两种性质程序操作系统内核程序用户自编程序。
内核
时钟管理操作系统为用户提供标准时间根据时钟对进程进行管理实现进程切换。
中断机制初衷是为了提高多道程序运行环境中的CPU利用率。保护和回复中断线程的信息转移控制权到相关程序。
原语处于系统的最底层最接近硬件。运行具有原子性只能一气呵成。系统控制的数据结构及处理。
中断与异常
为了进行核心态和用户态两种状态的切换引入了中断机制。核心态可以执行用户态无法执行的特权指令。访管指令是在用户态使用将用户态转换为核心态所以访管指令不是特权指令。
中断是让操作系统内核夺回CPU使用权的唯一途径。
中断外中断来自于CPU指令之外的事件发生。I/O中断输入输出已经完成。时钟中断固定时间片已到让处理机处理。
异常内中断源自于CPU执行指令内部的事件。非法操作码除零地址越界算术溢出。陷入指令用户自行设置执行陷入后用户态转换为核心态。异常不能被屏蔽。
系统调用用户在程序中调用操作系统提供的一些子功能。设备功能完成设备的请求或者释放设备启动等功能。文件管理完成文件的读、写、创建以及删除功能。进程控制完成进程的创建、撤销、阻塞以及唤醒功能。进程通信完成进程之间的消息传递和信号传递功能。内存管理完成内存的分配、回收以及获取作业占有内存区大小及始址等功能。
用户态与内核态处于内核态时说明此时正在运行的是内核程序此时可以执行特权指令。
处于用户态时说明此时正在执行的时应用程序此时只能运行非特权指令。
cpu中有一个寄存器叫程序状态字寄存器psw其中有个二进制位1表示内核态0表示用户态。
别名内核态核心态管态。用户态目态。
内核态-用户态。执行一条特权指令——修改psw的标志位为用户态意味着操作系统主动让出CPU使用权。
用户态-内核态。由中断引发硬件自动完成变态过程触发中断信号意味着操作系统强行夺回CPU使用权。
1.4 大内核与微内核
大内核将操作系统的主要功能模块进行集中从而用以提供高性能的系统服务。优点各个管理模块间共享信息能够有效利用相互间的有效特性有巨大性能优势。缺点层次交互关系复杂层次接口难定义层次间界限模糊。
微内核计算机体系结构发展操作系统提供服务越来越多接口形式越来越复杂。将内核中最基本的功能保留在内核将不需要在核心态执行的功能转移到用户态执行降低内核设计的复杂性。优点有效分离内核与服务、服务与服务、使得它们间的接口更清晰维护代价大大降低。各部分可以独立的优化和演进。缺点性能问题需要频繁的在用户态和内核态之间切换。
二、进程
2.1 进程的概念和特征
进程的概念
进程是程序一次执行过程。进程是一次程序及其数据在处理机上顺序执行时发生的活动。进程时具有独立功能的程序在一个数据集合上运行的过程是资源分配和调度的独立单位。是为了更好描述和控制程序的并发执行实现操作系统的并发性和共享性。
进程控制块PCB为了更好的描述进程的基本情况和运行状态进而控制和管理进程。PCB是进程存在的唯一标志。
进程的特征
动态性、并发性、独立性、异步性、结构性。
动态性进程具有生命周期有创建、活动、暂停、终止等过程。
并发性多个进程同时存在于内存中使得程序与程序之间可以并发执行。
独立性进程能独立获得资源和接受调度。
异步性进程相互制约以不可预知的速度向前推进。操作系统中配置有相应的进程同步机制。
结构性每个进程都配置一个PCB用于描述。
2.2 进程的状态与转换
状态创建态、就绪态、运行态、阻塞态、结束态。
创建态进程正在被创建尚未进入就绪态。
就绪态进程已处于准备运行状态。
运行态进程在处理机上运行。
阻塞态又称等待态进程正在等待某个时间而暂停运行。
结束态进程正在从系统中消失正常结束或异常终止
相互转换 就绪态-运行态处于就绪态的进程获得处理机进入运行态。
运行态-就绪态处于运行态的进程时间片用完后让出处理机进入就绪态。
运行态-阻塞态进程请求除处理机外的其他资源此时运行态进入阻塞态。
阻塞态-就绪态进程获得所等待的资源如IO资源或中断结束。
2.3 进程控制
进程的创建
分配进程标识号申请PCBPCB有限。为进程分配资源为程序和数据以及用户栈分配必要的内存空间。初始化PCB包括初始化标志信息、初始化处理机状态信息、初始化处理机控制信息、设置进程的优先级。若进程就绪队列可以接纳新进程进程就进入就绪态。
进程的终止
结束分类正常结束进程的任务已经完成并且准备退出运行。异常结束进程正在运行出现了某些异常事件导致程序无法继续运行。外界干预进程应外界请求终止运行。
结束过程根据被终止进程的标识符检索PCB读取进程状态。若进程处于运行态终止运行剥夺处理机。终止进程之下的子进程。该进程拥有的全部资源还给父进程或者操作系统。将PCB从队列中删除。
进程的阻塞和唤醒
阻塞原语执行过程找到要被阻塞进程标识号对应的PCB。若该进程处于运行态保护其现场将其状态转换为阻塞态停止运行。将PCB插入相应时间的等待队列。
唤醒原语的执行过程找到等待队列中进程相应的PCB。将其从等待队列中移除置其状态为就绪态。将PCB插入就绪队列等待调度程序调度。
进程切换
进程切换是在内核态下完成的。
过程保存处理机上下文包括程序计数器和其它寄存器。更新PCB信息。把进程的PCB移入相应的队列如就绪、阻塞等队列。选择另一个进程执行更新其PCB。更新内存管理的数据结构。恢复处理机上下文。
进程的组织
进程是一个独立的运行单位也是操作系统进行资源分配和调度的基本单位由以下三部分组成
进程控制块
进程描述信息进程标识符标志进程。用户标识符标识进程归属的用户主要为了共享和保护服务。
进程控制和管理信息进程当前状态描述进程状态信息。进程优先级描述进程抢占处理机的优先级。代码运行入口地址。程序外存地址。进入内存时间。处理机占用时间。信号量使用。
资源分配清单
用以说明有关内存地址空间或者虚拟地址空间状况所打开的文件的列表和所使用的输入/输出设备信息。代码段指针、数据段指针、堆栈段指针、文件描述符、键盘、鼠标。
处理机相关信息
处理机中各寄存器的值。通用寄存器地址寄存器控制寄存器标志寄存器值状态字。
程序段能被进程调度程序调度到CPU执行的程序代码段。
数据段进程对应的程序加工处理的原始数据或者程序执行时产生的中间或最终结果。
进程的组织方式
链接方式按照进程状态将PCB分为多个队列操作系统由指向各个队列的指针。
索引方式根据进程状态不同建立几张索引表。操作系统持有指向各个索引表的指针。
2.4 进程的通信
共享存储通信进程之间存在一块可以被直接访问的共享空间。
低级方式基于数据结构共享。
高级方式基于存储区共享。
消息传递进程间的数据交换是已格式化的消息为单位的进程通过系统提供的发送消息和接收消息的两个原语进行数据交换。
直接通信方式发送进程直接发消息给接收进程并将它挂在接收进程的消息缓冲队列上接收进程从消息缓冲队列中取得消息。
间接通信方式发送进程把消息发给某个中间实体接收进程从中间实体获得消息。
通道通信发送进程以字符流形式将大量数据送入写管道接收进程从管道中接收数据。当管道写满时写进程的write()系统调用将被阻塞等待读进程将数据取走。当读进程将数据全部取走后管道变空此时读进程的read()系统调用将被阻塞。
通道通信是半双工通信不可以同时读和写。要求互斥和同步确定对方存在。
三、线程
线程的基本概念
减少程序在并发执行时付出的时空开销提高操作系统的并发性能。
引入线程后进程只作为系统资源的分配单元线程作为处理机的分配单元。
线程与进程的比较
调度进程是独立调度的基本单位线程是资源的基本单位。不同线程切换回引起进程切换。
拥有资源进程是资源分配的基本单位。
并发性引入线程后进程可以并发执行多个线程间也可以并发执行提高系统吞吐量。
系统开销同一进程的线程切换要比进程切换开销小。
地址空间和其它资源进程的地址空间相互独立同一进程的各线程之间共享进程资源某进程的线程对其它进程不可见。
通信方面进程间通信需要进程同步和互斥手段的辅助保证数据的一致性。线程间可以直接读/写进程程序段来通信。
线程属性不拥有系统资源拥有唯一标识符和线程控制块。不同线程可以执行相同的程序同一服务程序被不同用户调用时操作系统为其创建不同线程。同一进程的线程共享该进程全部资源。线程时处理机的独立调度单位。线程也有生命周期如阻塞、就绪、、运行等状态。多CPU计算机中各个线程可占用不同的CPU。每个线程都有一个线程ID、线程控制块TCB。切换同进程中的线程开销小切换进程开销大。由于共享内存地址空间同一进程中的线程间通信甚至无需系统干预。
持续更新中... ——————————————————————————————————————
一、文件系统专题
题1【2012统考真题】某文件系统空间的最大容量为 4TB 1TB2^40 B 以磁盘块为基本分配单位。磁盘块大小为 1KB 。文件控制块 FCB 包含一个 512B 的索引表区。请回答下列问题。
1 假设索引表区仅采用直接索引结构索引表区存放文件占用的磁盘块号索引表项中块号最少占多少字节可支持的单个文件最大长度是多少字节
2 假设索引表区采用如下结构第 0 7 字节采用 起始块号块数 格式表示文件创建时预分配的连续存储空间其中起始块号占 6B 块数占 2B 剩余 504 字节采用直接索引结构一个索引项占 6B 则可支持的单个文件最大长度是多少字节为了使单个文件的长度达到最大请指出起始块号和块数分别所占字节数的合理值并说明理由。
解答1总容量是2^42B磁盘块大小是2^10B所以一共有2^32个磁盘块。每个磁盘块都可以用一个32位的二进制数表示比如0000 0000 0000 0000 0000 0000 0000 0010 代表第2个磁盘块。问块号占多少字节因为每个字节8位所以是32/84B所以占4字节。可以用4个字节来代表一个磁盘块
现在有一个512B的索引表区用512B/4B128求得有128个索引表项因为4个字节代表一个磁盘块4字节等于1个索引表项每个索引表项代表一个磁盘块每个磁盘块大小1KB所以单个文件最大长度位128x1KB128KB。
26B48位。2B16位16位表示的是连续的内存块数2^16又因为每个内存块是1KB2^10B所以预分配的连续内存空间是2^26B。
因为1个索引项占6B所以504字节84个索引项。由第1问推理可知1个索引项1个磁盘块84x1KB84KB。
由题目第2问开头可知索引表表示的空间大小可以预分配的存储空间直接索引的存储空间。所以可支持的单个文件的最大长度是2^26B84KB。
在第2问的框架下索引表结构是不变即前8字节表示预分配的空间所以只能在这里作文章。因为根据第1问可知该系统容量为2^32个磁盘块的大小。所以我们可以让表示连续分配块数占32位即4字节这样最大能分配大小为4TB的连续块作为预分配空间。起始块号也占4字节刚好能寻址完全2^32块磁盘块。很完美的分配方法。
题2【2016 统考真题】某磁盘文件系统使用链接分配方式组织文件簇大小为4KB。目录文件的每个目录项包括文件名和文件的第一个簇号其他簇号存放在文件分配表FAT中。 1假定目录树如下图所示各文件占用的簇号及顺序如下表所示其中dir, dir1是目录file1, file2是用户文件。请给出所有目录文件的内容。 2若FAT的每个表项仅存放簇号占2B则FAT的最大长度为多少字节?该文件系统支持的文件长度最大是多少? 3系统通过目录文件和FAT实现对文件的按名存取说明file1的106108两个簇号分别存放在FAT的哪个表项中 4假设仅FAT和dir目录文件已读入内存若需将文件dir / dir1 / file1的第5000个字节读入内存则要访问哪几个簇?
解答1可以这么看题目中只有2个目录分别为dir和dir1。dir的目录项是dir1不用去考虑下一级dir1的目录项是file1和file2。由定义目录文件的每个目录项包括文件名和文件的第一个簇号所以dir的目录名为dir1 48。dir1的目录名为file1 100 file2 200。
22B16位任何1个簇能用16位二进制数组成的簇号表示所以一共能表示2^16个簇又因为1个表项对应1个簇所以一共有2^16个表项因为一个表项大小2B所以FAT的最大长度表项的数量x表项大小2^16x2为2^17B128KB。
最大文件长度簇的数量x每个簇的大小。已知有2^16个簇题目中知道每个簇的大小为4KB2^12B。所以所能表示的文件最大大小为2^28B256MB。
3由第1问可知dri1目录文件的第1个目录项为file1 100这里的100是file1的第1个簇号它需要通过指针与后面2个簇号106和108连接。file1的目录项首先会指向第1个簇号对应在FAT中的表项如下图也就是第100表项因为在FAT表中每个表项的构成结构是表项下一簇号所以100簇号对应的下一个簇号是106通过106簇号可以找到表项106108簇号存储在106表项中。由此可以找到file1文件中的所有簇号。所以答案是file1的簇号106存放在FAT的100号表项中簇号108存放在FAT的106号表项中。 4由题目知道dir目录已经读入内存接下来需要将dir1读入内存所以需要访问簇号为48的簇。下面需要把file1读入内存因为每个簇的大小为4KB4096B系统知道file1的目录项最大只能访问到4096个字节所以它会到FAT的第100表项去找所以会访问簇号为106的簇这个簇是第2个簇对应的内存是第4097~8192个字节第5000个字节在这个范围内。