操作系统概述_多道批处理系统算不算操作系统-程序员宅基地

技术标签: 操作系统  

第一章 操作系统概述

202196日 16:40

目录

1.1 什么是操作系统

1.1.1 操作系统的地位和目标

1.1.2 操作系统的作用和组成

1.1.3 操作系统举例

1.2 操作系统的发展历史

1.2.1 推动操作系统发展的主要动力

1.2.2 手工操作

1.2.4 多道批处理系统(multiprogramming system)

1.2.5 分时系统(time-sharing system)

1.2.6 实时系统(real-time system)(及时性,可靠性)

1.3 操作系统的分类

1.3.1 批处理操作系统(Batch Processing Operation System)

1.3.2 分时操作系统(Time Sharing Operating System)

1.3.3 实时操作系统(Real Time Operating System)

1.3.4 多处理操作系统

1.3.5 网络操作系统(NOS, Network Operating System)

1.3.6 分布式操作系统(Distributed Operating System)

1.3.7 个人计算机操作系统(Personal Computer Operating System)

1.4 操作系统的特征

1.4.1 操作系统的特征

1.4.2 操作系统的服务

1.5 操作系统的功能(系统资源的管理者)

1.5.1 处理机管理

1.5.2 存储管理

1.5.3 设备管理

1.5.4 信息管理(文件管理)

1.5.5 用户接口

1.6 常用的操作系统

1.7 操作系统的运行机制与体系结构

1.7.1 运行机制

1.7.2  操作系统内核

1.7.3 操作系统的体系结构

1.8 中断和异常

1.8.1 中断机制的诞生

1.8.2 中断的概念和作用

1.8.3 中断的分类

1.8.4 外中断的处理过程

1.9 系统调用

1.9.1 什么是系统调用,有何作用?

1.9.2 系统调用和库函数的区别

1.9.3 系统调用背后的过程

小结


1.1 什么是操作系统

1.1.1 操作系统的地位和目标

操作系统的地位:紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境)

系统调用 == 系统调用命令 == 广义指令

操作系统的功能和目标——作为系统资源的管理者

操作系统的功能和目标——作为用户和计算机硬件之间的接口

操作系统的功能和目标——作为最接近硬件的层次

引入操作系统的目标:

    • 有效性(系统管理人员的观点):管理和分配硬件、软件资源,合理地组织计算机的工作流程
    • 方便性(用户的观点):提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别
    • 可扩充性(开放的观点):硬件的类型和规模、操作系统本身的功能和管理策略、多个系统之间的资源共享和互操作

1.1.2 操作系统的作用和组成

操作系统的作用:

OS是计算机硬件、软件资源的管理者。

OS是用户使用系统硬件、软件的接口。

OS是扩展机(extended machine)/虚拟机(virtual machine)。

    • 管理对象包括:CPU、存储器、外部设备、信息(数据和软件);
    • 管理的内容:资源的当前状态(数量和使用情况)、资源的分配、回收和访问操作,相应管理策略(包括用户权限)。
    • 系统命令(命令行、菜单式、命令脚本式、图形用户接口GUI);
    • 系统调用(形式上类似于过程调用,在应用编程中使用)。
    • 在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对CPU);
    • 另外,为合理组织工作流程:作业管理、进程管理。

操作系统的非形式化定义(关键点):系统软件,程序模块的集合,资源管理和用户接口功能

1.1.3 操作系统举例

    • MS OS: MS DOS, MS Windows 3.x, Windows 95, Windows NT, Windows 2000
    • UNIX: BSD, SRV4, OSF1, SCO UNIX, AIX, Solaris, Linux
    • NOS: Novell Netware
    • RTOS: VxWorks, pSoS, Nucleus

1.2 操作系统的发展历史

1.2.1 推动操作系统发展的主要动力

(1) 提高资源的利用率和系统性能:计算机发展的初期,计算机系统昂贵,用作集中计算

(2) 方便用户:用户上机、调试程序,分散计算时的事务处理和非专业用户(商业和办公、家庭)

(3) 器件的发展:CPU的位宽度(指令和数据)、快速外存

1.2.2 手工操作

1946 ~ 50年代(电子管),集中计算(计算中心),计算机资源昂贵;

    • 工作方式
      • 用户:用户既是程序员,又是操作员;用户是计算机专业人员;
      • 编程语言:为机器语言;
      • 输入输出:纸带或卡片;
    • 计算机的工作特点
      • 用户独占全机:不出现资源被其他用户占用,资源利用率低
      • CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低;
    • 主要矛盾
      • 计算机处理能力的提高,手工操作的低效率(造成浪费);
      • 用户独占全机的所有资源;
    • 提高效率的途径
      • 专门的操作员,批处理

1.2.3 单道批处理系统(simple batch processing)(引入脱机输入/输出技术(用磁带完成),并监督程序负责控制作业的输入、输出)

50年代末 ~ 60年代中(晶体管):利用磁带把若干个作业分类编成作业执行序列,每个批作业由一个专门的监督程序(Monitor)自动依次处理。可使用汇编语言开发。

    • 批处理中的作业的组成:
      • 用户程序
      • 数据
      • 作业说明书(作业控制语言)
    • 批:
      • 供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件(系统带)

两种批处理方式(1)

联机批处理

    • 用户提交作业:以纸带或卡片为介质;
    • 操作员合成批作业:结果为磁带介质;
    • 批作业处理:对批作业中的每个作业进行相同的处理:从磁带读入用户作业和编译链接程序,编译链接用户作业,生成可执行程序;启动执行;执行结果输出。
    • 这时的问题:慢速的输入输出处理仍直接由主机来完成。输入输出时,CPU处于等待状态。

两种批处理方式(2)

脱机批处理

利用卫星机完成输入输出功能。主机与卫星机可并行工作。

    • 卫星机:完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上。
    • 作业控制命令由监督程序(monitor)来执行,完成如装入程序、编译、运行等操作。
    • 优点:同一批内各作业的自动依次更替,改善了主机CPU和I/O设备的使用效率,提高了吞吐量。
    • 缺点:磁带或磁盘需要人工装卸,作业需要人工分类,监督程序易遭到用户程序的破坏(由人工干预才可恢复)。

通道和中断技术

60年代初,发展了通道技术和中断技术,这些技术的出现使监督程序在负责作业运行的同时提供I/O控制功能。

    • 通道:用于控制I/O设备与内存间的数据传输。启动后可独立于CPU运行,实现CPU与I/O的并行。
      • 通道有专用的I/O处理器,可与CPU并行工作
      • 可实现 I/O联机处理
    • 中断是指CPU在收到外部中断信号后,停止原来工作,转去处理该中断事件,完毕后回到原来断点继续工作。
      • 中断处理过程:中断请求,中断响应,中断点(暂停当前任务并保存现场),中断处理例程,中断返回(恢复中断点的现场并继续原有任务
      • 可处理算术溢出和非法操作码,死循环(利用时钟中断进行超时限定)
    • 监督程序发展为执行系统(executive system),常驻内存

单道批处理的主要问题

    • CPU和I/O设备使用忙闲不均(取决于当前作业的特性)。
      • 对计算为主的作业,外设空闲;
      • 对I/O为主的作业,CPU空闲;

1.2.4 多道批处理系统(multiprogramming system)

60年代中 ~ 70年代中(集成电路),利用多道批处理提高资源的利用率。

    • 多道批处理的运行特征
      • 多道:内存中同时存放几个作业;
      • 宏观上并行运行:都处于运行状态,但都未运行完;
      • 微观上串行运行:各作业交替使用CPU;
    • 优点:
      • 资源利用率高:CPU和内存利用率较高,多道程序并发执行,共享计算机资源
      • 作业吞吐量大:单位时间内完成的工作总量大;
    • 缺点:
      • 用户交互性差:(相当于不提供人机交互的能力)整个作业完成后或中间出错时,才与用户交互,不利于调试和修改,用户响应时间长
      • 作业平均周转时间长:短作业的周转时间显著增长;

1.2.5 分时系统(time-sharing system)

    • 分时技术是把处理机的时间分成很短的时间片,这些时间片轮流地分配给各个联机的各作业使用。如果某作业在分配给它的时间片用完时仍未完成,则该作业就暂时中断,等待下一轮运行,并把处理机的控制权让给另一个作业使用。这样在一个相对较短的时间间隔内,每个用户作业都能得到快速响应,以实现人机交互。
    • 主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
    • 主要缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。
    • 抢先式和非抢先式(preemptive & non-preemptive):出让CPU是OS强迫或程序主动
      • 抢先式:OS强近出让CPU;
      • 非抢先式:程序主动出让CPU;
    • 分时系统的特点
      • 交互性:在调试和运行程序时由用户自己操作。
      • 多用户同时性:多个用户同时使用。
      • 独立性:对每个用户而言好象独占主机。

1.2.6 实时系统(real-time system)(及时性,可靠性

用于工业过程控制、军事实时控制、金融等领域,包括实时控制、实时信息处理

    • 要求:响应时间短,在一定范围之内;系统可靠性高
    • 主要优点:能够优先相应一些紧急任务,某些紧急任务不需时间片排队
    • 任务的类型:
      • 周期性实时任务:
      • 非周期性实时任务:截止时间(deadline),开始截止时间(最晚开始时间)和完成截止时间(最晚完成时间)

1.3 操作系统的分类

1.3.1 批处理操作系统(Batch Processing Operation System)

    • 作业的处理流程
      • 作业提交:作业的输入;
      • 作业执行
      • 作业完成:作业的输出;
      • 批处理的主要特征
        • 用户脱机使用计算机:作业提交后直到获得结果之前,用户无法与作业交互。
        • 作业成批处理
        • 多道程序并行:充分利用系统资源。
      • 多道批处理系统上的技术
        • 作业调度:作业的现场保存和恢复--上下文切换
        • 资源共享:资源的竞争和同步--互斥(exclusion)和同步(synchronization)机制
        • 内存使用:提高内存使用效率(为当前由CPU执行的程序提供足够的内存)--覆盖(overlay),交换(swap)和虚拟存储(virtual memory)
        • 内存保护:系统存储区和各应用程序存储区不可冲突--存储保护
        • 文件非顺序存放、随机存取

多道程序系统和多处理系统(multiprocessing system)的区别:前者指多个程序同时在内存中交替运行,后者指多个处理器。

1.3.2 分时操作系统(Time Sharing Operating System)

    • 分时的定义
      • 把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片(time slice),每个用户依次轮流使用时间片。
    • 分时系统的特征
      • 多用户同时性:多个用户同时工作。
        • 共享系统资源,提高了资源利用率。节省维护开支,可靠性高:笨终端--至今仍在使用。促进了计算机的普遍应用,提高资源利用率:远地用户通过终端(较便宜)联机使用。
      • 独立性:各用户独立操作,互不干扰。
      • 交互性:系统能及时对用户的操作进行响应,显著提高调试和修改程序的效率:缩短了周转时间。
    • 分时系统的类型
      • 单道分时:调入-调出(Roll-in/Roll-out),I/O开销太大(在有卫星机处理I/O时,单道分时是有用的)
      • 前台后台分时:后台存放批处理作业,内存的划分是固定的,不灵活
      • 多道分时:需要解决加载程序时地址空间重定位的问题
    • 分时系统的主要问题
      • 及时接受输入:多个I/O端口,设立多路缓冲区
      • 及时响应:
        • 提高对换速度(快速外存)、
        • 限制用户数目、
        • 缩短时间片(可能引起对换次数增多,开销增大,程序总运行时间增大)
      • 减少对换信息量:
        • 可重入代码(re-entrant code);
        • 请求页式存储管理:只对换部分程序
    • 1.3.3 实时操作系统(Real Time Operating System)

      • 实时操作系统主要用于过程控制、事务处理等有实时要求的领域,其主要特征是实时性和可靠性。
      • 实时系统的特征
        • 实时时钟管理:提供系统日期和时间、定时和延时等时钟管理功能;
        • 过载保护:缓冲区排队,丢弃某些任务,动态调整任务周期;
          • 过载是指进入系统的任务数目超出系统的处理能力。
        • 高度可靠性和安全性:容错能力(如故障自动复位)和冗余备份(双机,关键部件);
      • 实时系统与批处理系统和分时系统的区别
        • 专用系统:许多实时系统是专用系统,而批处理与分时系统通常是通用系统。
        • 实时控制:实时系统用于控制实时过程,要求对外部事件的迅速响应,具有较强的中断处理机构。
        • 高可靠性:实时系统用于控制重要过程,要求高度可靠,具有较高冗余。如双机系统。
        • 事件驱动和队列驱动:实时系统的工作方式:接受外部消息,分析消息,调用相应处理程序进行处理。
        • 与通用系统结合成通用实时系统:实时处理前台作业,批处理为后台作业。

1.3.4 多处理操作系统

1.3.5 网络操作系统(NOS, Network Operating System)

网络操作系统是在通常操作系统功能的基础上提供网络通信和网络服务功能的操作系统。网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合

网络功能与操作系统的结合程度是网络操作系统的重要性能指标。早期的作法是通常操作系统附加网络软件,过渡到网络功能成为操作系统的有机组成部分。它们的区别在于:网络功能的强弱、使用是否方便等。

    • 网络操作系统的功能
      • 通常操作系统的功能:处理机管理、存储器管理、设备管理、文件管理等;
      • 网络通信功能:通过网络协议进行高效、可靠的数据传输;
      • 网络资源管理:协调各用户使用;
      • 网络服务:文件和设备共享,信息发布;
      • 网络管理:安全管理、故障管理、性能管理等;
      • 互操作:直接控制对方比交换数据更为困难;

1.3.6 分布式操作系统(Distributed Operating System)

分布式系统:处理和控制的分散(相对于集中式系统)

分布式系统是以计算机网络为基础的,它的基本特征是处理上的分布,即功能和任务的分布。

分布式操作系统的所有系统任务可在系统中任何处理机上运行,自动实现全系统范围内的任务分配自动调度各处理机的工作负载。

    • 分布式操作系统与网络操作系统的比较
      • 耦合程度
        • 分布式系统是紧密耦合系统:分布式OS是在各机上统一建立的"OS同质",直接管理CPU、存储器和外设;统一进行全系统的管理;
        • 网络通常容许异种OS互连,各机上各种服务程序需按不同网络协议"协议同质"。
      • 并行性
        • 分布式OS可以将一个进程分散在各机上并行执行"进程迁移"
        • 网络则各机上的进程独立
      • 透明性:用户是否知道或指定资源在哪个机器上(如CPU、内存或外设)。
        • 分布式系统的网络资源调度对用户透明,用户不了解所占有资源的位置;
        • 网络操作系统中对网络资源的使用要由用户明确指定
      • 健壮性:分布式系统要求更强的容错能力(工作时系统重构)

1.3.7 个人计算机操作系统(Personal Computer Operating System)

针对单用户使用的个人计算机进行优化的操作系统。

    • 个人计算机操作系统的特征
      • 应用领域:事务处理、个人娱乐,
      • 系统要求:使用方便、支持多种硬件和外部设备(多媒体设备、网络、远程通信)、效率不必很高。
    • 常用的个人计算机操作系统
      • 单用户单任务:MS DOS
      • 单用户多任务:OS/2, MS Windows 3.x, Windows 95, Windows NT, Windows 2000 Professional
      • 多用户多任务:UNIX(SCO UNIX, Solaris x86, Linux, FreeBSD)

1.4 操作系统的特征

    • 1.4.1 操作系统的特征

      • 并发(concurrency)(并发和共享是两个最基本的特征,二者互为存在条件)
        • 多个事件在同一时间间隔内发生(宏观上同时发生,微观上交替发生)。操作系统是一个并发系统,各进程间的并发,系统与应用间的并发。操作系统要完成这些并发过程的管理。并行(parallel)是指在同一时刻发生。
        • 并行:指两个或多个事件在同一时刻同时发生
        • 在多道程序处理时,宏观上并发,微观上交替执行(在单处理器情况下)。
        • 程序的静态实体是可执行文件,而动态实体是进程(或称作任务),并发指的是进程。
      • 共享(sharing)
        • 多个进程共享有限的计算机系统资源。操作系统要对系统资源进行合理分配和使用。资源在一个时间段内交替被多个进程所用。
        • 互斥共享(如音频设备):资源分配后到释放前,不能被其他进程所用。一个时间段内只允许一个进程访问该资源
        • 同时共享:允许一个时间段内由多个进程“同时”对他们访问
        • 同时访问(如可重入代码,磁盘文件)
        • 资源分配难以达到最优化
      • 虚拟(virtual)
        • 一个物理实体映射为若干个对应的逻辑实体——分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。
        • CPU--每个用户(进程)的"虚处理机"
        • 存储器--每个进程都占有的地址空间(指令+数据+堆栈)
        • 显示设备--多窗口或虚拟终端(virtual terminal)
      • 异步性(asynchronism)
        • 也称不确定性,指进程的执行顺序和执行时间的不确定性;
        • 进程的运行速度不可预知:分时系统中,多个进程并发执行,"时走时停",不可预知每个进程的运行推进快慢
        • 判据:无论快慢,应该结果相同--通过进程互斥和同步手段来保证
        • 难以重现系统在某个时刻的状态(包括重现运行中的错误)
        • 性能保证:实时系统与分时系统相似,但通过资源预留以保证性能
      • 并发与共享的关系

并发性指计算机系统中同时存在着多个运行着的程序。

共享性是指系统中的资源可供内存中多个并发执行的进程共同使用。

    • 1.4.2 操作系统的服务

      • 服务类型
        • 程序执行和终止(包括分配和回收资源)
        • I/O操作
        • 文件系统操作
        • 通信:本机内,计算机之间(通常通信服务的使用者为进程,而不是笼统说"主机")
        • 配置管理:硬件、OS本身、其他软件
        • 差错检测
      • 服务提供方式:系统命令和系统调用

1.5 操作系统的功能(系统资源的管理者)

    • 1.5.1 处理机管理

完成处理机资源的分配调度等功能。处理机调度的单位可为进程线程

    • 进程控制:创建、撤销、挂起、改变运行优先级等--主动改变进程的状态
    • 进程同步协调并发进程之间的推进步骤,以协调资源共享;--交换信息能力弱
    • 进程通信:进程之间传送数据,以协调进程间的协作;--交换信息能力强,也可以用来协调进程之间的推进
    • 进程调度:作业和进程的运行切换,以充分利用处理机资源和提高系统性能;--未必是进程控制操作所引起(可能是时间片轮转、I/O操作)
      • 同一类型内的公平性、高效率(吞吐量大)、作业周转时间等
    • 1.5.2 存储管理

管理目标:提高利用率方便用户使用、提供足够的存储空间、方便进程并发运行。

    • 存储分配与回收
    • 存储保护:保证进程间互不干扰、相互保密;如:访问合法性检查、甚至要防止从"垃圾"中窃取其他进程的信息;
    • 地址映射(变换):进程逻辑地址到内存物理地址的映射;
    • 内存扩充(覆盖、交换和虚拟存储):提高内存利用率扩大进程的内存空间
    • 1.5.3 设备管理

设备管理的目标是:方便的设备使用、提高CPU与I/O设备利用率

    • 设备操作:利用设备驱动程序(通常在内核中)完成对设备的操作。还需处理外设的IRQ。
    • 设备独立性(device independence):提供统一的I/O设备接口,使应用程序独立于物理设备,提高可适应性;在同样的接口和操作下完成不同的内容(如FAX Modem作为Windows上的打印机设备)。
    • 设备分配与回收:在多用户间共享I/O设备资源
      • 虚拟设备(virtual device):设备由多个进程共享,每个进程如同独占。
    • 缓冲区管理匹配CPU和外设的速度,提高两者的利用率(单缓冲区、双缓冲区和公用缓冲区)
    • 1.5.4 信息管理(文件管理)

解决软件资源存储共享保密保护

    • 文件存储空间管理:解决如何存放信息,以提高空间利用率读写性能
    • 目录管理:解决信息检索问题。文件的属性(如文件名)、单一副本赋予多文件名
    • 文件的读写管理和存取控制:解决信息安全问题。系统设口令"哪用户"、用户分类"哪用户组"、文件权限"针对用户或用户组的读写权"
    • 软件管理:软件的版本、相互依赖关系、安装拆除
    • 1.5.5 用户接口

目标:提供一个友好的用户访问操作系统的接口。操作系统向上提供两种接口:

    • 系统命令:供用户用于组织和控制自己的作业运行。命令行、菜单式或GUI"联机";命令脚本"脱机"
    • 编程接口:供用户程序和系统程序调用操作系统功能。系统调用和高级语言库函数;

1.6 常用的操作系统

    • 1.6.1 MS DOS
    • 1.6.2 MS Windows 3.x, Windows 95, Windows NT, Windows 2000
    • 1.6.3 UNIX

1.7 操作系统的运行机制与体系结构

    • 指令:一条高级语言的代码翻译过来可能会对应多条指令(CPU能识别、执行的最基本命令)
    • 1.7.1 运行机制

      • 指令
        • 特权指令:不允许用户程序使用(eg:内存清零指令)(需要在处理机状态下的核心态下执行
        • 非特权指令:(eg:普通运算指令)(需要在处理机状态下的核心态或用户态下执行)
      • 处理器状态(用程序状态寄存器PSW中的某个标志位来标识处理器处于什么状态)
        • 核心态:特权指令和非特权指令都可以执行
        • 用户态:此时CPU只能执行非特权指令
        • 用户态 --> 核心态的切换是通过“中断”唯一实现的。
      • 程序
        • 内核程序:操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。(需要使用核心态的程序
        • 应用程序:为了保证系统能安全运行,普通应用程序只能执行非特权指令,运行在用户态
    • 1.7.2  操作系统内核

      • 内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。
      • 实现操作系统内核功能的那些程序就是内核程序。
    • 1.7.3 操作系统的体系结构

    • 大内核:
    • 微内核:
    • 1.8 中断和异常

      • 1.8.1 中断机制的诞生

        • 实现多道程序并发执行
        • 本质:发生中断就意味着需要操作系统介入,开展管理工作
      • 1.8.2 中断的概念和作用

        • 1.  当中断发生时,CPU立即进入核心态
        • 2.当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
        • 3.对于不同的中 断信号,会进行不同的处理
        • 发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换、分配I/o设备等)需要使用特权指令,因此CPU要从用户态转为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行
      • 1.8.3 中断的分类

        • 另一种分类方式:
      • 1.8.4 外中断的处理过程

    • 1.9 系统调用

      • 1.9.1 什么是系统调用,有何作用?

        • 操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。
        • 应用程序通过系统调用请求操作系统的服务。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作〈如存储分配、I/o操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。
      • 1.9.2 系统调用和库函数的区别

      • 1.9.3 系统调用背后的过程

        • 系统调用发生在用户态,对系统调用的处理发生在核心态
        • 执行陷入指令会产生内中断,使处理器从用户态进入核心态
    • 小结

      • OS地位、目的、作用和组成
      • OS发展:主要动力
      • OS分类:批处理、分时、实时、(通用)、多处理、网络和分布式、PC
      • OS的结构:模块--层次--Client-Server
      • OS的特征和服务
      • OS功能

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hdq1745/article/details/120238511

智能推荐

软件测试流程包括哪些内容?测试方法有哪些?_测试过程管理中包含哪些过程-程序员宅基地

文章浏览阅读2.9k次,点赞8次,收藏14次。测试主要做什么?这完全都体现在测试流程中,同时测试流程是面试问题中出现频率最高的,这不仅是因为测试流程很重要,而是在面试过程中这短短的半小时到一个小时的时间,通过测试流程就可以判断出应聘者是否合适,故在测试流程中包含了测试工作的核心内容,例如需求分析,测试用例的设计,测试执行,缺陷等重要的过程。..._测试过程管理中包含哪些过程

政府数字化政务的人工智能与机器学习应用:如何提高政府工作效率-程序员宅基地

文章浏览阅读870次,点赞16次,收藏19次。1.背景介绍政府数字化政务是指政府利用数字技术、互联网、大数据、人工智能等新技术手段,对政府政务进行数字化改革,提高政府工作效率,提升政府服务质量的过程。随着人工智能(AI)和机器学习(ML)技术的快速发展,政府数字化政务中的人工智能与机器学习应用也逐渐成为政府改革的重要内容。政府数字化政务的人工智能与机器学习应用涉及多个领域,包括政策决策、政府服务、公共安全、社会治理等。在这些领域,人工...

ssm+mysql+微信小程序考研刷题平台_mysql刷题软件-程序员宅基地

文章浏览阅读219次,点赞2次,收藏4次。系统主要的用户为用户、管理员,他们的具体权限如下:用户:用户登录后可以对管理员上传的学习视频进行学习。用户可以选择题型进行练习。用户选择小程序提供的考研科目进行相关训练。用户可以进行水平测试,并且查看相关成绩用户可以进行错题集的整理管理员:管理员登录后可管理个人基本信息管理员登录后可管理个人基本信息管理员可以上传、发布考研的相关例题及其分析,并对题型进行管理管理员可以进行查看、搜索考研题目及错题情况。_mysql刷题软件

根据java代码描绘uml类图_Myeclipse8.5下JAVA代码导成UML类图-程序员宅基地

文章浏览阅读1.4k次。myelipse里有UML1和UML2两种方式,UML2功能更强大,但是两者生成过程差别不大1.建立Test工程,如下图,uml包存放uml类图package com.zz.domain;public class User {private int id;private String name;public int getId() {return id;}public void setId(int..._根据以下java代码画出类图

Flume自定义拦截器-程序员宅基地

文章浏览阅读174次。需求:一个topic包含很多个表信息,需要自动根据json字符串中的字段来写入到hive不同的表对应的路径中。发送到Kafka中的数据原本最外层原本没有pkDay和project,只有data和name。因为担心data里面会空值,所以根同事商量,让他们在最外层添加了project和pkDay字段。pkDay字段用于表的自动分区,proejct和name合起来用于自动拼接hive表的名称为 ..._flume拦截器自定义开发 kafka

java同时输入不同类型数据,Java Spring中同时访问多种不同数据库-程序员宅基地

文章浏览阅读380次。原标题:Java Spring中同时访问多种不同数据库 多样的工作要求,可以使用不同的工作方法,只要能获得结果,就不会徒劳。开发企业应用时我们常常遇到要同时访问多种不同数据库的问题,有时是必须把数据归档到某种数据仓库中,有时是要把数据变更推送到第三方数据库中。使用Spring框架时,使用单一数据库是非常容易的,但如果要同时访问多个数据库的话事件就变得复杂多了。本文以在Spring框架下开发一个Sp..._根据输入的不同连接不同的数据库

随便推点

EFT试验复位案例分析_eft电路图-程序员宅基地

文章浏览阅读3.6k次,点赞9次,收藏25次。本案例描述了晶振屏蔽以及开关电源变压器屏蔽对系统稳定工作的影响, 硬件设计时应考虑。_eft电路图

MR21更改价格_mr21 对于物料 zba89121 存在一个当前或未来标准价格-程序员宅基地

文章浏览阅读1.1k次。对于物料价格的更改,可以采取不同的手段:首先,我们来介绍MR21的方式。 需要说明的是,如果要对某一产品进行价格修改,必须满足的前提条件是: ■ 1、必须对价格生效的物料期间与对应会计期间进行开启; ■ 2、该产品在该物料期间未发生物料移动。执行MR21,例如更改物料1180051689的价格为20000元,系统提示“对于物料1180051689 存在一个当前或未来标准价格”,这是因为已经对该..._mr21 对于物料 zba89121 存在一个当前或未来标准价格

联想启天m420刷bios_联想启天M420台式机怎么装win7系统(完美解决usb)-程序员宅基地

文章浏览阅读7.4k次,点赞3次,收藏13次。[文章导读]联想启天M420是一款商用台式电脑,预装的是win10系统,用户还是喜欢win7系统,该台式机采用的intel 8代i5 8500CPU,在安装安装win7时有很多问题,在安装win7时要在BIOS中“关闭安全启动”和“开启兼容模式”,并且安装过程中usb不能使用,要采用联想win7新机型安装,且默认采用的uefi+gpt模式,要改成legacy+mbr引导,那么联想启天M420台式电..._启天m420刷bios

冗余数据一致性,到底如何保证?-程序员宅基地

文章浏览阅读2.7k次,点赞2次,收藏9次。一,为什么要冗余数据互联网数据量很大的业务场景,往往数据库需要进行水平切分来降低单库数据量。水平切分会有一个patition key,通过patition key的查询能..._保证冗余性

java 打包插件-程序员宅基地

文章浏览阅读88次。是时候闭环Java应用了 原创 2016-08-16 张开涛 你曾经因为部署/上线而痛苦吗?你曾经因为要去运维那改配置而烦恼吗?在我接触过的一些部署/上线方式中,曾碰到过以下一些问题:1、程序代码和依赖都是人工上传到服务器,不是通过工具进行部署和发布;2、目录结构没有规范,jar启动时通过-classpath任意指定;3、fat jar,把程序代码、配置文件和依赖jar都打包到一个jar中,改配置..._那么需要把上面的defaultjavatyperesolver类打包到插件中

VS2015,Microsoft Visual Studio 2005,SourceInsight4.0使用经验,Visual AssistX番茄助手的安装与基本使用9_番茄助手颜色-程序员宅基地

文章浏览阅读909次。1.得下载一个番茄插件,按alt+g才可以有函数跳转功能。2.不安装番茄插件,按F12也可以有跳转功能。3.进公司的VS工程是D:\sync\build\win路径,.sln才是打开工程的方式,一个是VS2005打开的,一个是VS2013打开的。4.公司库里的线程接口,在CmThreadManager.h 里,这个里面是我们的线程库,可以直接拿来用。CreateUserTaskThre..._番茄助手颜色

推荐文章

热门文章

相关标签