数据库作业第二章第三章

数据库作业第二章第三章
数据库作业第二章第三章

第二章

一、思考题

1.什么是PSW,它有何作用?

psw:操作系统将程序运行时的一组动态信息会聚在一起,称为程序的状态字

作用:实现程序状态的保护和恢复

3.为什么要把机器指令分成特权指令和非特权指令?

应用程序在执行有关资源管理的机制指令时易于导致系统混乱,造成系统或用户信息被破坏,因此在多道程序设计环境中,从资源管理和控制程序执行的角度出发,必须把指令系统中的指令分成这两类。

4.试分别从中断事件的性质、来源和实现角度对其进行分类

从中断事件的性质和激活的手段来说,可以分成两类:

(1)强迫性中断事件强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为:

机器故障中断事件。

程序性中断事件。

外部中断事件。

输入输出中断事件。

(2)自愿性中断事件自愿性中断事件是正在运行的程序所期待的事件。

按事件来源和实现手段分类:

(1)硬中断;硬中断分为外中断(中断、异步中断)和内中断(异常、同步中断);

(2)软中断;软中断分为信号和软件中断。

9.什么是系统调用?试述API、库函数及系统调用间的关系。叙述系统调用执行流程。

由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。系统调用是一种API,是应用程序同系统之间的接口。

库函数是语言本身的一部分,可以调用多个系统调用;系统调用(函数)是内核提供给应用程序的接口,属于系统的一部分,可以认为是某种内核的库函数;操作系统API是有系统调用(函数)的集合(也就是将许多的系统调用封装在了一起)。

一是编写系统调用服务例程;二是设计系统调用入口地址表,每个入口地址都指向一个系统调用的服务例程,有的还包括系统调用自带的参数个数;三是陷阱处理机制,需要开辟现场保护区,以保存发生系统调用时应用程序的处理器现场。应用程序执行系统调用,产生中断指向内核态,进入陷阱处理程序,它将按功能查询入口地址表,并转至对应服务例程执行,完成后退出中断,返回应用程序断点继续运行。

14.简述Linux的快中断和慢中断

快中断:快中断处理仅要保存被常规C函数修改的寄存器;中断处理时会屏蔽所有其他中断;中断处理完毕后,通常恢复现场返回被中断的进程继续执行(是非抢先式调度)。

慢中断:处理慢中断前需保存所有寄存器的内容,中断处理时,不屏蔽其他中断信号,慢中断处理完毕后,通常不立即返回被中断的进程,而是进入调度程序重新调度,调度结果未必是被中断的进程运行(是抢先式调度)。

17.讨论Linux系统的tasklet、work queue和softirq任务延迟处理进制。

(1)tasklet:能更好支持SMP,它基于软中断来实现,但比软中断接口简单,锁保护要求低;softirq保留给执行频率及时间要求特高的下半部分使用(如网络和SCSI),多数场合下可使用tasklet。

使用tasklet的步骤:声明、编程、调度。

BH全局串行处理,不适应SMP环境,而不同tasklet可同时运行于不同CPU上,当然,系统保证相同tasklet不会同时在不同CPU上运行,在这种情形下,tasklet就不需要是可重入的。

在新版Linux中,tasklet是建议的异步任务延迟执行机制。

(2)work queue:Linux 2.5内核引入-工作队列,它把一个任务延迟,并交给内核线程去完成,且该任务总是在进程上下文中执行,通过工作队列执行的代码能占尽进程上下文的优势,最重要的是工作队列允许重新调度及阻塞。

默认的工作者线程:event/n

如果延迟执行的任务需要阻塞,需要获取信号量或需要获得大量主存时,那么,可选择工作队列,否则可使用tasklet或softirq。

(3)Sorfirq:(软中断)是一种软中断机制,亦即是一种信号机制,中断处理程序在其返回前标记下半部分,让其稍后执行;它又是一个框架,纳入了tasklet及为网络操作专门设计的软中断。

18.什么是进程?计算机系统中为什么要引入进程?

(1)进程定义:

进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位

(2)刻画系统的动态性,发挥系统的并发性,提高资源利用率。

程序是并发执行的,即不是连续而是走走停停的。程序的并发执行引起资源共享和竞争问题,执行的程序不再处在封闭环境中。

“程序”自身只是计算任务的指令和数据的描述,是静态概念无法刻画程序的并发特性,系统需要寻找一个能描述程序动态执行过程的概念,这就是进程。

它能解决系统的“共享性”,正确描述程序的执行状态。程序与程序的执行不再一一对应

19.进程有哪些主要属性?试解释之

?共享性:同一程序同时运行于不同数据集合上时构成不同进程,即多个不同进程可执行相同的程序,所以进程和程序不是一一对应的。

?动态性:进程是程序在数据集合上的一次执行过程,是动态概念,同时它有生命周期,由创建而产生、由调度而执行、由事件而等待、由撤销而消亡;而程序是一组有序

指令序列,是静态概念,所以程序作为系统中的一种资源是永远存在的

?独立性:每个进程是操作系统中的一个独立实体,有自己的虚存空间,程序计数器和内部状态;

?制约性:进程因共享进程资源或协同工作产生相互制约关系,造成进程执行速度的不可预测,必须对进程的执行次序或相对执行速度加以协调;

?并发性:多个进程的执行在时间上可以重叠,在单处理器系统中可并发执行;在多处理器环境中可并发执行。因此,并发的执行是可被打断的,或者说,进程执行完一条指

令后在执行下一条指令前可能被迫让出处理器,由其它若干个进程执行若干条指令

后才能再次获得处理器执行。

20.进程最基本的状态有哪些?哪些事件可能引起不同状态间的转换?

运行态、就绪态、等待态

(1)运行态-等待态:运行进程等待使用某种资源或者某事件发生

(2)等待态-就绪态:所需资源得到满足或某事件已经完成

(3)运行态-就绪态:运行时间片到时或出现更高优先级的进程,当前进程被迫让出处理器。

(4)就绪态-运行态:当CPU空闲时,调度程序选中一个就绪进行执行

21.五态模型的进程中,新建态和终止态的主要作用是什么?

新建态:对应于进程被创建时的状态,进程尚未进入就绪队列,对于进程管理非常有用。终止态:进程完成任务到达正常结束点或者因错误而终止,或被操作系统及有终止权的进程时所处的状态。进入终止态程序不再执行,等待操作系统进行善后处理。

24.什么是进程的挂起状态?列出挂起进程的主要特征。

(1)为了让某些进程暂时不参与低级调度,释放它占有的资源,将其置于磁盘对换区中,以平滑系统负荷的目的而需引入挂起态;

(2)特征:

?该进程不能立即被执行。

?挂起进程可能会等待事件,但所等待事件是独立于挂起条件的,事件结束并不能导致进程具备执行条件。

?进程进入挂起状态是由于操作系统、父进程或进程本身阻止它的运行。

?结束进程挂起状态的命令只能通过操作系统或父进程发出

25.试述组成进程的基本要素,并说明其作用。

控制块:存储进程的标志信息,现场信息和控制信息;

程序块:规定进程的一次运行所应完成的功能;

核心块:用来保护中断/异常现场,保存函数调用的参数和返回地址;

数据块:存放各种私有数据

26.何谓进程控制块(PCB)?它包含哪些基本信息?

(1)进程控制块P C B ,是操作系统用于记录和刻划进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括进程执行时的情况,以及进程让出处

理器后所处的状态、断点等信息。

(2)进程控制块包含三类信息

标识信息

现场信息

控制信息

28.请列举组织进程队列的各种方法

通用队列组织方式:

线性方式

链接方式

索引方式

30.什么是进程上下文?简述其主要内容

操作系统中把进程物理实体和支持进程运行的环境合称为进程上下文。

当系统调度新进程占有处理器时,新老进程随之发生上下文切换。进程的运行被认为是上下文中执行。

进程上下文组成

?用户级上下文

?系统级上下文

?寄存器上下文

31.什么是进程切换?试述进程切换的主要步骤

(1)进程切换是让处于运行态的进程中断运行,让出处理器,这时要做一次进程上下文切换、即保存老进程状态而装入被保护了的新进程的状态,以便新进程运行

(2)保存被中断进程的处理器现场信息

修改被中断进程的进程控制块有关信息,如进程状态等

把被中断进程的PCB加入有关队列

选择下一个占有处理器运行的进程

修改被选中进程的PCB的有关信息

根据被选中进程设置操作系统用到的地址转换和存储保护信息

根据被选中进程恢复处理器现场

32.什么是模式切换?它与进程切换之间有何区别?

模式切换即CPU模式切换,是从用户态到核心态或者核心态到用户态的转换是CPU模式切换,此时仍然在同一个进程中运行。模式切换不同于进程切换,它不一定会引起进程状态的转换,也不一定会引起进程切换,在完成系统调度服务或中断处理之后,可通过逆向模式来恢复被中断进程的运行。

35.在操作系统引入进程概念后,为什么还有引入线程的概念?

操作系统中再引入线程,则是为了减少程序并发执行时所付出的时空开销,使得并发粒度更细、并发性更好。

38.试从调度、并发性、拥有资源和系统开销等四个方面对传统进程和多线程进程进行比较。

40.试对下列系统任务进行比较:

(1)创建一个线程和创建一个进程

(2)两个进程间通信与同一进程中的两个线程间通信

(3)同一进程中的两个线程的上下文切换和不同进程中两个线程的上下文切换。

43.列举线程的组织方式和应用场合。

答:线程组织方式:(1)调度员/工作者方式

(2)组模式

(3)流水线模式

应用场合:(1)前台和后台工作

(2)C/S应用模式

(3)异步处理

(4)加快执行速度

(5)设计用户接口

45.试分析Linux系统的进程和线程。

进程描述符task_struct中包含:进程标识、链接信息、调度信息、文件信息、虚存空间信息、信号处理信息等。

Linux中认为线程就是共享地址空间及其他资源的进程,故并没有单独为线程定义数据结构,有一套在用户模式下运行的线程库-pthread,但每个线程都拥有惟一隶属于自己的task_struct

48.处理器调度分为哪几种类型?简述各种调度的主要任务。

答:(1)高级调度:在多道处理操作系统中,从输入系统的一批作业中按照预定的调度策略挑选若干个作业进入主存,为其分配所需资源,并创建作业的相应用户进程后便完成启动阶段的高级调度任务;

(2)中级调度:根据主存资源决定主存中所能容纳的进程数目,并根据进程的当前状态来决定辅助存储器和主存中的进程的对换;

(3)低级调度:根据某种原则决定就绪队列中的哪个进程或内核级线程获得处理器,并将处理器让出给它使用。

49.试述衡量一个处理器调度算法优劣的主要任务。

根据调度机制的三个逻辑功能程序模块组成来评判:

(1)队列管理程序

(2)上下文切换程序

(3)分派程序

52.解释:(1)作业周转时间;(2)作业带权周转时间;(3)相应时间;(4)吞吐率。

答:(1)作业周转时间:批处理用户从系统提交作业开始,到作业完成为止的时间间隔;(2)作业带权周转时间:在操作系统中,带权周转时间反映作业(或进程)长短问题,带权周转时间越大,作业(或进程)越短;带权周转时间越小,作业(或进程)越长。

(3)响应时间:从交互式进程提交一个请求至得到响应之间的时间间隔称为响应时间。(4)吞吐率:单位时间CPU处理作业的个数。

53.试述作业、进程、线程和程序之间的关系。

进程是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并由处理器执行的一个实体;由单一顺序的执行显示,一个当前状态和一组相关的系统资源所描述的活动单元。

线程(thread, 台湾称执行绪)是"进程"中某个单一顺序的控制流。也被称为轻量进程(lightweight processes)。计算机科学术语,指运行中的程序的调度单位。

作业:用户在一次运算过程中,或一次事务处理中要求计算机所做的全部工作的总和。

进程是在自身的虚拟地址空间正在运行的一个程序

程序运行产生进程

程序是一组静态的指令集,不占用系统运行资源

进程是随时都可能发生变化的,动态的。占用系统运行资源的程序

一个程序可以产生多个进程

作业嘛,是一个或多个正在执行的相关进程。一般来讲当进程与作业控制相关联时才被称为作业

55.在时间片轮转低度调级算法中,根据哪些因素确定时间片的长短?

答:进程数目、切换开销、系统效率及响应时间等多方面因素。

57.为什么多级反馈队列算法能较好地满足各种用户的需求?

答:高级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调入内存。低级调度是保存处理机的现场信息,按某种算法先取进程,再把处理器分配给进程。引入中级调度的主要目的是为了提高内存利用率和系统吞吐量。使那些暂时不能运行的进程

不再占用内存资源,将它们调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。

58.分析静态优先数和动态优先数低级调度算法各自的优缺点。

答:静态优先级在进程或线程创建时确定,且生命周期中不再改变,可按照外部指定和内部指定方法计算静态优先级。静态优先级算法的实现简单,但会产生饥饿现象,使某些低优先级进程或线程无限期对的被推迟进行。

动态优先级使各进程或线程优先级随时间而改变,克服了静态优先级的饥饿问题,等待时间足够长的进程或线程会因其优先级不断提高而被调度运行。

62.在多级反馈队列中,对不同的队列分配大小不同的时间片值,其意义何在?

应用题

1.下列指令中,哪些只能在内核态运行?

(1)读时钟日期(2)访管指令(3)设时钟日期(4)加载PSW

(5)置特殊寄存器(6)改变存储器映像图(7)启动I/O指令

4.在按照动态优先数调度进程的系统中,每个进程的优先数需定时重新计算。在处理器不断在进程之间交替的情况下,重新计算进程优先数的时间从何而来?

许多操作系统重新计算进程的优先数在时钟中断处理例程中进行,由于中断是随机碰到哪个进程,就插入哪个进程中运行处理程序,并把处理时间记在这个进程的账上。

7.

8.

10.按照最短作业优先的算法可以使平均响应时间最短。X取值不定,按照以下情况讨论:1)x≤3 次序为:x,3,5,6,9 2)

3

5

6

9

11.

( l ) FCFS 调度算法

( 2 )优先级调度算法

( 3 )时间片轮转法

按次序ABCDEBCDECDEDEE 轮转执行。12.

16.

20.

21.

A 10:00 12:40 160

B 10:20 10:50 30

C 10:30 11:50 80

D 10:50 13:00 130

E 12:00 12:20 80

F 11:50 1200 50

平均作业周转时间=(160+30+80+130+80+50)/6=88.33

26.

(1) Job4最后一个完成

(2)各个作业的平均周转时间为:(90+40+120+120+30)/5 = 80

各个作业的平均带权周转时间为:(1.8+1+2.4+6+3)/5 = 2.84

32.循环周期为4*100+400=800ms

A类进程需要2*1000/100=20个时间片的执行时间,B类进程需要2*1000/400=5个时间片的执行时间,

A类进程的平均周转时间为20*0.8=16s

B类进程的平均周转时间为5*0.8=4s

第三章

思考题:

一:试述顺序程序设计的特点,以及采用顺序程序设计的优缺点。

答:顺序程序设计的特性:

(1):执行的顺序性。一个程序在处理器上严格按序执行的,每一个操作必须在下一个操作开始之前结束。

(2):环境的封闭性。运行程序独占全机资源,资源状态只能由此程序本身决定和改变,也不受外界因素的影响。

(3):结果的确定性。程序在执行过程中允许出现中断,但这种中断不会对程序的最终结果产生影响。

(4):过程的可在现行。程序针对同一个数据结构的执行过程在下一次执行时会重现,即重复执行的程序会获得相同的执行过程和计算结果。

程序顺序执行与其速度无关,即程序的最终输出仅与初始输入数据有关,而与时间无关。优点:为程序的编制和调试带来很大方便。缺点:计算机系统的效率不高。

二:试述并发程序设计的特点,以及采用并发程序设计的优缺点。

答:特性:从宏观上看:并发性反映一个时间段内有几个程序都处于运行但运行尚未结束的状态;从微观上看:任一时刻仅有一个程序的一个操作在处理器上执行。程序的并发执行产生资源共享的需求,从而使程序失去封闭性、顺序性、确定性、可在现行。

优点:

(1):若为单处理系统,可以有效地利用资源,让处理器和设备、设备和设备同时工作,充分发挥硬部件的并行工作能力;

(2):若为多处理系统,可让进程在不同处理器上物理的并行工作,加快计算速度;

(3):简化程序设计任务,一般来说,编制并发执行的小程序进度快,容易保持正确性。可见,计算机硬部件能并行工作仅具备提高效率的可能性而并行工作的实现还需要通过并发程序设计和操作系统引入并发技术来发挥。

五:解释并发进程的无关性和交互性。

答:无关性:无关的并发进程是指他们分别在不同的变量集合上操作,一个进程的执行与其他并发进程的进展无关,即一个进程不会改变另一个与其并发执行的晋城的变量。

交互性:交互的并发进程共享某些变量,一个进程的执行可能会影响其他进程的执行结果,交互的并发进程之间具有制约关系。

六:并发进程的执行可能产生于时间有关的错误,试各举一例来说明于时间有关错误的两种表现形式。

答:时间有关的错误有两种形式,一是结果不唯一,二是永远等待。

结果不唯一:飞机售票问题。

永远等待:内存资源的管理问题。

八:试述进程的互斥和同步两个概念之间的异同。

答:进程互斥是指若干进程因相互争夺独占性资源而产生的竞争制约关系。

进程同步是指为完成共同任务的并发进程基于某个条件来协调其活动,因为需要在某些位置上排定执行的先后顺序而等待、传递顺序或消息所产生的协调制约关系。进程互斥关系是一种特殊的进程同步关系,即逐次使用进程同步资源,也是对进程使用资源的次序的一种协调。

九:什么是临界区和临界资源?临界区管理的基本规则是什么?

答:并发进程中与共享变量有关的程序称为临界区。共享变量所代表的资源称为临界资

源。

临界区管理的基本规则:

(1):一次至多只有一个进程进入临界区内执行。

(2):如果已有近程在临界区中,试图进入此临界区的其他程序应等待。

(3):进入临界区内的进程应在有限时间内退出,以便让等待队列中的一个进程进入。

可把临界区的调度原则总结为三句话:互斥使用,有空让进;忙碌要等,有限等待;择一而入,算法可行。

十二:那些硬件设施可以实现临界区的管理,简述其的用法。

答:1:关中断。用法:在进程进入临界区时关中断,进程进入临界区时开中断。终端被关闭后,时钟中断也被屏蔽,进程上下文切换都是由中断事件引起的,这样进程的执行再也不会被打断,因此采用关中断、开中断的办法就能确保并发进程互斥的进入临界区。

2:测试并设置指令。用法:使用硬件所提供的“测试并设置“机器指令TS(Test and Set),可把这条指令看做函数,他有布尔型参数x和返回条件码,当TS(&x)测到x值为true 时则置x为false,且根据所测试到的x值形成条件码。

3:兑换指令。用法:为每个临界区设置布尔型锁变量。

十三:什么是信号量?如何对其进行分类?

答:信号量:将交通管制中的多种颜色的信号灯管理方法引入操作系统,让多个进程通过特殊变量展开交互。一个进程在某一关键点上被迫停止执行直至接受到对应的特殊变量值,通过这一措施,任何复杂的进程交互要求均可达到满足,这种特殊变量就是信号量。

对其进行分类:按用途分有两种:公用信号量;私有信号量。按取值分为两种:二值信号量;一般信号量,又称计数信号量。

十五:何谓管程?他有什么属性?

答:管程是指吧分散在各个进程之间的临界区集中起来管理,并把共享资源用数据用数据结构抽象的表示,由于临界区是访问资源的代码段,建立一个“秘书“程序管理到来的访问。管程与进程具有同等的表达能力。

管程的属性:进程调用管程的过程是有一定的限制。

(1):共享性。管程中的移出过程可悲所有要调用管程的进程共享。

(2):安全性。管程的局部变量只能由此管理的过程访问,不允许进程访问或其他管程来直接访问,一个管程的过程也不应该访问非局部于他的变量。

(3):互斥性。在任意时刻共享资源的进程可以访问管程中的管理此资源的过程,但最多只有一个调用者能够真正地进入管程,其他调用者必须等待直至管程可用。

十六:试述管程中条件变量的含义和作用。

答:含义:条件变量是出现在关城内的一种数据结构,且只有在管程中才能被访问,其功能是进程可以在该条件变量上等待或被唤醒他对管程内的所有过程是全局的,只能通过两个原语操作来控制它。

十七:试比较管程与进程的不同点。

答:(1):管程定义的是公用数据结构,而进程所定义的是私有数据结构;

(2):管程把共享变量上的同步操作集中起来统一管理,而临界区却分散在每个进程中;

(3):管程是为解决进程共享资源的互斥而建立的,而进程是为战友系统资源和实现系统并发性而引入的;

(4):管程被欲使用共享资源的所有进程所调用,管程和调用它的进程不能明确并行工作;而进程之间能够并行工作,并发性是其固有特性。

(5):管程可作为语言或操作系统成分,不必创建或撤销;而进程有生命周期,由创建产生至撤销便消失。

十八:已经有信号量和pv操作可用作同步工具,为什么还要有消息传递机制?

答:进程同步本质上是一种仅传送信号的进程通信,通过修改信号量,进程之间可以建立联系,相互协同运行和协同工作,但他缺乏传递数据的能力。在多任务系统中,可由多个进程分工协作完成同一任务,于是他们需要共享一些数据,和相互交换信息,在很多场合需要交换大批量数据可以通过通信机制来完成。

二十二:试述信号通信机制及其实现。

答:(1):每个进程task_struct结构中signal域专门保存接收到的信号,内核根据所发生的时间产生相应的信号并发送给接收数据。

(2):进程task_struct结构中的blocked是信号屏蔽标记,相当于中断屏蔽寄存器。

(3):信号处理函数的入口存放在进程task_struct的sigaction[]数组中,利用sigction 函数为进程设置信号处理函数。

(4):函数sigaction(signo,act,oldacd)为指定信号设置处理函数。

(5):函数kill(pid,sig)用来向指定的进程或进程组发送指定信号。

(6):信号检测和相应总发生在系统空间。

23:试述进程的低级通信机制以及其高级通信机制。

24:什么是死锁?什么是饥饿?试举生活中的例子加以说明。

答:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期的陷入僵持的局面称为死锁。

25:试述产生死锁的必要条件。

答:(1):互斥条件:临界资源是独占资源,进程应互斥且排他的使用这些资源。

(2):占有和等待资源:进程在等待资源得不到满足而等待时,不释放以占有资源。

(3):不剥夺条件:又称为不可抢占,已获资源只能有进程自愿释放,不允许被其他进程剥夺。

(4):循环等待条件:又称环路条件,存在循环等待链,其中每个进程都在循环等代练中等待下一个进程所处有的资源,造成这组进程处于永远等待状态。

26:列举死锁的各种防止策略。

答:破坏条件1(互斥条件):使资源可同时访问而不是互斥使用,就没有锦城湖阻塞在资源上,从而不发生死锁。

破坏条件2(战友和等待条件):静态分配是指进程必须在执行之前就申请需要的全部资源,且直至所需要的资源全部得到满足后才开始执行。

破坏条件3(不剥夺条件):剥夺调度能够防止死锁但只是用于内存和处理器资源。

破坏条件4(循环等待条件):采用层次分配策略,将系统中所有资源排列到不同层次中。

27:何谓银行家算法?试述其基本思想。

答:银行家算法:一种能够避免死锁的调度方法。基本思想:系统中所有进程放入进程集合,在安全状态下系统受到进程的资源请求后,先把资源试探性的分配给他,然后系统将剩下的可用资源和进程集合中的其他进程还需要的资源数作比较,找出剩余资源能满足最大需求量的进程,从而保证进程运行完毕并归还全部资源;这时吧这个进程从进程集合中删除,归还其所占用的所有资源,系统的剩余资源则更多;反复执行上述步骤,最后检查进程集合,若为空则表明本次申请可行,系统处于安全状态,可以真正实施本次分配,否则只要进程集合非空,系统便处于不安全状态,本次资源分配暂不实施,让申请资源的进程等待。

28:解释进程-资源分配图,死锁的判定法则,死锁定理。

答:设某个计算机系统中有多种资源和多个进程,每个资源类用一个方框表示,方框中的黑圆点表示此资源类中的各个资源,每个进程用一个类来表示,用有向边表示进程申请资源和资源被分配的情况。

死锁判定:

(1):如果进程-资源分配图中无环路,此时系统没有发生死锁。

(2):如果进程-资源分配图中有环路,且每个资源类中仅有一个资源,则系统中发生死锁。此时环路是系统发生死锁的充要条件,环路中的进程就是死锁中的进程。

(3):如果进程-资源分配图中有环路,且所涉及的资源类中有多个资源,则环路的存在只是系统发生死锁的必要条件而不是充分条件,系统不一定会发生死锁。

死锁定理即系统产生死锁的充要条件为:当且仅当此状态的进程-资源分配图是不可完全简化的。

29:系统有输入及和打印机各一台,现有两个进程都要使用他们,采用PV操作实现请求使用和归还资源后还会产生死锁吗?说明理由,若是,则给出防止死锁的方法。

答:不会产生死锁,因为系统的输入机和行式打印机作为临界资源分别用两个信号量表示,初值为1,在需要使用它们时用P操作申请,在需要归还他们时用V操作释放,这样就保证了两个进程对输入机和行式打印机的互斥作用,可防止死锁的产生。

34:什么是竞争条件?

答:多个进程并发访问和操作同一数据且执行结果与访问的特定顺序有关,称为竞争条件

35:什么是忙式等待?

答:不进入等待状态的等待称为忙式等待。

38:试举出系统资源分配图有环锁和环而不锁的示例。

答:

应用题:

1:有三个并发进程:R负责从输入设备读入信息块,M负责对信息块加工处理;P负责打印输出信息块。今提供;

1)一个缓冲区,可放置K个信息块;

2)二个缓冲区,每个可放置K个信息块;

试用信号量和P、V操作写出三个进程正确工作的流程。

答:

2:设有n个进程共享一个互斥段,如果:

(1)每次只允许一个进程进入互斥段;

(2)每次最多允许m个进程(m≤n)同时进入互斥段。

试问:所采用的信号量初值是否相同?信号量值的变化范围如何?

答:所采用的互斥信号量初值不同。

1)互斥信号量初值为1,变化范围为[-n+1,1]。当没有进程进入互斥段时,信号量值为1;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为0;当有1个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1;最多可能有n-1个进程等待进入互斥段,故此时信号量的值应为-(n-1)也就是-n+1。

2)互斥信号量初值为m,变化范围为[-n+m,m]。当没有进程进入互斥段时,信号量值为m;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为m-1;当有m个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为0;当有m个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1;最多可能有n-m个进程等待进入互斥段,故此时信号量的值应为-(n-m)也就是-n+m。

3:有两个优先级相同的进程P1和P2,各自执行的操作如下,信号量S1和S2初值均为0。试问

P1、P2并发执行后,x、y、z的值各为多少?

P1: P2:

beginbegin

y:=1; x:=1;

y:=y+3; x:=x+5;

V(S1); P(S1);

z:=y+1; x:=x+y;

P(S2); V(S2);

y:=z+y z:=z+x;

end. End.

5:有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试用:1)信号量和P、V操作;2)管程,来实现用户进程的同步算法。

答:1) 使用信号量和P、V操作:

6:在一个盒子里,混装了数量相等的黑白围棋子。现在用自动分拣系统把黑子、白子分开,设分拣系统有二个进程P1和P2,其中P1拣白子;P2拣黑子。规定每个进程每次拣一子;当一个进程在拣时,不允许另一个进程去拣;当一个进程拣了一子时,必须让另一个进程去拣。试写出两进程P1和P2能并发正确执行的程序。

答:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。

coend

8:设公共汽车上,司机和售票员的活动分别如下:

司机的活动:启动车辆:正常行车;到站停车。

售票员的活动:关车门;售票;开车门。

在汽车不断地到站、停车、行驶过程中,这两个活动有什么同步关系?用信号量和P、V操作实现它们的同步。

答:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动车辆,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开门让乘客上下车。因此,司机启动车辆的动作必须与售票员关车门的动作取得同步;售票员开车门的动作也必须与司机停车取得同步。

应设置两个信号量:s1、s2;s1表示是否允许司机启动汽车(其初值为0);s2表示是否允许售票员开门(其初值为0)。用P、V原语描述如下:

9:一个快餐厅有4类职员:(1)领班:接受顾客点菜;(2)厨师:准备顾客的饭菜;(3)打包工:将做好的饭菜打包;(4)出纳员:收款并提交食品。每个职员可被看作一个进程,试用一种同步机制写出能让四类职员正确并发运行的程序。

答:S的值表示它代表的物理资源的使用状态:S>0表示还有共享资源可供使用。S=0表示

数据库系统教程第二章部分习题解答

计算R ∪S ,R-S ,R ∩S ,R ×S ,π3,2(S ),σB<’5’(R),R S, R S 。 解: R ∪S A B C R -S A B C R ∩S A B C 3 6 7 3 6 7 7 2 3 2 5 7 2 5 7 7 2 3 4 4 3 4 4 3 3 4 5 R ×S R.A R.B R.C S.A S.B S.C π3,2(S ) C B 3 6 7 3 4 5 5 4 3 6 7 7 2 3 3 2 2 5 7 3 4 5 2 5 7 7 2 3 7 2 3 3 4 5 7 2 3 7 2 3 4 4 3 3 4 5 4 4 3 7 2 3 σ B<’5’(R ) A B C R ?S R.A R.B R.C S.A S.B S.C 7 2 3 7 2 3 3 4 5 4 4 3 R ?S A B C 7 2 3 2.7 设有关系R 和S : R A B S B C a b b c c b e a d e b d 计算R ? S ,R ? S ,σA=C (R ×S),S ? R 2<2 B

R ? S A B C a b c a b d c b c c b d R ? S A R.B S.B C a b b c a b b d c b b c c b b d σA=C (R ×S) A R.B S.B C a b e a c b b c d e b d S ? R B C b c b d 2.17 设有三个关系: S (S#,SNAME ,AGE ,SEX) SC (S#,C#,CNAME ) C (C#,CNAME ,TEACHER ) 试用关系代数表达式表示下列查询语句: ① 检索LIU 老师所授课程的课程号和课程名。 ② 检索年龄大于23岁的男学生的学号和姓名。 ③ 检索学号为S3学生所学课程的课程名与任课教师名。 ④ 检索至少选修LIU 老师所授课程中一门课的女学生姓名。 ⑤ 检索WANG 同学不学的课程的课程号。 ⑥ 检索至少选修两门课的学生学号。 ⑦ 检索全部学生都选修的课程的课程号与课程名。 ⑧ 检索选修课程包含LIU 老师所授全部课程的学生学号。 解:⑴ πC#,CNAME (σTNAME='LIU'(C )) ⑵ πS#,SNAME (σAGE >'23' ∧ SEX='M'(SC )) ⑶ πCNAME ,TNAME (σS#='S3'(SC ?C )) ⑷ π SNAME (σSEX='F' ∧ TNAME='LIU'(S ?SC ?C )) B

数据库第三章作业

第3章关系数据库系统RDBS 一. 简答题 1.对于表中几个特殊的列,如主键、候选键和外键,分别用什么限制来保证它们的完整性?对 表中其它一般性的列,用什么限制来保证它们的完整性? 答:主键:其值必须是唯一,不为空值; 候选键:其值必须唯一,可有也只能有一个空值; 外键:主键值在修改和删除时,从表中与该主键值相同的外键值可级联(CASCADE)修改和删除,或改为空值、默认值、禁止主表主键值的修改和删除; 一般的列:检查约束和断言。 2.SQL SERVER中规则的目的? 答:规则的目的针对表中的某一列,指明该列的取值范围。 3.SQL SERVER中在定义某些限制时,分列级与表级,其分类的原则是什么? 答:列级检查约束针对表中一列; 表级检查约束则针对同一表中多列 4.外键限制定义的条件? 答:外键限制的列必须是另一个表中的主键。 5.关系代数的基本操作符?笛卡尔乘积最大的作用是什么? 答:基本操作符:投影,选择,交,积,差; 作用:把任意两个不相关的表相连。 6.为什么说在实际查询中自然连接是用得比较多的? 答:可以从两个关系实例的笛卡尔乘积中选出同时满足一个或多个条件等式的行,每个条件等式中的列名相同。 7.关系代数中对结果有重复元组时,如何处理? 答:将去掉重复元组。 8.连接的分类? 答:条件连接:加入连接条件,对两个关系实施连接; 等连接:是条件连接的特例。要求连接条件由等式组成; 自然连接:是等连接的特例。要求等式中涉及的字段名必须相等; 外连接:是涉及有空值的自然连接。 9.外连接又分3种,其依据是什么? 答:左外联结,右外联结,全外联结。 二. 单项选择题

操作系统 第二章 习题

第二章练习题及参考答案 一、单项选择题 1.用户作业可以通过()方式由用户自己按照作业来进行操作。 A.脱机 B.自动控制 C.在线处理 D.联机处理 2.()是操作系统提供的一种专门语言,它由操作系统的专门机制解释处理。 A.C语言 B.JCL语言 C.Ada语言 D.Pascal语言 3.作业调度算法中()调度算法最有利于提高资源利用率。 A.先来先服务 B.优先数 C.响应比最高优先 D.均衡 4.终端用户在终端上控制作业的执行要经历四个阶段,最初阶段是()。 A.用户注册 B.终端连接 C.作业控制 D.用户退出 5.在下面作业调度算法中()调度算法最有利于小作业,从而提高系统吞吐能力。 A.先来先服务 B.计算时间短的作业优先 C.优先数 D.响应比最高者优先 6.当中央处理器处于目态时,它可以执行的指令是()。 A.计算机系统中的全部指令 B.仅限于非特权指令 C.仅限于防管指令 D.仅限于特权指令 7.作业调度算法常考虑因素之一是使系统有最高的吞吐率,为此应()。 A.不让处理机空闲 B.能够处理尽可能多的作业 C.使各类用户满意 D.不使系统过于复杂 8. 分时操作系统环境下运行的作业通常称为()。 A.后台作业 B.长作业 C.批量型作业 D.终端型作业 9.在作业调度算法中,若所有作业同时到达,则平均等待时间最短的算法是()。 A.先来先服务 B.优先数 C.响应比最高优先 D.计算时间段的作业优先 10.作业调度程序从处于()状态的作业队列中选取适当的作业投入运行。 A.执行 B.提交 C.完成 D.后备 11.既考虑作业等待时间,又考虑作业执行时间的调度算法是()。 A. 先来先服务 B.优先数 C.响应比最高优先 D.均衡 12.()是指从作业提交给系统到作业完成的时间间隔。 A.周转时间 B.响应时间 C.等待时间 D.执行时间 13.作业从进入后备队列到被调度程序选中的时间间隔称为()。 A.周转时间 B.响应时间 C.等待时间 D.触发时间 二、多项选择题 1.响应比最高者优先调度算法是()调度算法的折衷。 A.先来先服务 B.优先数 C.电梯调度 D.单向扫描 E.计算时间短的作业优先 2.()调度算法在作业调度中需要作业计算时间。

数据库第二章练习题

数据库第二章练习题 一.选择题(2×5=30分) 1.在数据库系统中,数据的最小访问单位是() A表 B 记录 C 数据元素 D 字段 2.建立表的结构时,一个字段由()组成 A 字段名称B数据类型 C 字段属性D以上都是 https://www.360docs.net/doc/3a1165505.html,ess2003中,表的字段数据类型中不包括() A自动编号B数字型C窗口型D货币型 4以设置字段大小属性的数据类型是() A备注B文本C日期/时间D货币 5.在access2003的表中,()不可以定义为主键 A自动编号B单字段C多字段DOLE对象 6.在表的设计视图中,不能完成操作的是() A修改字段的名称B删除一个标题 C修改字段的属性D删除一条记录 7.在表的数据视图中,不能完成的操作是() A删除一条记录B修改一条记录 C追加一条记录D修改字段标题 7.关于主键下列说法错误的是() A access2003中,并不要求每一个表中都必须设置主键 B 在一个表中只能指定一个字段为主键 C 在输入数据或对数据进行修改时,不能向主键的字段输入相同的值 D 利用主键可以加快数据的查找速度 9.如果一个字段在多数情况下取一个固定的值,可以将这个值设置成字段的() A 主键字B默认值C有效性规则D输入掩码 10.不是表类型的数据显示格式有() A 真/假B是/否C有/无D开/关 11.关于主键,下列说话错误的是() A 主键不能重设为其他字段 B 主键可以是多少字段的组合 C 一个表中只能有一个主键D在创建关系时,主表的关联字段必须是主键 12.在表的设计视图的二字段属性中默认情况下标题属性是( ) A.字段名称 B.字段类型 C. 空 D.Null 13.在表的设计视图中要插入一个新字段,应将光标移动到插入字段之后的字段上,在插入菜单中选( )命令. A.新记录 B.新字段 C.行D列 14.在表的数据表视图中,把光标定位在最后一行,可以单击插入菜单选择()命令。 A.新记录 B.新字段 C.行D列 15.在查找和替换操作中,可以使用通配符,下列不是通配符的是()A.*B.?C.!D.@ 二.填空题(1×30=30分) 1.在access中表有两种视图,即()和()。 2.对表的修改和分为对()的修改和对()的修改 3.创建表的方法主要有(),(),(),三种方法 4.修改表的结构是在()视图下完成的,修改表结构包括 (),(),(),(),及()等。 5.在“查找和替换”对话框中,查找范围列表框用来确定在那个字段中查找数据,匹配列表框用来确定匹配方式,包括(),(),()三种方式。 6.在查找时,如果确定了查找内容的范围,可以通过设置()来减小查找范围,从数据中找出满足一定条件的记录,称为(). 7.字段的()属性用于检查错误所输入或不符合要求的数据输入,()功能是将表中的一部分重要的文段固在屏幕上. 8.数据类型为(),(),()的字段不能排序 9.设置表的数据视图列宽时,当拖动字段右边界的分隔线超过左边界的,将会()该列 10.电子邮箱有效性规则(),邮箱的掩码(),手机号码的掩码(),长日期的掩码()。 11.筛选出员工表中,2009年以前入职的员工的记录,要在筛选同标文本框中输入()。

数据库第三章习题参考答案.

3-2 对于教务管理数据库的三个基本表 S(SNO,SNAME, SEX, AGE,SDEPT) SC(SNO,CNO,GRADE) C(CNO,CNAME,CDEPT,TNAME) 试用SQL的查询语句表达下列查询: ⑴检索LIU老师所授课程的课程号和课程名。 ⑵检索年龄大于23岁的男学生的学号和姓名。 ⑶检索学号为200915146的学生所学课程的课程名和任课教师名。 ⑷检索至少选修LIU老师所授课程中一门课程的女学生姓名。 ⑸检索WANG同学不学的课程的课程号。 ⑹检索至少选修两门课程的学生学号。 ⑺检索全部学生都选修的课程的课程号与课程名。 ⑻检索选修课程包含LIU老师所授课程的学生学号。 解: ⑴SELECT C#,CNAME FROM C WHERE TEACHER=’LIU’; ⑵SELECT S#,SNAME FROM S WHERE AGE>23 AND SEX=’M’; ⑶SELECT CNAME,TEACHER FROM SC,C WHERE SC.C#=C.C# AND S#=’200915146’ ⑷SELECT SNAME (连接查询方式) FROM S,SC,C WHERE S.S#=SC.S# AND SC.C#=C.C# AND SEX=’F’AND TEACHER=’LIU’; 或: SELECT SNAME (嵌套查询方式) FROM S WHERE SEX=’F’AND S# IN (SELECT S# FROM SC WHERE C# IN (SELECT C# FROM C WHERE TEACHER=’LIU’)) 或: SELECT SNAME (存在量词方式)

操作系统第二章习题答案

第2章操作系统用户界面 Page 36 2.1 什么是作业?什么是作业步? 答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次全部工作称为一个作业,从系统的角度看,作业则是一个比程序更广的概念。它由程序、数据和作业说明书组成,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。而且,在批处理系统中,作业是抢占内存的基本单位。也就是说,批处理系统以作业为单位把程序和数据调入内存以便执行。作业由不同的顺序相连的作业步组成。 作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。例如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。 2.2 作业由哪几部分组成?各有什么功能? 答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用户所要求的业务处理工作,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。 2.3 作业的输入方式有哪几种?各有什么特点? 答:作业的输入方式有5种: (1)联机输入方式:用户和系统通过交互式会话来输入作业。

(2)脱机输入方式:利用低档个人计算机作为外围处理机进行输入处理,存储在后援存储器上,然后将此后援存储 器连接到高速外围设备上和主机相连,从而在较短的时 间内完成作业的输入工作。 (3)直接耦合方式:直接耦合方式把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱 机输入中那种依靠人工干预来传递后援存储器的过程。(4)SPOOLING系统:SPOOLING又可译作外围设备同时联机操作。在SPOOLING系统中,多台外围设备通过通道或DMA 器件和主机与外存连接起来。作业的输入输出过程由主 机中的操作系统控制。 (5)网络输入方式:网络输入方式以上述几种输入方式为基础。当用户需要把在计算机网络中某一台主机上输入的 信息传送到同一网中另一台主机上进行操作或执行时, 就构成了网络输入方式 2.4 试述 SPOOLING 系统的工作原理。 答:在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来。作业的输入输出过程由主机中的操作系统控制。操作系统中的输入程序包含两个独立的过程,一个过程负责从外部设备把信息读入缓冲区;另一个是写过程, 负责把缓冲区的信息送到外存输入井中。

数据库第二章习题及答案

第二章 关系数据库习题二 一、单项选择题: 1、系数据库管理系统应能实现的专门关系运算包括 B 。 A .排序、索引、统计 B.选择、投影、连接 C .关联、更新、排序 D.显示、打印、制表 2、关系模型中,一个关键字是 C 。 A .可由多个任意属性组成 B .至多由一个属性组成 C .可由一个或多个其值能惟一标识该关系模型中任何元组的属性组成 D .以上都不是 3、个关系数据库文件中的各条记录 B 。 A .前后顺序不能任意颠倒,一定要按照输入的顺序排列 B .前后顺序可以任意颠倒,不影响库中的数据关系 C .前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同 D .前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列 4、有属性A ,B ,C ,D ,以下表示中不是关系的是 C 。 A .R (A ) B .R (A ,B ,C ,D ) C .D)C B R(A ??? D .R (A ,B ) 5、概念模型中,一个实体相对于关系数据库中一个关系中的一个 B 。 A 、属性 B 、元组 C 、列 D 、字段 二、设有一个SPJ 数据库,包括S ,P ,J ,SPJ 四个关系模式: S( SNO ,SNAME ,STA TUS ,CITY); P(PNO ,PNAME ,COLOR ,WEIGHT); J(JNO ,JNAME ,CITY); SPJ(SNO ,PNO ,JNO ,QTY); 供应商表S 由供应商代码(SNO )、供应商姓名(SNAME )、供应商状态(STATUS )、供应商所在城市(CITY )组成; 零件表P 由零件代码(PNO )、零件名(PNAME )、颜色(COLOR )、重量(WEIGHT )组成; 工程项目表J 由工程项目代码(JNO )、工程项目名(JNAME )、工程项目所在城市(CITY )组成; 供应情况表SPJ 由供应商代码(SNO )、零件代码(PNO )、工程项目代码(JNO )、供应数量(QTY )组成,表示某供应商供应某种零件给某工程项目的数量为QTY 。 今有若干数据如下: P 表

数据库第三章作业

第三章SQL 一、填空题 1、在SQL查询时,如果要去掉查询结果中的重复组,需要用() 2、在SQL中使用()命令建立基本表 3、在SQL中使用()命令修改数据库模式。 4、在SQL的SELECT语句中,不仅可以出现属性名,还可以出现()。 5、当基本表中增加一个新列后,各元组在新列上的值是()。 6、在SQL中表示并集的关键字是(0)。 7、在SQL中表示差集的关键字是()。 8、SQL对嵌套查询的处理方法是从()层向()层处理。 9、在SQL中定义视图时,需要用关键字()连接子查询来完成。 10、SQL包括了数据定义、数据操纵和()等功能。 11、SQL对嵌套查询的处理方法是从()层向()层处理。 二、单选题 1、在SQL中,用户可以直接操纵的是()。 A. 基本表 B. 视图 C. 基本表或视图 D. 基本表和视图 2、在SQL中,与关系代数中的投影运算对应的字句是()。 A. SELECT B. FROM C. WHERE D.ORDER BY 3、SELECT语句执行的结果是()。 A. 数据项 B. 元组 C. 表 D. 数据库 4、关系数据库的标准语言是()。 A. DDL B. SQL C. ORACLE D. DBMS 5、在SELECT语句中使用*表示()。 A. 选择任何属性 B. 选择全部属性 C. 选择全部元组 D. 选择键码 6、使用CREATE TABLE语句建立的是()。 A. 数据库 B. 表 C. 视图 D. 索引 7、在SELECT语句中使用MIN(属性名)时,属性名()。 A. 必须是数值型 B. 必须是字符型 C. 必须是数值型或字符型 D.不限制数据类型 8、使用CREATE VIEW语句建立的是()。 A. 数据库 B. 表 C. 视图 D. 索引 9、在SQL中使用UPDA TE对表中数据进行修改时,应使用的子句是()。 A. WHERE B. FROM C. V ALUES D. SET 10、使用CRETE INDEX语句建立的是()。 11、在SQL的语句中,ALTER的作用是()。 A. 删除基本表 B. 修改基本表中的数据 C. 修改基本表中的结构 D. 修改视图 12、在SELECT语句中使用A VG(属性名)时,属性名()。 A. 必须是数值型 B. 必须是字符型 C. 必须是数值型或字符型 D.不限制数据类型 13、在SQL中用关键字EXCEPT表示的运算是集合的()。 A. 交集 B. 并集 C. 差集 D. 连接 14、在SQL的排序子句:“ORDER BY总分DESC ,英语DESC”,表示()。 A. 总分和英语分数都是最高的在前面 B. 总分和英语分数之和最高的在前面

操作系统第二章作业答案(最新整理)

第二章作业 1.操作系统中为什么要引入进程的概念?为了实现并发进程中的合作和协 调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作? 答:为了从变化角度动态地分析研究可以并发执行的程序,真实的反应系统的 独立性、并发性、动态性和相互制约,操作系统中不得不引入进程的概念。 为了防止操作系统及其关键的数据结构如:PCB 等,受到用户程序破坏, 将处理机分为核心态和用户态。对进程进行创建、撤销以及在某些进程状态之间的 转换控制。 2.试描述当前正在运行的进程状态改变时,操作系统进行进程切换的步骤。 答:分为两种情况: (1):运行状态就绪状态:根据进程的自身的情况插入到就绪队列的适 当位置,系统收回处理及转入进程调度程序重新进行调度。 (2):运行状态→阻塞状态:系统会调用进程调度程序重新选择一个进程投 入运行。 3.现代操作系统一般都提供多任务的环境,是回答以下问题。 为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构? 答:系统必须建立PCB。 为支持进程的状态变迁,系统至少应该供哪些进程控制原语? 答:阻塞、唤醒、挂起和激活原语。 当进程的状态变迁时,相应的数据结构发生变化吗? 答:会根据状态的变迁发生相应的变化。例如:将进程PCB中进程的状态从阻 塞状态改为就绪状态,并将进程从阻塞队列摘下,投入到就绪队列中。 4.什么是进程控制块?从进程管理、中断处理、进程通信、文件管理、设备管理 及存储管理的角度设计进程控制块应该包含的内容。 答:PCB:描述进程本身的特征、状态、调度信息以及对资源占有情况等的数据 结构,是进程存在的唯一标识。 进程控制块所包含的内容: ①进程信息描述;②CPU信息状态;③进程调度信息;④进程控制和资源占用信息。 5.假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统化在进程切换上的开销占系统 整个时间的比例是多少? 解:P=(10*10)/[(300+10)*10]=3.2% 6.试述线程的特点及其与进程之间的关系。 答:线程的特点:是被独立分派和调度的基本单位。线程与进程的关系:线程是进程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。 7.根据图2-18,回答以下问题。

数据库系统原理第二章的习题集.doc

第2章关系数据库 一、选择题 1、关于关系模型,下列叙述不正确的是()。 A. 一个关系至少要有一个候选码 B. 列的次序可以任意交换 C. 行的次序可以任意交换 D. 一个列的值可以来自不同的域 2、下列说法正确的是()。 A. 候选码都可以唯一地标识一个元组 B. 候选码中只能包含一个属性 C. 主属性可以取空值 D. 关系的外码不可以取空值 3、关系操作中,操作的对象和结果都是()。 A. 记录 B. 集合 C. 元组 D. 列 4、假设存在一张职工表,包含“性别”属性,要求这个属性的值只能取“男”或“女”,这属于()。 A. 实体完整性 B. 参照完整性 C. 用户定义的完整性 D. 关系不变性 5、有两个关系R(A, B, C)和S(B, C, D),将R和S进行自然连接,得到的结果包含几个列() A. 6 B. 4 C. 5 D. 2 二、判断题 1、关系模型的一个特点是,实体以及实体之间的联系都可以使用相同的结构类型来表示。() 2、关系模型中,非主属性不可能出现在任何候选码中。() 3、关系模式是对关系的描述,关系是关系模式在某一时刻的状态或内容。() 三、填空题 1、在关系模型中,关系操作包括查询、____________、____________和_____________等。 2、关系模型的三类完整性约束是指______________、_______________和_____________。 3、关系模型包括8种查询操作,其中__________、_________、并、________和笛卡儿积是5种基本操作,其他操作可以用基本操作定义和导出。 4、职工(职工号,姓名,年龄,部门号)和部门(部门号,部门名称)存在引用关系,其中________________是参照关系,____________是外码。

数据库第三章作业

数据库第三章作业 标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

第3章关系数据库系统RDBS 一. 简答题 1.对于表中几个特殊的列,如主键、候选键和外键,分别用什么限制来保证它们的完整性对 表中其它一般性的列,用什么限制来保证它们的完整性 答:主键:其值必须是唯一,不为空值; 候选键:其值必须唯一,可有也只能有一个空值; 外键:主键值在修改和删除时,从表中与该主键值相同的外键值可级联(CASCADE)修改和删除,或改为空值、默认值、禁止主表主键值的修改和删除; 一般的列:检查约束和断言。 2.SQL SERVER中规则的目的 答:规则的目的针对表中的某一列,指明该列的取值范围。 3.SQL SERVER中在定义某些限制时,分列级与表级,其分类的原则是什么 答:列级检查约束针对表中一列; 表级检查约束则针对同一表中多列 4.外键限制定义的条件 答:外键限制的列必须是另一个表中的主键。 5.关系代数的基本操作符笛卡尔乘积最大的作用是什么 答:基本操作符:投影,选择,交,积,差; 作用:把任意两个不相关的表相连。 6.为什么说在实际查询中自然连接是用得比较多的 答:可以从两个关系实例的笛卡尔乘积中选出同时满足一个或多个条件等式的行,每个条件等式中的列名相同。 7.关系代数中对结果有重复元组时,如何处理 答:将去掉重复元组。 8.连接的分类 答:条件连接:加入连接条件,对两个关系实施连接; 等连接:是条件连接的特例。要求连接条件由等式组成; 自然连接:是等连接的特例。要求等式中涉及的字段名必须相等; 外连接:是涉及有空值的自然连接。 9.外连接又分3种,其依据是什么 答:左外联结,右外联结,全外联结。 二. 单项选择题

access第3章数据表习题及答案

第三章创建和维护数据表习题及答案 一、选择题 (1)Access数据库的设计一般由5个步骤组成,对以下步骤的排序正确的是 a.确定数据库中的表b.确定表中的字段 c.确定主关键字d.分析建立数据库的目的 e.确定表之间的关系 A) dabec B) dabce C) cdabe D) cdaeb (2)学校欲建立一个“教学管理”的数据库,由教师表、学生表、课程表、选课成绩表组成,教师表中有教师编号、姓名性别、工作时间、职称、学历、系别等字段,试确认该表的主关键字是 A) 姓名B) 教师编号C) 系别D) 职称 (3)以下字符串不符合Access字段命名规则的是 A) ^_^birthday^_^ B) 生日C) Jim.jeckson D)//注释 (4)某学校欲建立一个“教学管理”的数据库,设计该数据库由教师表、学生表、课程表、选课成绩表组成,其中教师表由TeacherID、TeacherName、sex、[telephone]组成,现确定该表的主关键字为TeacherName。以下分析正确的是 A) 教师表字段命名有错误,其他正确 B) 教师表主关键字选择错误,其他正确 C) 教师表字段命名和主关键字错误 D) 该表设计没有错误 (5)一张“学生”表中,要使“年龄”字段的取值范围设在14~50之间,则在“有效性规则”属性框中输入的表达式为 A) >=14AND<=50 B) >=140R=<50 C) >=50AND<=14 D) >=14&&=<50

(6)可以选择输入数据或空格的输入掩码是 A) 0 B) < C) > D) 9 (7)将所有字符转换为大写的输入掩码是 A) > B) < C) 0 D) A (8)某文本型字段的值只能为字母且不允许超过6个,则将该字段的输入掩码属性定义为 A) AAAAAA B) LLLLLL C) CCCCCC D) 999999 (9)某数据库的表中要添加Intemet站点的网址,则该采用的字段的数据类型是 A) OLE对象数据类型B) 超级链接数据类型 C) 查阅向导数据类型D) 自动编号数据类型 (10)某数据库的表中要添加一张图片,则采用的该字段的数据类型是 A) OLE对象数据类型B) 超级链接数据类型, C) 查阅向导数据类型D) 自动编号数据类型 (11)Access数据库中哪个数据库对象是其他数据库对象的基础? A) 报表B) 表C) 窗体D) 模块 (12)在使用Access创建数据库中的表时,以下不能导入到Access数据库中的是 A) Excel表格B) ForPro创建的表C) Access数据库中的表D) Word文档里的表 (13)某字段中已经有数据,现要改变该字段大小的属性,将该字段大小重新设置为整数型,则以下所存数据会发生变化的是 A) 123 B) 2.5 C) -12 D) 1563 (14)Access中表与表的关系一般定义为 A) 一对多关系B) 多对多关系C) 一对一关系D) 多对一关系 (15)若要在某表中“姓名”字段中查找t:A wh开头的所有人名,则应在查找内容框中输入的字符串是 A) wh? B) wh* C) wh[ ] D) wh# (16)将文本字符串"23,18,9,66"按升序排序,排序的结果将是

广东海洋大学数据库第二章作业

1、若学生选课库的关系模式为: 学生(学号,姓名,性别,年龄,所在系); 课程(课程号,课程名,先行课); 选课(学号,课程号,成绩). ①求选修了课程号为“C2”课程的学生学号。 π学号(σ课程号= ‘C2’(选课)) ②求选修了课程号为“C2”课的学生学号和姓名。 π学号,姓名(σ课程号= ‘C2’(学生选课)) ③求没有选修课程号为“C2”课程的学生学号。 π学号(学生)-π学号(σ课程号= ‘C2’(选课)) ④求既选修“C2”课程,又选修“C3”课程的学生学号。 π学号(σ课程号= ‘C2’ (选课)) ∩ π学号(σ课程号= ‘C3‘ (选课) ) ⑤求选修课程号为“C2”或“C3”课程的学生学号。 π学号(σ课程号=‘C2‘ (选课))∪π学号(σ课程号=’C3‘ (选课)) ⑥求选修了全部课程的学生学号。 π学号,课程号(选课)÷ π课程号(课程) ⑦一个学号为“98002”的学生所学过的所有课程可能也被其他学生选修,求这些学生的学号和姓名。 π学号,姓名((π学号,课程号(选课)÷π课程号(σ学号= ‘98002’(选课) ) 学生) 2.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式: 1)求供应工程J1零件的供应商号码SNO: πSno(σJno=‘J1’(SPJ))

2)求供应工程J1零件P1的供应商号码SNO: πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ)) 3)求供应工程J1零件为红色的供应商号码SNO: πSno(σJno=‘J1‘(σCOLOR=’红‘(P) SPJ)) 4)求没有使用天津供应商生产的红色零件的工程号JNO: πJno(SPJ)-πJNO(σcity=‘天津’∧Color=‘红‘(S SPJ P) 5)求至少用了供应商S1所供应的全部零件的工程号JNO: πJno,Pno(SPJ)÷ πPno(σSno=‘S1‘(SPJ)) 3.查询至少选修了一门其直接先行课为5号课程的课程的学生姓名。πSname(σCpno='5'(Course SC Student))

数据库第3章习题参考答案

第3章习题解答 1.选择题 (1)表设计器的“允许空”单元格用于设置该字段是否可输入空值,实际上就是创建该字段的(D)约束。 A.主键B.外键C.NULL D.CHECK (2)下列关于表的叙述正确的是(C)。 A.只要用户表没有人使用,则可将其删除B.用户表可以隐藏 C.系统表可以隐藏D.系统表可以删除 (3)下列关于主关键字叙述正确的是( A )。 A.一个表可以没有主关键字 B.只能将一个字段定义为主关键字 C.如果一个表只有一个记录,则主关键字字段可以为空值 D.都正确 (4)下列关于关联叙述正确的是( C )。 A.可在两个表的不同数据类型的字段间创建关联 B.可在两个表的不同数据类型的同名字段间创建关联 C.可在两个表的相同数据类型的不同名称的字段间创建关联 D.在创建关联时选择了级联更新相关的字段,则外键表中的字段值变化时,可自动修改主键表中的关联字段 (5)CREATE TABLE语句(C )。 A.必须在数据表名称中指定表所属的数据库 B.必须指明数据表的所有者 C.指定的所有者和表名称组合起来在数据库中必须唯一 D.省略数据表名称时,则自动创建一个本地临时表 (6)删除表的语句是(A)。 A.Drop B.Alter C.Update D.Delete (7)数据完整性不包括(B )。 A.实体完整性B.列完整性C.域完整性D.用户自定义完整(8)下面关于Insert语句的说法正确的是(A )。 A.Insert一次只能插入一行的元组 B.Insert只能插入不能修改 C.Insert可以指定要插入到哪行 D.Insert可以加Where条件 (9)表数据的删除语句是( A )。 A.Delete B.Inser C.Update D.Alter (10)SQL数据定义语言中,表示外键约束的关键字是(B )。 A.Check B.Foreign Key C.Primary Key D.Unique 2.填空题 (1)数据通常存储在表中,表存储在数据库文件中,任何有相应权限的用户都可以对之进行操作。

操作系统第二章课后答案

第二章进程管理 2、试画出下面4条语句的前趋图: S2: b:=z+1; S3: c:=a-b; S4: w:=c+1; 3、 程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使 在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。 4、程序并发执行时为什么会失去封闭性与可再现性? 因为程序并发执行时,就是多个程序共享系统中的各种资源,因而这些资源的状态就 是由多个程序来改变,致使程序的运行失去了封闭性。而程序一旦失去了封闭性也会导致其再失去可再现性。 5、在操作系统中为什么要引入进程概念?它会产生什么样的影响? 为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制与描述,从而在操作系统中引入了进程概念。 影响: 使程序的并发执行得以实行。 6、试从动态性,并发性与独立性上比较进程与程序? a、动态性就是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源 而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只就是一组有序指令的集合,就是静态实体。 b、并发性就是进程的重要特征,同时也就是OS的重要特征。引入进程的目的正就是为 了使其程序能与其它建立了进程的程序并发执行,而程序本身就是不能并发执行的。 c、独立性就是指进程实体就是一个能独立运行的基本单位,同时也就是系统中独立获得 资源与独立调度的基本单位。而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。 7、试说明PCB的作用?为什么说PCB就是进程存在的唯一标志? a、PCB就是进程实体的一部分,就是操作系统中最重要的记录型数据结构。PCB中记 录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。因而它的作用就是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。 b、在进程的整个生命周期中,系统总就是通过其PCB对进程进行控制,系统就是根据进 程的PCB而不就是任何别的什么而感知到该进程的存在的,所以说,PCB就是进程存在的唯一标志。 8、试说明进程在三个基本状态之间转换的典型原因、 a、处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变 为执行状态。 b、当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行 状态转变为阻塞状态。 c、当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态。 9、为什么要引入挂起状态?该状态有哪些性质? a、引入挂起状态主要就是出于4种需要(即引起挂起的原因): 终端用户的请求,父进程 请求,负荷调节的需要,操作系统的需要。

数据库第二章课后知识题解答

第3部分 习题及其解答 第一章的两道题 设计 N M 编号 开始时间 姓名 性别 年龄 单位 职称 结束时间 程序名称 版权 价格 专利号 厂址 工厂名称 联系电话

3-2 习题2 2.6 分别把习题1.10、习题1.11的ER图转换成关系模型数据结构。 【参考答案】 1.习题1.10的ER 图可转换成如下的关系模型数据结构。 ① 程序员( 编号,姓名,性别,年龄,单位,职称),其中编号是关键字; N 雇用 月薪 雇用期

②程序(程序名称,版权,专利号,价格),其中程序名称是关键字; ③设计(编号,程序名称,开始时间,结束时间),其中(编号,程序名称)是关键字。 2.习题1.11的ER图可转换成如下的关系模型数据结构。 ①工厂(工厂名称,厂址,联系电话),其中工厂名称是关键字; ②产品(产品号,产品名,规格,单价),其中产品号是关键字; ③工人(工人编号,姓名,性别,职称,工厂名称,雇用期,月薪),其中工人编号是关键字,工厂名称是外关键字,雇用期和月薪是联系属性; ④生产(工厂名称,产品号,月产量),其中(工厂名称,产品号)是关键字,生产关系是表示联系的。 2.8 判断下列情况,分别指出它们具体遵循那一类完整性约束规则? 1.用户写一条语句明确指定月份数据在1~12之间有效。 2.关系数据库中不允许主键值为空的元组存在。 3.从A关系的外键出发去找B关系中的记录,必须能找到。 【解答】 1.用户用语句指定月份数据在1~12之间有效,遵循用户定义的完整性约束规则。 2.关系数据库中不允许主键值为空的元组存在,遵循实体完整性约束规则; 3.从A关系的外键出发去找B关系的记录,必须能找到,遵循引用完整性约束规则。

《数据库系统概论》课后习题及参考答案

课后作业习题 《数据库系统概论》课程部分习题及参考答案 第一章绪论(教材 41页) 1.试述数据、数据库、数据库系统、数据库管理系统的概念。 数据: 描述事物的符号记录称为数据。数据的种类有文字、图形、图象、声音、正文等等。数据与其语义是不可分的。 数据库: 数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 数据库系统: 数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 数据库管理系统: 数据库管理系统 (DBMS)是位于用户与操作系统之间的一层数据管理软件。用于科学地组织和存储数据、高效地获取和维护数据。DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。 2.使用数据库系统有什么好处? 使用数据库系统的好处是由数据库管理系统的特点或优点决定的。 使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。 为什么有这些好处,可以结合第 5题来回答。

使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS来完成。 此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。 使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。 总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,可以提高数据的利用率和一致性,又有利于应用程序的开发和维护。 3.试述文件系统与数据库系统的区别和联系。 文件系统与数据库系统的区别: 文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。 数据库系统面向现实世界,共享性高、冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。 文件系统与数据库系统的联系是: 文件系统与数据库系统都是计算机系统中管理数据的软件。 5.试述数据库系统的特点。 数据库系统的主要特点有: 一、数据结构化 数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 二、数据的共享性高,冗余度低,易扩充

第2章(windowsxp操作系统)习题及参考答案 (1)

第2章 Windows XP操作系统 1、填空题 (1).要重新将桌面上的图标按名称排列,可以用鼠标在上右击,在出现的快捷菜单中,选择中的“名称”命令。 (2).在Windows XP中,鼠标的单击、双击、拖曳均是用鼠标键进选择操作。 (3).在Windows XP中,任务栏通常处于屏幕的。 (4).在Windows XP中,单击上相应在的应用程序按钮,可以在不同的窗口之间进行切换 (5).通过“任务栏”右侧的目标,可以切换以中文输入法状态。 (6).将鼠标指向窗口的,拖动鼠标,即可将窗口移动到新的作罢。 (7).在Windows XP中,文件或文件夹的管理可以使用或。 (8).当选定文件或文件夹后,欲改变其属性设置,可以单击鼠标键。 (9).若要取消已经选定的文件,只需单击即可。 (10).在“资源管理器”中,若要选定连续的多个文件时,可先单击要选定的第一个文件, 然后按下键,再单击最后一个文件,则这个连续区域中的所有文件都被选中。 (11).选取多个不连续的文件,应该按住键不放,再依次单击要选取的文件。 (12).“回收站”是用来暂时存放盘上被删除的文件。 (13).在“我的电脑”或“资源管理器”窗口中,改变文件或文件夹的显示方式,是通过窗 口中的菜单。 (14).要安装或删除一个应用程序,可以打开“控制面板”窗口,执行其中的命 令。 (15).瑞星杀毒软件有手动杀毒、、、四种杀毒方 式。 (16).WinRAR的功能可以自动将文件进行解压。 (17).Windows XP的功能可能保护数据免受意外损失。 (18).任务栏主要由、、、和组成。 (19).任务栏缩为一条白线时,表示用户在“任务栏和[开始]菜单属性”中选择了。 (20).桌面上的图标实际就是某个应用程序的快捷方式,如果要启动该程序,只需该 图标即可。 (21).在下拉菜单中,凡是选择了后面带有省略号(...)的命令,都会出现一个。 (22).为了添加某个输入法,应选择窗口中的“区域和语言选项”或在语言 栏中单击按钮中的设置。 (23).在Windows XP中,若要打开“显示属性”对话框,可右击空白处,然后 在弹出的快捷菜单中选择项。 (24).Windows XP语言栏中提供了软键盘功能,以方便用户输入各种特殊符号,而要弹出软 键盘,应先,然后在弹出的菜单中选择合适的软键盘。 2、选择题 (1).WindwosXP系统中的“桌面”是指() A.整个屏幕 B.某个窗口 C.当前窗口 D.全部窗口 (2).下列对图标错误的描述是() A.图标只能代表某类程序的程序组 B.图标可以代表快捷方式

数据库第二章关系代数习题

1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句: S C SC S# SNAME AGE SEX 1 李强23 男 2 刘丽22 女5 张友22 男C# CNAME TEACHER k1 C语言王华 k5 数据库原理程军 k8 编译原理程军 S# C# GRADE 1 k1 83 2 k1 85 5 k1 92 2 k5 90 5 k5 84 5 k8 80 (1)检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。 ∏C#,CNAME(δTEACHER=程军(C)) (2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。 ∏S#,SNAME(δAGE>21∧SEX=男(S)) (3)检索至少选修”程军”老师所授全部课程的学生姓名(SNAME)。 ∏SNAME((∏S#,C#(SC)÷∏C#(δTEACHER=程军(C)))S) (4)检索”李强”同学不学课程的课程号(C#)。 ∏C#(C)-∏C#(δSNAME=李强(S)SC) (5)检索至少选修两门课程的学号(S#)。 ∏S#(δ1=4∧2≠5(SC×SC)) (6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 ∏C#,CNAME(∏S#,C#(SC)÷∏S#(S)C) (7)检索选修课程包含”程军”老师所授课程之一的学生学号(S#)。 ∏C#(δTEACHER=程军(C)SC) (8)检索选修课程号为k1和k5的学生学号(S#)。 ∏S#,C#(SC)÷∏C#(δC#=k1∨C#=k5(C)) (9)检索选修全部课程的学生姓名(SNAME)。 ∏SNAME((∏S#,C#(SC)÷∏C#(C))S) (10)检索选修课程包含学号为2的学生所选修课程的学生学号(S#)。 ∏S#,C#(SC)÷∏C#(δS#=2(SC)) (11)检索选修课程名为”C语言”的学生学号(S#)和姓名(SNAME)。 ∏S#,SNAME(∏S#(SC(δCNAME=C语言(C)))S) (12)检索没有一门课程成绩不及格的学生学号,姓名。 ∏S#,SNAME((∏S#(S)-∏S#(δGRADE<60(SC))S) 2.现有关系数据库如下: 学生(学号,姓名,性别,专业,奖学金)。 课程(课程号,名称,学分)。

相关文档
最新文档