一、计算机网络
(一)计算机网络的形成与发展
- Internet的前身是美国军方的Arpanet
- IOS制定了OSI参考模型,作为国际认可标准
- 而在此之前就广泛使用的TCP/IP协议成为了业内公认标准
- P2P技术区别于Web技术的C/S结构,它淡化了资源提供者和使用者的界限,扩大了网络资源的范围和深度
- 搜索引擎是一种运行在Web上的应用软件系统,用于搜索Web资源
- 传统城域网采用FDDI——双环光纤网络,一环使用、一环备用
- 宽带城域网是为了提高带宽、解决用户接入问题的;应该包括
核心交换网和接入网 - 三网融合:计算机网络、电信通信网和电视传输网
- 无线局域网(WLAN)以
微波、激光与红外等无线电波为介质,由IEEE802.11工作组制定标准,其传输技术包括:红外线、扩频、窄带微波,需要借助无线接入点AP——类似于星型拓扑 - 无线自组网(Ad hoc) 是一种自组织、对等式、多跳的无线移动网络,不需要无线接入点AP
- 无线网状网(WMN)是解决无线接入”最后一公里“问题的技术方案,由
IEEE802.11s工作组制定标准 - 蓝牙技术由爱立信公司提出蓝牙规范,后由
IEEE802.15工作组制定通信标准 - 一些缩写:LAN——局域网、MAN——城域网、WAN——广域网、WSN——无线传感器网、WPAN——无线个人区域网
关于计算机操作系统
- Windows
系统版本 服务器 客户机 Windows NT系列 NT Server NT WorkStation Windows 9X 95、98、ME Windows 2000系列 Advance、Datacenter Professional Windows 2003系列 Web、Standard、Enterprise、Datacenter 其他 Server 2008 XP、Vista、7
- Unix
用C语言开发,用于小型机环境,开源——为了各大厂商兼容,IEEE组织制定了易移植操作系统环境标准(POSIX)
Sun的发行版是Solaris、IBM的发行版是AIX、HP的发行版是HP-AX、SCO的发行版是UNIXWare- Linux
基于Intel硬件、在微型机上运行,类似于Unix;
编写内核时效仿Unix,兼容Unix工具与外壳;
同样符合POSIX标准
(二)计算机网络的基本概念
- 广域网从逻辑功能上分为
通信子网和资源子网 - 个人区域网的范围一般在10米以内
- 星型拓扑的中心节点是整个网络的可靠性瓶颈
- 环形拓扑
传输延时确定,环中的每条通信线路都会成为网络可靠性的瓶颈 - 树形拓扑适用于汇聚数据的应用要求
- 网状拓扑
可靠性高,所以广域网主要用网状拓扑构型 - 通信信道最大传输
速率(bps)与信道带宽(Hz)之间的关系由奈奎斯特准则和香农定理给出 - 奈奎斯特准则(无噪声):最大传输速率Rmax = 2 B
- 香农定理(有随机热噪声-
信噪比):最大传输速率Rmax = B log2(1+S/N) - 计算机通信的平均误码率要求低于10-9,这比电话线传输的误码率要求要高,所以电话线要用于计算机通信需要采用一些差错控制技术
(三)分组交换与包交换
- 少了几分
二、操作系统原理
(一)操作系统概念
- 操作系统是硬件之上的第一层
软件,能够有效地组织和管理计算机系统中的软硬件资源 - 操作系统特性:并发性(在多道环境下,两个及以事件在
同一时间间隔内发生);共享性(对处理器、存储器或其他外部设施及软件资源的互斥共享或同时共享);随机性(也称异步性,由于资源的限制一个进程的执行可能是“走走停停”的) - 操作系统功能:进程管理(进程控制、进程同步、进程间通信、调度)、存储管理(内存分配与回收、存储保护、内存扩充——虚拟存储)、文件管理(文件存储空间管理、目录管理——按名存取、文件系统安全性)、设备管理(缓冲管理、设备分配、设备处理)、用户接口(命令接口、程序接口、图形接口)
进程调度(低级调度):也称低级调度,是在就绪队列中选取进程来抢占CPU
作业调度(高级调度):从后备队列中选择合适的线程并给它分配内存
中级调度:把暂时不用的数据和指令从内存转移至外存,从而增强内存的利用效率
像数据库管理、网络管理、多媒体软件等都是基于操作系统而处于操作系统之上的层次的。
- 操作系统分类:
批处理操作系统(简单批处理系统——自动性、顺序性、单道性;多道批处理——提高CPU利用率、内存和IO利用率、系统吞吐量)
分时系统(多个终端交互式地使用同一个系统)
实时系统(在规定的时间内对请求做出响应——时间的强制性)
嵌入式系统(内核小、专用性强、多任务)
个人计算机操作系统(界面友好、使用方便)
网络操作系统(用于管理网络中的各种资源、为用户提供各种服务;分为C/S模式和对等模式)
分布式操作系统(由多个分散的处理器经互联网连接而成,具有分布性、并行性、透明性、共享性和健壮性等特点)
智能卡操作系统
多道批处理采用了
假脱机技术(SPOOLing技术),可将打印机这类独占设备改为共享设备,从而实现设备的虚拟分配
分时系统特点:
- 操作系统的发展:手工—单道—多道—分时—Unix通用—个人计算机—Android
- 操作系统结构:整体式结构(系统—>模块—>单一功能);层次结构(操作系统—>系统程序层—>应用程序层);微内核结构
整体结构模式图(可知容易产生闭环、造成混乱)
层次结构依然采用了模块化的思想,但只存在上层对下层的单向依赖
(二)操作系统运行机制
- 处理器由运算器、控制器、寄存器以及高速缓存构成
高速缓存利用
程序局部性原理使得高速指令处理和低速内存访问能够匹配
- 寄存器分为用户可见寄存器(数据、地址、条件码) 与 控制和状态寄存器(程序计数器、指令寄存器、程序状态字)
- 处理器的状态分为
目态(执行非特权指令时) 和管态(执行特权指令时) - 处理器处于管态时可以执行全部指令、可以使用所有资源
- 程序状态字PSW:条件码(反映指令执行后的结果特征)、中断屏蔽码(指出是否允许中断)、CPU工作状态码(指明是在管态还是在目态)
- 各类存储器按访问速度排序:寄存器—>高速缓存—>内存RAM—>外存ROM (存疑)
- 硬件提供的存储保护措施:界地址寄存器(为进程设置内存空间的上下限地址)、存储键(为进程和对应的内存空间设置相同的键值)
- 中断的特点:随机、可恢复、自动处理
- 中断与正在执行的
指令无关、可以屏蔽;异常与中断正好相反 - 处理器中的
中断扫描机构在每条指令执行周期的最后时刻扫描中断寄存器,询问是否有中断信号 (允许中断的前提下) - 中断类型:I/O中断、时钟中断、硬件故障中断、程序性中断(指令越权、寻址越界)、系统调用中断(又称访管中断)
- I/O控制方式:通道、DMA技术、缓冲技术
通道:使CPU从I/O事物中解脱出来(几个字节产生一次中断,当数据量较大时效率仍旧不高);提高了CPU与设备、设备与设备之间的并行度
DMA技术:系统总线中设一独立控制单元,自动控制成块的数据在内存和I/O单元间的传送
缓冲技术:解决部件之间速度不匹配的问题
- 时钟分为硬件时钟和软件时钟
- 影响中断响应次序的技术是
中断优先级和中断屏蔽
(三)进程线程模型
- 顺序执行的特征:顺序性、封闭性、结果确定性、结果可复现性
- 多道程序的特点:独立性、随机性、资源共享性
- 多道程序设计是一种操作系统设计思想,在很多操作系统上得到运用,并不是某种系统特有的
- 并发执行的特征:程序间的制约关系(互斥、同步)、程序与计算不再一一对应、结果不可再现
- 进程的概念:进程是
正在执行的程序(包含了程序、数据和进程控制块PCB);程序是静态的、进程是动态的 - 进程的特性:
并发性、动态性、独立性、交往性、异步性 - 进程三种基本状态:就绪状态、运行状态、等待状态(阻塞状态)
就绪状态:进程已经分配到了除CPU以外的所有必要资源
运行状态:就绪队列中的进程获得了CPU的使用权之后
等待状态:正在执行的进程因(请求I/O、申请额外空间等)而暂停运行
另有扩展的创建状态 和 终止状态
由于虚拟存储技术的出现又增加了挂起状态 和 激活状态
挂起状态:把一个进程从内存转到外存
激活状态:把一个进程从外存转到内存,使其在获得所需资源后能够运行
- PCB表的组织方式:线性方式、索引方式、链接方式(在线性的基础上做了分类)
- Unix的fork()函数,父进程通过此方法创建子进程;只执行一次调用,但会产生两次返回(父进程中返回子进程的PID,子进程中返回0)
- 进程的创建:创建一个PCB—>赋予进程标识符PID—>分配空间—>初始化PCB—>设置相应的链接
- 进程的撤销:正常结束、因故障错误被迫中止、应外界请求而终止运行
- 进程的阻塞:请求系统服务、启动某种操作、新数据尚未到达、无新工作可做
- 进程原本既是
资源分配和拥有的基本单位、又是可以独立调度的基本单位 - 由于进程的状态频繁地改变,系统需要不断地进行资源的分配与回收、现场的保持与恢复,所以进程的数目一定不能太多;为了提高并发性,将其两个属性分开,
进程只作为资源分配和拥有的基本单位,不进行频繁的切换处理,从而减少系统开支;同时引入线程作为调度和执行的基本单位 - 线程作为进程的一个实体而存在,同一进程的多个线程共享该进程的资源、可以
并发执行又因相互制约而呈现异步性 - 线程实现机制:用户级线程、内核级线程、混合实现方式
- Pthread是一套用户级线程库,定义了线程标准,大部分Unix系统都支持该标准
- 调度算法设计原则:面向用户(周转时间短)、面向系统原则(系统吞吐量高)
- 进程调度:FCFS(先来先服务;非抢占式,有利于长进程而不利于短进程)、SPF(短作业优先;非抢占式,有利于短进程而不利于长进程)、SRT(最短剩余时间优先;
抢占式,动态版SPF)、RR(时间片轮转;保证人机交互的及时性)、最高优先级调度算法、MLF(多级反馈队列调度算法;抢占式或非抢占式,优先级递减,主流算法)
(四)并发与同步
- 进程互斥:多个进程共享一份资源时,一个进程占用该资源则其余进程必须等待
资源共享的程度分三个层次:互斥、死锁、饥饿
解决办法:由竞争双方平等协商、引入进程管理者
临界资源:在一段时间内只允许一个进程访问或使用的资源
临界资源访问过程:进入区、临界区、退出区、剩余区
原则:空闲让进、忙则等待、有限等待(必须保证一个进程在有效的时间内进入临界区,避免陷入死等)、让权等待(不能进入临界区则应让出处理器,避免陷入忙等)
互斥的软件实现:(平等协商)
- 单标志算法(只能是
两个进程轮流使用资源)
- 双标志、先检查算法(单进程
可连续多次访问资源,但容易发生冲突)
- 双标志、后检查算法(容易都在入口处死循环)
- 先修改、后检查、后修改者等待算法(完美)
硬件实现互斥的方法:(平等协商)
- TS指令:每个临界区设置一个公共变量Lock(true表示正在使用,false表示空闲),线程想要访问临界区时,若Lock为true则只能等待,反之则可以将其修改为true然后访问,访问结束后再改回false
- Swap指令
信号量实现互斥的方法:(进程管理者)
- 进程同步:一个进程想要继续执行需要依赖别的进程提供数据或信号









1433

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



