当前位置:文档之家› 现代操作系统课后答案(中文)

现代操作系统课后答案(中文)

现代操作系统课后答案(中文)
现代操作系统课后答案(中文)

现代操作系统

第一章 答案

1. 操作系统必须向用户提供一台扩展(即,实际上)的机器,和它必须管理 I/O 设备和其它系 统资源。

2. 多道程序就是 CPU 在内存中多个进程之间迅速切换。它一般被用来使 CPU 保持忙碌,当 有一个或多个进程进行 I/O 时。

3. 输入 spooling 是作业中的读入技术,例如,从卡片在磁盘,这样当当前执行的进程完成时, 将等候 CPU。输出 spooling 在打印之前首先复制打印文件,而非直接打印。在个人计算机上 的输入 spooling 很少,但是输出 spooling 非常普遍。

4. 多道程序的主要原因是当等候 I/O 完成时 CPU 有事可做。如果没有 DMA,I/O 操作时 CPU 被完全占有,因此,多道程序无利可图 (至少在 CPU 利用方面)。无论程序作多少 I/O 操作, CPU 都是 100%的忙碌。当然,这里假定主要的延迟是数据复制时的等待。如果 I/O 很慢的 话,CPU 可以做其它工作。

5. 第二代计算机没有必要的硬件保护操作系统免受恶意的用户程序的侵害。

6. 它依然存在。例如,Intel 以各种各样的不同的属性包括速度和能力消耗来生产 Pentium I, II, III 和 4。所有这些机器的体系结构都是兼容的,仅仅是价格上的不同,这些都是家族思想的 本质。

7. 25 X 80 字符的单色文本屏幕需要 2000 字节的缓冲器。1024 X 768 象素 24 位颜色的位图需 要 2359296 字节。1980 年代这两种选择将分别地耗费$10 和$11520。而对于当前的价格,将 少于$1/MB。

8. 选择(a),(c),(d)应该被限制在内核模式。

9. 个人的计算机系统总是交互式的,而且经常只有一个用户。而大型机系统几乎总有许多用 户强调批处理或者分时。除了对所有资源的有效使用,大型机系统上的保护更加重要。

10. 从管道中每纳秒出现一条指令。意味着该机器每秒执行十亿条指令。它对于管道有多少 个阶段全然不予理睬。即使是 10-阶段管道,每阶段 1 nsec,也将执行对每秒十亿条指令。因 为无论那种情况,管道末端输出的指令数都是一样的。

11. 原稿包含 80 X 50 X 700 = 2800000 字符。当然,这不可能放入任何目前的 CPU 中,而且 对于 1MB 的 cache 来说也太大了,但是如果可能的话,在寄存器中只需 2.8msec,在 Cache 中需要 5.8msec。整本书大约有 2700 个 1024 字节的数据块,因此从磁盘扫描大约为 27 秒, 从磁带扫描则需 2 分钟 7 秒。当然,这些时间仅为读取数据的时间。处理和重写数据将增加 时间。

12. 从逻辑上说,边界寄存器使用虚拟地址或者物理地址没有任何关系。然而,前者的性能 更好。如果使用虚拟地址,虚拟地址和基址寄存器的相加,与比较可以同时开始,而且可以

并行。如果使用物理地址,相加完成之前是不能进行比较的,这就增加了存取时间。

13. 也许。如果调用者取回控制,并且在最终发生写操作时立即重写数据,将会写入错误的 数据。然而,如果驱动程序在返回之前首先复制将数据复制到一个专用的缓冲器,那么调用 者可以立即继续执行。另一个可能性是允许调用者继续,并且在缓冲器可以再用时给它一个 信号,但是这需要很高的技巧,而且容易出错。

14. 陷井由程序造成的,并且与它同步。如果程序一而再地被运行,陷井将总在指令流中相 同位置的精确发生。而中断则是由外部事件和其时钟造成的,不具有重复性。

15. Base = 40000,Limit = 10000。按照本书中描述的方法 Limit = 50000 是不正确的。这种方 法也是可以执行的,不过这样做将等待 addree + Base 完成后才能开始边界检查,将会使计算 机速度减慢。

16. 进程表是为了存储当前被挂起、甚或是被延迟和阻塞的进程状态。在单一进程的系统中 是不需要,因为单一进程从不挂起。

17. 装配文件系统将使得装配目录中已有的任何文件都不可访问,因此装配点通常都是空的。 然而,系统管理人员可能需要将某些位于被装配目录中的非常重要的文件复制到装配点,使 得他们在进行设备检查或修理时,可以在紧急事件中的普通路径上找到这些文件。

18. 如果进程表中没有空闲的槽(或者没有内存和交换空间),Fork 将失败。如果所给的文件 名不存在,或者不是一个有效的可执行文件,Exec 将失败。如果将要解除链接的文件不存在, 或者调用 Unlink 的进程没有权限,则 unlink 将失败。

19. 如果 fd 不正确,调用失败,将返回.1.。同样,如果磁盘满,调用也失败,要求写入的字 节数和实际写入的字节数可能不等。在正确终止时,总是返回 nbytes。

20. 包含字节: 1,5,9,2。

21. 块特殊文件包含被编号的块,每一块都可以独立地读取或者写入。而且可以定位于任何 块,并且开始读出或写入。这些对于字符特殊文件是不可能的。

22. 系统调用实际上并没有名称,除了在文件中这样描述之外。当库例程 read 陷入内核时, 它将系统调用号码放入寄存器或者堆栈中。该号码通常用于一张表的索引。这里确实没有使 用任何名称。而另一方面,库例程的名称是十分重要的,因为它将用于程序中。

23. 是的,尤其当系统内核是消息传递系统时。

24. 就程序逻辑而言,库例程调用哪个系统调用是没有关系的。但是,如果需要考虑性能问 题,无需系统调用就可以完成的任务将使程序运行更快。所有的系统调用都会导致用户环境 和内核环境的切换开销。更进一步,在多用户系统中,在系统调用完成之前,操作系统可能 调度到其他的进程,这将使得调用过程的处理更加迟缓。

25. 某些 UNIX 调用没有相应的 Win32 API:

Link:Win32 程序不能给文件另外一个名称,或者使某个文件出现在多个目录中。同时, 试图创建链接可以便于测试,并且在文件上加锁。

Mount 和 umount:Windows 程序不能创建关于标准的路径的假定命名,因为具有多个 磁盘驱动器的系统上路径名,其驱动器部分是不同的。

Chmod:Windows 程序员不得不假定所有的用户都能访问每个文件。

Kill:Windows 程序员不能 kill 行为失常的程序。

26. 这些都可以直接转换:

(a) micro year = 106 X 365 X 24 X 3600 = 31.536 sec。

(b) 1km。

(c)有 240字节,也就是 1,099,511,627,776 字节。

(d)它是 6 X 1024公斤。

第二章 答案

1. 从阻塞到运行的转换是可以想象的。假设某个进程在 I/O 上阻塞,而且 I/O 结束,如果此 时 CPU 空闲,该进程就可以从阻塞态直接转到运行态。而另外一种转换(从就绪态到阻塞态) 是不可能的。一个就绪进程是不可能做任何会产生阻塞的 I/O 或者别的什么事情。只有运行 的进程才能被阻塞。

2. 应该有一个寄存器包含当前进程表项的指针。当 I/O 结束时,CPU 将把当前的机器状态存 入到当前进程表项中。然后,将转到中断设备的中断向量,读取另一个过程表项的指针(服务 例程)。然后,就可以启动这个进程了。

3. 通常,高级语言不允许访问 CPU 硬件,而这种访问是必需的。例如,中断处理程序可能 需要禁用和启用某个特定设备的中断服务,或者处理进程堆栈区的数据。另外,中断服务例 程需要尽快地执行。

4. 内核使用单独的堆栈有若干的原因。其中两个原因如下: 首先,不希望操作系统崩溃,

由于某些用户程序不允许足够的堆栈空间。 第二,如果内核将数据保留在用户空间,然后从系统调用返回,那么恶意的用户可能使

用这些数据找出某些关于其它进程的信息。

5. 即使是有可能实现,也是很难保持文件系统的一致性。假设某个客户进程给服务器进程 1 发送请求要更新文件。该进程更新其内存的 cache 项。然后,另一个客户进程给服务器进程

2 发送请求读取该文件。不幸的是,如果该文件还在 cache 中,服务器进程 2 对此毫不知情, 将返回过时的数据。如果第一个进程在缓冲后将文件写到磁盘中,而服务器进程 2 每次读取 时检查磁盘其缓存的备份是否是最新的,系统还可以工作,但是需要避免磁盘访问的所有缓 存系统。

6. 当线程停止时,其值保留在寄存器中。当进程停止时寄存器必须被保存。分时线程与分时 进程没有区别,因此每个线出都需要其自己的寄存器保存区。

7. 不会。如果单线程进程在键盘上阻塞,就不能创建子进程。

8. 当工作者线程从磁盘读取 Web 页时,它就会被阻塞。如果使用用户级线程,该动作将阻 塞整个进程,而破坏多线程的价值。这就是使用内核线程的原因:某些线程的阻塞不会影响 到其他线程。

9. 进程中的线程是相互协作的,而不是相互对立的。如果放弃是为了应用程序,那么线程将 放弃 CPU。毕竟,通常是同一个程序员写的代码。

10. 用户级线程不能按时钟剥夺,除非整个进程的时间片用完。内核级线程可以单独地被剥 夺。在后一种情况下,如果线程运行过久,时钟将中断该当前进程,因而当前线程也被中断。 内核可以自由地从同一个进程中选取其他线程运行。

11. 在单线程情况下,cache 命中需 15 msec,cache 未命中需要 90 msec。其加权平均为 2/3 * 15 + 1/3 * 90。因此,平均请求为 40 msec,而服务器每秒可处理 25 个。对于多线程服务器, 所有磁盘等待都是重叠的,因此每个请求都耗时 15 msec,而服务器每秒可处理 66.6666 个请 求。

12. 是的。如果服务器是完全 CPU 绑定的,则不需要多线程。这只会增加不必要的复杂性。 假设某个百万人口区域的电话查号系统(类似于 114),如果每个(姓名, 电话号码)记录为 64 个 字符,整个的数据库则为 64MB,这就很容易全部读入服务器内存中以提供快速的查询。

13. 指针是确实必要的,因为全局变量的大小是未知的。它可能是从字符到浮点数数组的任 何类型。如果保存其值,就不得不把其大小传递给 create_global,这都没有问题,但是必须 将其类型作为 set_global 的第二个参数,那么 read_global 返回值的类型是什么呢?

14. runtime 系统可以正好在这一时刻阻塞或者解除阻塞某个线程,并且忙于处理调度队列。 此时并不适合于时钟中断处理程序开始检查该队列是否应该进行线程切换,因为它们可能处 于不一致的状态。解决方法可以是:当进入 runtime 系统后,设置一个标志。时钟处理程序 将看到该标志,并且设置其自己的标志,然后返回。当 runtime 系统完成时,它将检测时钟 标志,看是否有时钟中断发生,并且现在运行时钟处理程序。

15. 这是可能的,不过效率很低。线程想要做一个系统调用,首先设定警报定时器,然后才 执行调用。如果线程阻塞,定时器将控制归还给线程包。当然,大多数调用是不阻塞的,而 定时器必须被清除。每个可能被阻塞的系统调用都必须作为 3 个系统调用来执行。如果定时 器过早时效,各种问题都可能发生。用这种方法建立线程包并不好。

16. 当低优先级进程位于其临界区,而高优先级进程就绪并且被调度时,将发生优先级倒置 问题。如果使用忙等待,它将一直运行。对于用户级线程,不可能发生低优先级线程突然被 剥夺而允许高优先级线程运行,因为是不可剥夺的。而内核级线程,就会出现这个问题。

17. 每个线程都是自己调用例程,因此它必须有其自己的堆栈以保存局部变量、返回地址等 等。这一点用户级线程和内核级线程是一样的。

18. 竞争条件是指如下的情形:两个(或多个)进程将要执行某些动作,其执行依赖于准确的定 时。如果某个进程首先执行,所有事件顺利完成,但是如果另一个先执行,则会产生致命的 错误。

19. 是。模拟的计算机可能是多道程序的。例如,当进程 A 运行时,它读出某些共享变量。 然后,发生一个模拟时钟计时,而进程 B 运行。它也读出相同的变量。接着,它把该变量加 1。当进程 A 运行时,如果它也是给变量加 1,就会产生竞争条件。

20. 是,它还是有用的。当然,它依然是忙等待。

21. 该方法对可剥夺调度完全没问题。事实上,它就是为这种情况设计的。当调度为不可剥 夺的,该方法将会失败。假设 turn 初值为 0,而进程 1 首先运行。它将一直循环,永不释放 CPU。

22. 当然可以。将内存字作为标志,0 表示没有进程使用临界变量,1 表示有某个进程正在使 用。将 1 放入寄存器中,并且交换内存字和寄存器。如果寄存器在交换后为 0,则准许访问。 如果它包含 1,则拒绝访问。当进程完成时,将 0 存储在内存标志中。

23. 执行信号量操作,操作系统首先要禁用中断。然后,它读取信号量的值。如果执行 down 操作,而信号量等于 0,就将调用进程放入与信号量有关的阻塞进程列表中。如果执行 up 操作,必须检测看是否有任何进程在信号量上被阻塞。如果有一个或多个进程被阻塞,从阻 塞进程的列表中移出一个,使之就绪。当所有这些操作都完成后,就可以开启中断了。 24. 将每个计数信号量与 2 个二值信号量联合:M 用于互斥;B 用于阻塞。另外,每个计数

信号量都组合一个用于保存 up 次数减去 down 次数的计数器,以及在该信号量上阻塞的进 程列表。为了实现 down 操作,进程首先通过对 M 执行 down 操作,以获得对信号量、计 数器以及列表的独占访问权。然后,将计数器减 1。如果大于等于 0,只需对 M 执行 up 操 作并退出即可。如果 M 为负数,就将该进程放入阻塞进程列表中。接着,对 M 执行 up 操作, 对 B 执行 down 操作来阻塞该进程。为了实现 up 操作,首先对 M 执行 down 操作以获得互 斥,然后将计数器加 1。如果计数器大于 0,则没有进程阻塞,就只需对 M 执行 up 操作。 不过,如果计数器小于等于 0,则必须从列表中移出某些进程。最后,按次序对 B 和 M 执行 up 操作。

25. 如果程序操作按阶段执行,直到两个进程都完成当前阶段才能进入下一阶段,这时就应 该使用屏障。

26. 对于时间片轮转调度,该方法不会出现问题。L 迟早会运行,而且最终将离开其临界区。 对于优先级调度,L 永远得不到运行;而对于时间片轮转,它将周期性地得到一时间片,因 此就有机会离开其临界区。

27. 对于内核线程,线程可以在信号量上阻塞,而内核可以运行该进程中的其它线程。因而, 使用信号量没有问题。而对于用户级线程,当某个线程在信号量上阻塞时,内核将认为整个 进程都被阻塞,而且不再执行它。因此,进程失败。

28. 其实现的代价很高。每次在某些等待变化的进程的谓词中出现的任何变量,runtime 系统 都必须重新计算该谓词,以判断该进程是否能够被解锁。而对于 Hoare 和 Brinch Hansen 管程, 则只需 signal 原语即可唤醒进程。

29. 雇员之间通过消息传递进行通信:在该例中,消息为订单、食物和袋子。在 UNIX 中, 该 4 个进程通过管道连接。

30. 它不会导致竞争条件(不会丢失任何东西),不过它是完全的忙等待。

31. 如果某个哲学家阻塞,其邻居稍后能够在 test 中检测其状态,发现他已经饥饿,当叉子 可用时,就可以唤醒他了。

32. 该变化将意味着在哲学家停止进餐后,他的邻居都不能接着被选择。事实上,他们永远 不会被选择。假设哲学家 2 完成了进餐,他将为哲学家 1 和 3 运行 test,而两者都不会被启 动,即使他们两个都饿了而且两个叉子都是可用的。类似的,如果哲学家 4 完成进餐,哲学 家 3 也不会被启动。他将无法启动。

33. 变种 1:读者优先。当读着活跃时,写者都无法启动。当一个新的读者出现时,它可以立 即开始除非当前有写者是活跃的。当写者完成时,如果有读者在等待,他们全都启动,无论 是否有写者存在。

变种 2:写者优先。当有写者等待时,读者都不会开始。当最后活跃的进程结束,如果有作 者,就启动它;否则,所有读者(如果有)全部开始。

变种 3:平衡的版本。当有读者是活跃的,新的读者可以立即开始。当写者完成时,新的写 者优先,如果有写者等待的话。也就是说,一旦开始读,就一直读到没有读者为止。同样地, 一旦开始作,所有挂起的写者都被允许运行。

34. 它将需要 nT sec。

35. 如果进程在列表中出现多次,它在每个周期内得到多个时间片。这种方法可以用来给重

要的进程更多的 CPU 时间。但是当该进程阻塞时,最好从可运行进程的列表中将其所有项都 删除。

36. 在简单的情况下是有可能通过看源代码来判断是否为 I/O 绑定的。例如,程序开始时, 将其所有输入文件读入到缓冲器中,这种程序通常不是 I/O 绑定的;但是,对不同文件进行 增量地读写(诸如编译程序)的问题很有可能是 I/O 绑定的。如果操作系统提供诸如 UNIX ps 的命令,就可以得知被程序使用的 CPU 时间的量,你能把这个时间量与整个的时间比较以判 断。当然,最有意义就是你是系统中唯一的用户。

37. 对于管道中的多个进程,普通的父进程可以将数据流的信息传递给操作系统。有了这个 信息,OS 就可以确定哪个进程可以向需要输入的阻塞进程提供输出。

38. CPU 的效率就是有用的 CPU 时间除以整个的 CPU 时间。

当 Q ≥ T 时,基本的周期就是进程运行 T,然后进程切换 S。因此,(a)和(b)的效率都是 T/(S + T)。当时间片比 T 短时,每运行一次 T 就要求 T/Q 次进程切换,浪费时间为 ST/Q。因此, 其效率为

T

T + ST /Q

也就是下降到 Q/(Q + S),这就是(c)的答案。至于(d),只需以 S 替代 Q,就可以计算出其效率为 50%。最后,(e)的效率趋近于 0。

39. 最短作业优先可以使得平均响应时间最短。

0 < X δ 3: X, 3, 5, 6, 9.

3 < X δ 5: 3, X, 5, 6, 9.

5 < X δ 6: 3, 5, X, 6, 9.

6 < X δ 9: 3, 5, 6, X, 9.

X > 9: 3, 5, 6, 9, X.

40. 对于时间片轮转,在头 10 分钟里,每个作业获得 1/5 的 CPU 时间。在第 10 分钟时,C 结束。在接下来的 8 分钟里,每个作业获得 1/4 的 CPU 时间,然后 D 完成。然后,在接下来 的 6 分钟内,余下的 3 个作业各获得 1/3 的 CPU 时间,直到 B 结束,以此类推。因此,5 个 作业的完成时间分别为是 10,18,24,28 和 30,平均为 22 分钟。

对于优先级调度,B 最先运行,6 分钟完成。其它作业分别在第 14,24,26 和 30 分钟完成, 平均为 18.8 分钟。

如果作业按 A?E 的次序执行,则分别在第 10,16,18,22 和 30 分钟完成,因此,平均为 19.2 分钟。

最后,最短作业优先调度的完成时间分别为第 2,6,12,20 和 30 分钟,平均为 14 分钟。

41. 第一次得到 1 个时间片。随后获得 2,4,8 和 15 个时间片,因此必须经过 5 次交换。

42. 可以检查程序是否期待输入,并且对输入进行处理。不期待输入也不对输入进行处理的 程序将不得到任何特殊的优先级提升。

43. 预测值为 40/8 + 20/8 + 40/4 + 15/2 = 25。

44. 所使用的 CPU 的片断为 35/50 + 20/100 + 10/200 + x/250。为了使得进程可调度,必须是 总和小于 1。因此,x 必须小于 12.5 msec。

45. 当内存太小不能载入所有就绪进程时,就需要使用两级调度。某些进程被载入内存,并 且从中选择一个运行。内存中进程会随着时间调整。这种算法容易实现也非常有效,另外, 时间片轮转调度并不管进程是否在内存中。

第三章 答案

1. 在美国的,假设有三个或更多候选人竞选总统。每个人都不足多数,又都不愿放弃。这就 是死锁。

2. 如果打印机在收到整个文件之前开始打印(加速响应),磁盘可能被其他请求文件装满,而 其他文件又必须等到第一个文件完成后才能开始,但是磁盘空间又无法接受当前文件。如果 后台打印直到整个的文件接受后才开始打印文件,就可以拒绝大的请求。开始打印文件相当 于保留打印机;如果将打印机保留到整个文件接受后,整个系统就可以避免死锁。当然无法 容纳的文件仍然是死锁的,必须另选其他设备打印较大的文件。

3. 打印机是不可剥夺的;系统在完成前一个作业之前,不能开始打印另一个作业。Spool 磁 盘是可剥夺的;假设协议允许的话,可以删除未发送完毕的大文件,让用户稍后再发送。

4. 是的,没有任何区别。

5. 是的,还有其他形式的图表。我们声明资源只能由单个的进程占用。由资源方块到进程圆 圈的弧线表明该进程拥有该资源。因此,具有从两个或更多弧线的方块意味着所有这些进程 都占用该资源,这是与规则不符的。因而,有多重的出弧的方块,而结束于不同的圆圈的任 何图表都是不合规则的。从方块到方块的弧,以及从圆圈到圆圈的弧也是违反规则的。

6. 可以将部分资源预留,只能由管理员自己的进程使用,这样就可以运行外壳和程序,对死 锁做出评估,以杀死某些进程是系统可以继续运行。

7. 这些变化都不会导致死锁。无论哪种情况,都没有出现循环等待。

8. 资源的自愿放弃非常类似于通过剥夺进行恢复。其主要区别在于计算机进程不能自己解决 这种问题。把操作系统作为警察,以覆盖独立进程所服从的一般规则。

9. 该进程请求的资源比系统所有的资源要多。没有什么方法可以获得这些资源,因此无法完 成,即使其他进程不再请求资源。

10. 如果系统有两个或多个 CPU,两个或多个进程可以平行,就可导致斜向的轨迹。

11. 是的。可以在三维中实现。Z 轴用于表示第三个进程执行的指令。

12. 该方法只能在预先确知什么时候使用资源的情况下才能进行调度。在实践中,这是很少 见的。

13. D 的请求是不安全的,而 C 的请求是安全的。

14. 某些状态是既非死锁也不安全的,但是这些状态会导致死锁状态。例如,假设有 4 种资 源:磁带,绘图仪,扫描仪和 CD-ROM,以及竞争这些资源的 3 个进程。有下列的情形: 已分配请求矩阵可用资源

A:2 0 0 0 1 0 2 00 1 2 1

B:1 0 0 00 1 3 1

C:0 1 2 1 1 0 1 0

该状态并未死锁,因为还可以执行很多行动,例如,A 仍然可以得到 2 台打印机。然而,如果每个进程都请求其剩余需求,就会导致死锁。

15. 该系统是不会死锁的。假设每个进程都已占用 1 个资源,还有 1 个资源是空闲的。任一 进程都可以请求该资源并且得到它,然后该进程能够完成并且释放 2 个资源。因此,死锁是 不可能的。

16. 如果某个进程有 m 个资源,该进程就能完成,而不会造成死锁。因此,最坏的情况是所 有进程都占又 m – 1 个资源,而且都再申请另一个。如果系统还剩余 1 个资源,其中一个进 程就能完成,并且释放其所有资源,同时也可以让其余进程也完成。因此,避免死锁的条件 就是 r ≥p(m - 1) + 1。

17. 不会。D 仍然能完成。当它完成后,它将归还足够的资源使得 E(或者 A)完成,以此类推。

18. 如果是 3 个进程,每个都能有 2 个驱动器。如果有 4 个进程,驱动器分配为(2, 2, 1, 1), 头两个进程可以完成。如果为 5 个进程,分配为(2, 1, 1, 1, 1),第一个进程仍然可以完成。如 果有 6 个进程,每个都占用 1 个磁带驱动器,而且再申请另一个,就会死锁。因此,只要 n < 6,系统就不会死锁。

19. 可用资源的向量与矩阵中一行的比较需要m次操作。该步骤必须重复n次以查找某个可以 完成的进程,并且标记该进程。因此,标记进程需要mn级操作。对所有n个进程重复该算法 意味着需要mn2次操作。

20. 需求矩阵如下:

0 1 0 0 2

0 2 1 0 0

1 0 3 0 0

0 0 1 1 1

如果 x = 0,立即死锁。如果 x = 1,进程 D 能完成。当它完成时,可用向量为 11221。不幸的 是,还是死锁。如果 x = 2,在 D 运行之后,可用向量为 11321,而 C 就能运行。C 完成后, 归还其资源,可用向量是 22331,这样 B 也能运行并且完成,然后 A 运行且完成。因此,为 了避免死锁,x 的最小值为 2。

21. 是。假设所有邮箱都是空的。此时,A 发送到 B 并且等待应答,B 发送到 C 并且等待应 答,而 C 发送到 A 并且等待应答。这样,所有死锁的条件都满足了。

22. 假设进程 A 要求按 a, b, c 申请记录。如果进程 B 同样先请求 a,其中某个进程将得到它, 而另一个将被阻塞。这种情形总是不会造成死锁的,因为,获得记录 a 的进程现在没有干扰 而运行结束。在其余 4 种组合中,某些可能导致死锁而某些不会死锁。6 种情况如下:

a b c 不会死锁

a c

b 不会死锁

b a

c 可能死锁

b c a 可能死锁

c a b 可能死锁

c b a 可能死锁

因为 6 种组合中有 4 个可能导致死锁,因此,有 1/3 机会避免死锁,2/3 机会可能死锁。

23. 两阶段加锁可以消除死锁,但是引入了潜在的饥饿。进程必须不断测试,而无法获取其 所有记录。应该设置其尝试的上限。

24. 为了避免循环等待,按照账号号码对资源(也就是账号)进行编号。在读入输入数据行后,

该进程锁首先对低编号的账号加锁,锁定后,再锁另一个。由于没有进程会等候比锁定账号 更低的账号,因此不会循环等待,因而也不会死锁。

25. 按照如下方法改变请求新资源的方案。如果某进程请求某个新资源而且该资源是可用的, 它将得到该资源,并且保留其已有的。如果新资源不可用,释放其所有已占用资源。此时, 死锁是不可能的,并且不会出现获得新资源而失去已有资源的危险。当然,进程只有在可能 释放资源的情况下才行。

26. 我给的是 F(不及格)。该进程做什么? 由于它明显需要资源,它只不过再次申请并且再次 阻塞。并不比一直阻塞更好。事实上,它可能更糟,因为系统需要记录各竞争进程等待的时 间,而把新近释放的资源分配给等待最久的进程。而周期性地计时和不断尝试,使得进程失 去其资历。

27. 如果两个程序都是先申请得到 Woofer,计算机将得到无尽序列的饥饿:请求 Woofer,取 消请求,要求 Woofer,取消要求等等。如果其一要求得到狗屋,而另一个要求得到狗,就是 死锁,这样双方发现和然后重来,但是在下一个周期再次重复。无论那种情况,如果两台计 算机被编程首先请求狗或者狗屋,不是饥饿就是死锁。这里两者之间没什么区别。在大多数 死锁问题中,饥饿似乎并不是严重问题,只需引入随机延迟就使得饥饿几乎不可能出现。不 过,该方法在此没有作用。

第四章 答案

1. 4 个进程空闲的总量为 1/16,因此,CPU 的空闲时间也是 1/16。

2. 如果每个作业都有 50%的I/O等待,那么没有竞争的情况下,需要花费 20 分钟完成。如果 顺序运行,第二个将在第 40 分钟完成。对于 2 个作业,CPU近似利用率为 1 - 0.52。因此, 每一分钟实际时间,每个作业获得 0.375 分钟CPU时间。为了获得 10 分钟CPU时间,每个作 业必须运行 10/0.375 分钟,大约为 26.67 分钟。所以,顺序运行的作业需要 40 分钟完成,但 是并行在 26.67 分钟之后完成。

3. 几乎整个内存都必须复制,也就是要求读出每个内存字,然后重写到不同的位置。读 4 个 字节需 10 nsec,因此读 1 个字节需 2.5 nsec,而还要花费 2.5 nsec用于重写,因此,对于每个 字节的压缩需要 5 nsec。其速率为 200,000,000 字节/sec。为了复制 128 MB(227字节,也就是 大约 1.34×108字节),该计算机需要 227/200,000,000 sec,也就是大约 671 msec。该数字是稍微 悲观的,因为如果内存底部的最初的空洞为k字节,那么该k字节无需复制。不过,如果有许 多空洞和许多数据碎片,因此空洞将非常小,k也就非常小,而误差也非常小。

4. 位映像每个分配单元需要 1 位。对于 227/n个分配单元,需要 224/n字节。链表总共有 227/216 = 211个节点,每个节点 8 字节,也就是总共 214字节。对于小的n,链表较好。对于大的n,位 映像较好。n为 1 KB时,两者相等。

5. 首次适配分别为 20 KB,10 KB,18 KB。最佳适配为 12 KB,10 KB,和 9 KB。最差适配 为 20 KB,18 KB 和 15 KB。下次适配为 20 KB,18 KB 和 9 KB。

6. 实际内存使用物理地址。也就是内存芯片对之作出反应的总线数字。虚拟地址为对应于进 程地址空间的逻辑地址。因此,16 位字的机器可以生成的虚拟地址最高达 64K,无论该机器 的内存是多于还是少于 64 KB。

7. 对于 4-KB 页尺寸(页号,偏移)对分别为(4, 3616),(8, 0)和(14, 2656)。对于 8-KB 页尺寸分 别为(2, 3616),(4, 0)和(7, 2656)。

8. (a) 8212

(b) 4100

(c) 24684

9. 他们创建一个 MMU 并将其插入到 8086 和总线之间。因此,所有进入 8086 的物理地址都 作为虚拟地址。然后,MMU 将其映射到物理地址上,也就是发送到总线上的地址。

10. 所有进程的整个虚拟地址空间为 nv,这就是页面存储所需的。不过,可以在 RAM 中存 储量为 r,因此需要的磁盘存储量仅为 nv - r。该量比实际所需的要大得多,因为极少有 n 个 进程实际运行,而且这些进程也极少需要其最大允许的虚拟内存。

11. 每 k 条指令一次缺页,需另加 n/k nsec,因此平均的指令时间为 10 + n/k nsec。

12. 该页表包含 232/213项,也就是 524,288 项。装载该页表需 52 msec。如果某进程得到 100 msec,那么载入页表为 52 msec,运行时间为 48 msec。因此,52%的时间用于载入页表。

13. 20 位被用于虚页号,因此偏移还剩 12 位。页面大小为 212 = 4-KB。20 位的虚页号也就意 味着 220页。

14. 页面数只依赖于 a,b 和 c 之和。至于它们是如何划分是无关的。

15. 对于一级页表,需要 232/212 = 1M页。因此,该页表必需 1M项。对于二级页表,主页表 有 1K项,每项都指向一个二级页格。仅使用了这两个。总共只需 3 个页格项,一个在顶级页 表中,以及每个低级页表中一个。

16. 代码和引用串如下:

LOAD 6144, R0 1(I), 12(D)

PUSH R0 2(I), 15(D)

CALL 5120 2(I), 15(D)

JEQ 5152 10(I)

代码(I)表示指令引用,而(D)表示数据引用。

17. 有效的指令时间为 1h + 5(1 - h),h 为命中率。因此,要使时间小于 2 nsec,h 必须至少为 0.75。

18. TLB 中不需要 R 位。这里出现的页表明其已被引用;否则,就不会再次出现。因此,R 位完全是多余的。不过,当该项被写回内存时,需要设置内存页表的 R 位。

19. 相联存储器的本质是同时把多个寄存器的内容与关键字进行比较。对于每个寄存器,必 须有一组比较器,将其每一位与搜索的关键字逐位比较。实现这样的设备所需的门(或者晶体 管)的数目是寄存器数目的线形函数,因此扩展该设计的费用也是线形增长的。

20. 8-KB页和 48-位虚拟地址空间,虚页数为 248/213 = 235(大约 340 亿)个。

21. 内存有 228/213 = 32,768 页。32K的哈希表的平均链长为 1。为了使之小于 1,必须使用下 一个尺寸 65,536 项。将 32,768 项放入 65,536 格中使得其平均链长为 0.5,以保证快速的查询。

22. 这似乎不太可能,除非其程序在编译时是完全可预测其执行的,这并常见也没什么用处。 如果编译程序收集关于例程的调用代码的位置信息,这些信息可以链接时被用来重整目标代 码,使例程被定位于接近其调用代码。这很有可能做例程与调用代码处于同一页。当然,这 对该程序中从许多其它地方的调用没有什么帮助。

23. FIFO 的页框如下:

x0172333300

xx017222233

xxx01777722

xxxx0111177

LRU 的页框如下:

x0172327103

xx017232710

xxx01773271

xxxx0111327

FIFO 发生 6 次缺页;LRU 为 7 次。

24. 第一个 R 位为 0 页将被选择,也就是 D。

25. 计数器:

Page 0: 01101110

Page 1: 01001001

Page 2: 00110111

Page 3: 10001011

26. 第一个 R = 0 且 age > τ将被选择。因此从头开始扫描,最前的一页(1620)被清除。

27. 该页的 age 为 2204 – 1213 = 991。如果τ= 400,它肯定地不在工作集中,最近没有被引用, 因此,将被清除。τ= 1000 就不同了。该页位于工作集中,就不会被清除。

28. 寻道加上旋转延时为 20 msec。对于 2-KB 页,传输时间为 1.25 msec,总共为 21.25 msec。 载入 32 页需 680 msec。对于 4-KB 页,传输时间为 2.5 msec,总计 22.50 msec。载入 16 页需 360 msec。

29. NRU 移去第 2 页。FIFO 移去第 3 页。LRU 移去第 1 页。第二次机会移去第 2 页。

30. PDP-1 分页磁鼓的优点是无需旋转延时。每次内存读写都可以节约一半的旋转时间。

31. 正文为 8 页,数据为 5 页,而堆栈为 4 页。该程序无法放入,因为它需要 17 个 4096-字 节的页。而对于 512-字节的页,就不一样了。正文正好 64 页,数据 33 页,而堆栈 31 页, 总共 128 个 512-字节的页,刚好。

32. 如果页面可以共享,就可以出现在两个工作集中。例如,如果某分时系统的 2 个用户运 行同样的编辑程序,程序正文是共享的,而不是拷贝,其中某些页可以同时在每个用户的工 作集中。

33. 这是可能的。假设段不在,其保护信息肯定在页表中。如果每个进程都有其自己的页表, 那么每个都有其自己保护位。它们就可以是不同的。

34. 该程序有 15,000 次缺页,每次需额外花费 2 msec 的处理时间。缺页的总处理时间为 30 sec。 也就是意味着所使用的 60 sec 中,一半用于处理缺页,一半用于运行程序。如果两倍的内存 运行该程序,却也将减少一半,而处理缺页的时间只需 15 sec,因此整个运行时间为 45 sec。

35. 如果不能修改程序,则该方法是有效的。如果数据不能被修改,对数据也是有效的。不 过,程序通常是不能被修改的,而数据很少不能被修改。如果二进制文件中的数据区被更新 的页重写,下次运行程序时,将不包含原来的数据。

36. 该指令可以跨越一页的边界,仅是读指令时就可导致两次缺页。读取内存字也可能跨越 一页的边界,又产生 2 次缺页,总共 4 次。如果内存字必须挨着排列,该数据字还可能导致 一次缺页。

37. 当最后的分配单元不满时,就产生了内部碎片。而外部碎片是指两个分配单元之间被浪 费的空间。在分页系统中,最后一页丢失的空间为内部碎片。在纯分段系统中,段之间的某 些空间是不可用的。这就是外部碎片。

38. 不用。查找关键字为段号加上虚页号,因此,一次匹配就可以找到该页。

第五章 答案

1. 在此图中,一个控制器有两个设备。单个控制器可以有多个设备就无需每个设备都有一个 控制器。如果控制器变得几乎是自由的,那么只需把控制器做入设备本身就行了。这种设计 同样也可以并行多个传输,因而也获得较好的性能。

2. 太简单了。扫描仪最高速率为 400 KB/sec。而总线程和磁盘都为 16.7 MB/sec,因此磁盘 和总线都无法饱和。

3. 这不是一个好主意。内存总线肯定比 I/O 总线快。一般的内存请求总是内存总线先完成, 而 I/O 总线仍然忙碌。如果 CPU 要一直等待 I/O 总线完成,那就是将内存的性能降低为 I/O 总线的水平。

4. 每次总线处理都有请求和响应,各需 100 nsec,也就是每次 200 nsec。这就表明其处理能 力为 500 万/sec。如果每次都是 4 个字节,总线速率必须到达 20 MB/sec。这些处理与 4 个 I/O 设备的事实是不相干的。总线处理为 200 nsec,不论是针对相同设备或者不同设备,因此 DMA 控制器的通道数有没有关系。总线根本不知道或者也不关心。

5. 一次中断需要入栈 34 个字。而从中断返回需要把 34 个字从栈中取出。总耗时为 680 nsec。 因此,每秒最多处理 147 万次中断,假设每次中断什么也不做。

6. 在开始中断服务例程时就确认是可以的。而在最后才做的原因是因为中断服务例程的代码 都非常短。通过先输出另一个字符和然后确认该中断,如果立即发生另一个中断,打印机将 在此中断期间工作,将使得打印稍快。该方法的缺点是当其他中断禁用时,死机时间稍长。

7. 是的。入栈的 PC 指向第一条未读取的指令。之前的所有指令都已执行,而指向的指令及 其后续指令均尚未执行。这就是精确中断的条件。精确中断在单管线的机器上不难实现。只 有当指令不按序执行时才会有麻烦,该例不是。

8. 该打印机打印每分钟打印 50 X 80 X 6 = 24000 个字符,也就是 400 字符/sec。每个字符使 用 50 nsec 的 CPU 时间用于中断,因此,每秒总共的中断时间是 20 msec。使用中断驱动 I/O, 余下的 980 msec 可供其它使用。换句话说,中断耗时只占 CPU 时间的 2%,这几乎不会影响 运行的程序。

9. 设备无关性是指以相同的方法访问文件和设备,而与其物理特性无关。如果系统采用一组 调用写文件,而使用另一组调用写控制台(终端),那么就不具有设备无关性。

10. (a) 设备驱动程序。

(b) 设备驱动程序。

(c) 设备无关的软件。

(d) 用户级软件。

11. 按照图 5-17 中的数据,对于软盘,每磁道为 9 X 512 X 8 = 36864 位。按照每旋转一周 200 msec 其位速率为 184,320 位/sec。硬盘平均每磁道 281 个扇区,因此平均每磁道有 281 X 512 X 8 = 1,150,976 位。对应于 8.33 msec 的旋转时间,每秒旋转 120 周(7200 rpm),因此每秒传 输 120 X 1,150,976 位。也就是大约 138M 位/sec。软盘的数据率大概是 56-Kbps 调制解调器 的 3 倍。而硬盘的数据率比快速以太网要快大约 38%的。不过,这些计算高估了实际的最高 数据速率,因为磁盘上每 512 字节的数据中包含一些字节的格式化信息,用于识别磁道和扇

区;以及扇区间隔使得速度稍有变化,以防扇区重叠。

13. 如果每次输出都立即分配打印机,某进程可以通过打印机 1 个字符来冻结打印机,然后 休眠一个星期。

14. 该磁盘旋转速率为 120 rps,因此每旋转一周需 1000/120 msec。对于每次旋转 200 个扇区, 则扇区时间为(1/200) X (1000/120) = 5/120 = 1/24 msec。在 1 msec 的寻道时间内,将越过 24 个扇区,因此柱面倾斜应该为 24。

15. 如上题所述,扇区时间为 1/24 msec。也就意味着该磁盘每秒读取 24,000 个扇区。而每个 扇区为 512 个字节,其数据速率为 12,288,000 字节/sec。也就是 11.7 MB/sec。

16. RAID level 2 不仅可以从故障驱动器来恢复错误位,还可以从未被检测的的瞬时差错中恢 复。如果某驱动器发送一个坏数据位,RAID level 2 可以纠正,而 RAID level 3 不能。

17. 0 次故障的概率P0为(1 - p)k。1 次故障的概率P1为kp(1 - p)k-1。而整个RAID发生故障的概率 为 1 - P0 - P1。也就是 1 - (1 - p)k - kp(1 - p)k-1。

18. 在两个磁极之间会产生磁场。不仅难于使磁场源变小,而且磁场传播迅速,这将导致此 行媒体的表面接近磁源或者传感器的机械问题。而半导体激光可以在非常小的地方产生激光, 而且激光可以从较远的地方感知这些极小的点。

19. 有可能。如果大多数文件被存储在逻辑上连续的扇区内,那么就可能使得程序有时间以 交叉扇区的形式处理刚刚接收的数据,这样当下一请求发出时,磁盘正好在正确的地方。

20. 旋转时间为 200 msec。顺序读取所有扇区需要旋转 1/2 周以到达扇区 0,以及旋转 2.75 周以读取数据(扇区 7 读取之后,传输完成)。因此,需要旋转 3.25 周,也就是 650 msec。650 msec 读取 4K,其速率为 6302 字节/sec。而对于非交叉方式磁盘,需要 300 msec 读取 4K, 也就是 13,653 字节/sec。

21. 也许要,也许不要。如果跨道时磁头移动少于 2 个扇区,就不需要柱面倾斜。如果大于 2 个扇区,则需要柱面倾斜。

22. 驱动器容量和传输速率是原来的 2 倍。寻道时间和平均旋转延时是相同的。

23. 一个相当明显的后果是没有哪个操作系统可以生效,因为这些操作系统都会在原来的分 区表位置查找分区。改变分区表格式将使所有操作系统都失败。分区表的唯一方法是同时改 变所有操作系统以使用新的格式。

24. (a) 10 + 12 + 2 + 18 + 38 + 34 + 32 = 146 柱面 = 876 msec.

(b) 0 + 2 + 12 + 4 + 4 + 36 +2 = 60 柱面 = 360 msec.

(c) 0 + 2 + 16 + 2 + 30 + 4 + 4 = 58 柱面 = 348 msec.

28. 一年的平均秒数为 365.25 X 24 X 3600 = 31,557,600。计数器大约在 232秒之后回绕。 232/31,557,600 = 136.1 年,也就是大约在 2106 年 2 月。当然,到那时所有计算机至少是 64位的,因此该情形将不会发生。

29. 每条线需要 3200 X 8 = 25,600 次采样/sec。对于每次采样 1 nsec,每秒钟内每条线都需耗 时 25.6 msec。如果为 39 条线程,处理器忙碌时间为 39 X 25.6 = 998.4 msec/sec,也就是说该 插卡容纳最多 39 条线。

30. 向 RS232 终端写入一个字符之后,在它被打印之前,需花费(比较)长的时间。如果只是

等待浪费时间,因此使用中断。而内存映射终端,字符即时被接受,因此中断没有意义。

31. 按照 56 Kbps 速率,每秒 5600 次中断,总共 5600 X 100 nsec = 560 msec。也就是占用 56% 的 CPU 时间。

32. 滚动窗口需要复制 59 行 X 80 字符 = 4720 字符。复制 1 个字符(16 个字节)需 800 nsec, 因此整个窗口需要 3.776 msec。向屏幕写 80 个字符需 400 nsec,因此滚动和显示新的一行需 4.176 msec。也就是大约 239.5 行/sec。

34. 它应该移动光标到第 5 行,第 7 列,然后删除 6 个字符。该序列为 ESC [5; 7 H ESC [6 P。

35. 终端内部嵌入的处理器必须复制所有字符,使之上移。从内部看,终端是内存映射的。 这是没办法的,除非使用特殊的硬件。

37. 鼠标的最大速率为 200mm/sec,也就是 2000 mickeys/sec。如果每次报告为 3 个字节,输 出速率为 6000 字节/sec。

38. 对于 24-位彩色系统,仅能够表示 224种颜色。这不是颜色的全部。例如,假设某摄影师 以 300 中纯蓝绘图,每种都有一点区别。那么,而(R, G, B)中的B只有 8 位,只能表示 256 种 蓝色,而无法表示 300 种蓝色。

39. (a) 24 位真彩 RGB 中每像素需 3 个字节,因此该表中的字符为 16 X 24 X 3 = 1152 字节。

(b) 如果每字节 100 纳秒,那么每个字符需 1152 X 100 nsec = 115.2 微秒。也就是大约 每秒输出 8681 字符。

40. 重写文本屏幕需要复制 2000 个字节,也就是 20 微秒。重写图形屏幕需要复制 1024 x 768 x 3 = 2,359,296 字节,大约为 23.6 毫秒。

41. 在 Windows 中,OS 自己调用处理程序例程。在 X Window 中,不会发生类似的事情。X 只是获取消息,并在内部处理它。

42. 第一个参数是必需的。首先,坐标是对应于某个窗口的,因此需要 hdc 来指定窗口,也 就是其坐标原点。第二,如果该矩形落在窗口外面,将被截除,因此还需要该窗口的坐标。 第三,矩形颜色和其它属性必须由 hdc 指定。因此,hdc 是十分重要的。

43. 显示大小为 400 x 160 x 3 = 192,000 字节。10 fps 也就是 1,920,000 字节/sec = 15,360,000 位/sec。占用 100-Mbps 快速以太网带宽的 15%。

44. 网络带宽是共享的,因此 100 个用户同时请求不同的数据,1-Mbps 的网络将使得每个用 户的有效带宽为 10-Kbps。对于一个共享网络,Tv 节目是多点传送的,因此视频包只需发送 一次,无论多少用户在观看都不影响其效果。而如果是 100 个用户浏览 Web,每个用户的性 能可能迅速降低。

第六章 答案

1. 可以使用如下的表示:

/etc/passwd

/./etc/passwd

/././etc/passwd

/./././etc/passwd

/etc/../etc/passwd

/etc/../etc/../etc/passwd

/etc/../etc/../etc/../etc/passwd

/etc/../etc/../etc/../etc/../etc/passwd

2. Windows 的方法是使用文件扩展名。每种扩展名对应于一种文件类型,以及某些程序来 处理这种类型的文件。另一个方法是记住由哪个程序创建了该文件,然后运行该程序。 Macintosh 就是用这种方法。

3. 这些系统直接把程序载入内存,并且从 word 0(也就是幻数)开始执行。为了避免将 header 作为代码执行,幻数是一条 BRANCH 指令,其目标地址正好在 header 之上。按这种方法, 就可能把二进制文件直接读取到新的进程地址空间,并且从 0 运行,甚至无需知道 header 有 多大。

4. 如果文件按照记录构造的,而且每个记录的具体位置为关键词,当按照关键词请求记录 时,操作系统就会关心记录长度。在这种情况下,系统必须知道记录有多大,才能按照关键 词搜索记录。

5. 如果没有 open,每次 read 时都必须指定要打开的文件名。然后,系统必须读取该文件的 i-节点,即使该节点已经在 cache 中。可能出现的问题就是来回从磁盘读入 i-节点。这多少显 得有点笨,不过还是可以运行的。

6. 不需要。如果想要再次读取文件,只需随机地访问字节 0 即可。

7. 是的。rename 调用不会改变文件的创建时间和最后的修改时间,但是创建一个新的文件, 其创建时间和最后的修改时间都会改为当前的系统时间。另外,如果磁盘满,复制可能会失 败。

8. 被映射的文件部分必须从页边界开始,并且其长度是页长的整数倍。每个映射的页把文 件本身作为后备存储。

9. 使用诸如/usr/ast/file 之类的文件名。这样看起来就象多层目录的路径名,而只不过是文 件名中包含斜线(/)而已。

10. 一种方法是在 read 系统调用中添加额外的参数,以告知从什么地址读取。实际上,每次read 都会在文件中执行隐含的定位。不过该方法的缺点是:

(1) 每次 read 都需要额外的参数;

(2) 用户需要记录文件指针的位置。

11. “..”部分把搜索移动到/usr,因此../ast 即为/usr/ast。因此,../ast/x 就是/usr/ast/x。

12. 由于这些被浪费的空间在分配单元(文件)之间,而不是在它们内部,因此,这是外部碎 片。这类似于交换系统或者纯分段系统中出现的外部碎片。

13. 需要 9 毫秒才开始传输。以 223 字节/秒的传输速率读取 213 字节需要大约 2-10 = 977 微 秒,总共 9.977 毫秒。写回磁盘同样需要 9.977 毫秒。这样,复制一个文件需 19.954 毫秒。 为了压缩 8-GB 的磁盘空间,也就是 220 个文件。每个文件 19.954 毫秒,总共需要 20,923 秒, 也就是 5.8 个小时。显然,在每个文件删除后都压缩磁盘不是一个好办法。

15. 数码相机按顺序记录一系列照片,存储在某种非易失性存储媒介(例如,闪存)上。当照

相机复位时,该媒介被清空。然后,按顺序依次记录一张照片,直到存储满,然后上载到硬

盘上。对于这种应用,相机内部的连续文件系统时最理想。

16. 它在目录项中找到文件第一块的地址。然后,顺着 FAT 中的块指针链,直到定位于它所 需要的块。然后记下其块号码,用于下一次 read 系统调用。

17. 间接块可以保存 256 个磁盘地址。与 10 个直接的磁盘地址一道,最大文件有 266 块。由 于每块为 1 KB,最大的文件是 266 KB。

19. Elinor 是正确的。表格中同时有 i-节点的 2 个备份是灾难性的,除非都是只读的。最坏 的情况就是当两个都同时被更新时。当把 i-节点写回磁盘时,后写入的会把先写入的删除, 而磁盘块就丢失了。

20. 硬链接无需额外的磁盘空间,而只需在 i-节点中记录有多少个链接。符号链接需要空间 存储所指的文件的名称。符号链接可以指向其他机器上的文件,甚至是 Internet 上的文件。 而硬链接只能指向其自己分区中的文件。

21. 位映像需要 B 位。而空闲列表需要 DF 位。

22. 位映像为:

a) 写入文件 B 后:1111 1111 1111 0000

b) 删除文件 A 后:1000 0001 1111 0000

c) 写入文件 C 后:1111 1111 1111 1100

d) 删除文件 B 后:1111 1110 0000 1100

29. 平均时间为 h + 40(1 - h)。

31. 对于 15000rpm,每旋转一周需 4 毫秒。那么,读取 k 字节的平均存取时间为

8(寻道时间) + 2(旋转半周的时间) + (k/262144) x 4(读取 k 字节的时间)毫秒。

对于 1 KB,2 KB 和 4 KB 的块,访问时间分别为 10.015625 毫秒,10.03125 毫秒和 10.0625毫秒(几乎没有什么不同)。其数据速率分别为 102240 KB/sec,204162 KB/sec 和 407,056 KB/sec。

37. 需要下列的磁盘操作:

读根目录

读/usr 的 i-节点 读

/usr 的目录 读

/usr/ast 的 i-节点

读/usr/ast 的目录

读/usr/ast/courses 的 i-节点 读

/usr/ast/courses 的目录 读

/usr/ast/courses/os 的 i-节点 读

/usr/ast/courses/os 的目录 读

/usr/ast/courses/os/handout.t 的 i-节点

总共 10 个磁盘读操作。

国际金融习题答案(全)

第一章 三、名词解释 1、国际收支:在一定时期内,一国居民与非居民之间经济交易的系统记录。 2、国际收支平衡表:一国将其一定时期内的全部国际经济交易,根据交易的内容与范围,按照经济分析的需要设置账户或项目编制出来的统计报表。 3、居民是指一个国家的经济领土内具有经济利益的经济单位。在国际收支统计中判断一项交易是否应当包括在国际收支的范围内,所依据的不是交易双方的国籍,而是依据交易双方是否有一方是该国居民。 4、一国的经济领土:一般包括一个政府所管辖的地理领土,还包括该国天空、水域和邻近水域下的大陆架,以及该国在世界其他地方的飞地。依照这一标准,一国的大使馆等驻外机构是所在国的非居民,而国际组织是任何国家的非居民。 5、经常账户:是指对实际资源在国际间的流动行为进行记录的账户,它包括以下项目:货物、服务、收入和经常转移。反映进口实际资源的记人经常项目借方;反映出口实际资源的记人经常项目贷方。 6、经常转移包括各级政府的转移(如政府间经常性的国际合作、对收入和财政支付的经常性税收等)和其他转移(如工人汇款)。当一个经济体的居民实体向另一个非居民实体无偿提供了实际资源或金融产品时,按照复式记账法原理,需要在另一方进行抵消性记录以达到平衡,也就是需要建立转移账户作为平衡项目。 7、贸易收支:又称有形贸易收支,是国际收支中的一个项目,指由商品输出入所引起的收支。出口记为贷方,进口记为借方。IMF规定,在国际收支的统计工作中,进出口商品都以离岸价格(FOB)计算。若进口商品以到岸价格(CIF)计算时,应把货价中的运费、保险费等贸易的从属费用减除,然后列入劳务收支项目中。 8、服务交易:是经常账户的第二个大项目,它包括运输、旅游以及在国际贸易中的地位越来越重要的其他项目,如通讯、金融、计算机服务、专有权征用和特许以及其他商业服务。将服务交易同收入交易明确区分开来是《国际收支手册》第五版的重要特征。 9、收入交易:包括居民和非居民之间的两大类交易:①支付给非居民工人(例如季节性的短期工人)的职工报酬;②投资收入项下有关对外金融资产和负债的收入和支出。第二大类包括有关直接投资、证券投资和其他投资的收入和支出以及储备资产的收入。最常见的投资收入是股本收入(红利)和债务收入(利息)。应注意的是,资本损益是不作为投资收入记载的,所有由交易引起的现已实现的资本损益都包括在金融账户下面。将收入作为经常账户的独立组成部分,这种处理方法与国际收支账户体系保持了一致,加强了收入与金融账户流量、收入与国际收支和国际投资头寸之间的联系,提高了国际收支账户的分析价值。 10、资本账户:包括资本转移和非生产、非金融资产的收买和放弃。资本转移包括:①固定资产所有权的资产转移;②同固定资产收买或放弃相联系的或以其为条件的资产转移;③债权人不索取任何回报而取消的债务。非生产、非金融资产的收买或放弃是指各种无形资产如专利、版权、商标、经销权以及租赁和其他可转让合同的交易。

国际金融(第五版) 课后习题以及答案

国际金融全书课后习题以及答案 1.1外汇 1.1.1 如何定义外汇? (P12) 动态的外汇:指一国货币兑换成另- -国货币的实践过程 静态的外汇:指用于国际汇兑活动的支付手段和工具) 外汇:是实现国际经济活动的基本手段,是国际金融的基本概念之一。其一是指一国货币兑换成另一国货币的实践过程,通过这种活动来清偿国家间的债权债务关系,是动态的外汇概念;其二是国家间为清偿债权债务关系进行的汇总活动所凭借的手段和工具,或者说是用于国际汇总活动的支付手段和工具,这是静态的外汇概念。 外汇的主要特征(P12) (1)外汇是以外币表示的资产。(美元? ) (2)外汇必须是可以自由兑换成其他形式的,或以其他货币表示的资产。(全球普遍接受性) 判断: (1)外国货币是外汇。错误 (2)外汇是可以自由兑换的外国货币。错误(没有说一定是货币,例如债券、股票等) 1.2外汇汇率 1.2.1 什么是汇率(P14) 外汇汇率(foreign exchange rate)又称外汇汇价,是不同货币之间兑换的比率或比价,也可以说是以一种货币表示的另一种货币的价格。 外汇汇率具有双向表示的特点: 既可以用本国货币表示外汇的价格,也可以用外汇表示本国货币的价格。 1.2.2汇率标价方法 直接标价法; 间接标价法;P14 美元标价法。 直接标价法(P14) 直接标价法(direct quotation)是指以一定单位的外国货币为标准(1,100,10000等)来计算折合多少单位的本国货币。 这种标价法的特点是,外币在前,本币在后,外币为整本币为零。汇率变动,外币不变,本币变化。如果汇率升高,说明外币升值、本币贬值;反之,如果汇率降低,则说明外币贬值、本币升值。 间接标价法(indirect quotation)是指以一定单位的本国货币为标准(比如,100,10000等),来计算折合若干单位的外国货币。 这种标价法的特点是本币在前,外币在后,本币为整,外币为零。汇率变动,本币不变,外币变化。如果汇率升高,说明外币贬值、本币升值;反之,如果汇率降 低,则说明外币升值、本币贬值。 美元标价法(P15) 美元标价法是指以一定单位的美元为标准(比如,100,10000等),来计算折合若干单位的其他国货币。1美元=110.06日元

现代操作系统(第三版)答案

MODERN OPERATING SYSTEMS SECOND EDITION PROBLEM SOLUTIONS ANDREW S.TANENBAUM Vrije Universiteit Amsterdam,The Netherlands PRENTICE HALL UPPER SADDLE RIVER,NJ 07458课后答案网 w w w .k h d a w .c o m

SOLUTIONS TO CHAPTER 1PROBLEMS 1.An operating system must provide the users with an extended (i.e.,virtual)machine,and it must manage the I/O devices and other system resources. 2.Multiprogramming is the rapid switching of the CPU between multiple processes in memory.It is commonly used to keep the CPU busy while one or more processes are doing I/O. 3.Input spooling is the technique of reading in jobs,for example,from cards,onto the disk,so that when the currently executing processes are ?nished,there will be work waiting for the CPU.Output spooling consists of ?rst copying printable ?les to disk before printing them,rather than printing directly as the output is generated.Input spooling on a personal computer is not very likely,but output spooling is. 4.The prime reason for multiprogramming is to give the CPU something to do while waiting for I/O to complete.If there is no DMA,the CPU is fully occu-pied doing I/O,so there is nothing to be gained (at least in terms of CPU utili-zation)by multiprogramming.No matter how much I/O a program does,the CPU will be 100percent busy.This of course assumes the major delay is the wait while data are copied.A CPU could do other work if the I/O were slow for other reasons (arriving on a serial line,for instance). 5.Second generation computers did not have the necessary hardware to protect the operating system from malicious user programs. 6.It is still alive.For example,Intel makes Pentium I,II,and III,and 4CPUs with a variety of different properties including speed and power consumption.All of these machines are architecturally compatible.They differ only in price and performance,which is the essence of the family idea. 7.A 25×80character monochrome text screen requires a 2000-byte buffer.The 1024×768pixel 24-bit color bitmap requires 2,359,296bytes.In 1980these two options would have cost $10and $11,520,respectively.For current prices,check on how much RAM currently costs,probably less than $1/MB. 8.Choices (a),(c),and (d)should be restricted to kernel mode. 9.Personal computer systems are always interactive,often with only a single user.Mainframe systems nearly always emphasize batch or timesharing with many users.Protection is much more of an issue on mainframe systems,as is ef?cient use of all resources. 10.Every nanosecond one instruction emerges from the pipeline.This means the machine is executing 1billion instructions per second.It does not matter at all how many stages the pipeline has.A 10-stage pipeline with 1nsec per 课后答案网 w w w .k h d a w .c o m

国际金融学 课后题答案 杨胜刚版 全

习题答案 第一章国际收支 本章重要概念 国际收支:国际收支是指一国或地区居民与非居民在一定时期内全部经济交易的货币价值之和。它体现的是一国的对外经济交往,是货币的、流量的、事后的概念。 国际收支平衡表:国际收支平衡表是将国际收支根据复式记账原则和特定账户分类原则编制出来的会计报表。它可分为经常项目、资本和金融项目以及错误和遗漏项目三大类。 丁伯根原则:1962年,荷兰经济学家丁伯根在其所著的《经济政策:原理与设计》一书中提出:要实现若干个独立的政策目标,至少需要相互独立的若干个有效的政策工具。这一观点被称为“丁伯根原则”。 米德冲突:英国经济学家米德于1951年在其名著《国际收支》当中最早提出了固定汇率制度下内外均衡冲突问题。米德指出,如果我们假定失业与通货膨胀是两种独立的情况,那么,单一的支出调整政策(包括财政、货币政策)无法实现内部均衡和外部均衡的目标。 分派原则:这一原则由蒙代尔提出,它的含义是:每一目标应当指派给对这一目标有相对最大的影响力,因而在影响政策目标上有相对优势的工具。 自主性交易:亦称事前交易,是指交易当事人自主地为某项动机而进行的交易。 国际收支失衡:国际收支失衡是指自主性交易发生逆差或顺差,需要用补偿性交易来弥补。它有不同的分类,根据时间标准进行分类,可分为静态失衡和动态失衡;根据国际收支的内容,可分为总量失衡和结构失衡;根据国际收支失衡时所采取的经济政策,可分为实际失衡和潜在失衡。 复习思考题 1.一国国际收支平衡表的经常账户是赤字的同时,该国的国际收支是否可能盈余,为什么? 答:可能,通常人们所讲的国际收支盈余或赤字就是指综合差额的盈余或赤字.这里综合差额的盈余或赤字不仅包括经常账户,还包括资本与金融账户,这里,资本与金融账户和经常账户之间具有融资关系。但是,随着国际金融一体化的发展,资本和金融账户与经常账户之间的这种融资关系正逐渐发生深刻变化。一方面,资本和金融账户为经常账户提供融资受到诸多因素的制约。另一方面,资本和金融账户已经不再是被动地由经常账户决定,并为经常账户提供融资服务了。而是有了自己独立的运动规律。因此,在这种情况下,一国国际收支平衡表的经常账户是赤字的同时,该国的国际收支也可能是盈余。

《现代操作系统第四版》 第六章 答案

第四章文件系统习题 Q1: 给出文件/etc/passwd的五种不同的路径名。(提示:考虑目录项”.”和”…”。) A: /etc/passwd /./etc/passwd /././etc/passwd /./././etc/passwd /etc/…/etc/passwd /etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/…/etc/passwd Q2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。操作系统要知道运行的是哪个程序,请给出两种不同的方法。 A:Windows使用文件扩展名。每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。另一种方式时记住哪个程序创建了该文件,并运行那个程序。Macintosh以这种方式工作。

Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。这些文件都有文件头,后面是正文段和数据段。为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数? A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。 Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果? A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。 首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。 Q5:在支持顺序文件的系统中总有一个文件回绕操作,支持随机存取

国际金融课后习题

第一章 1、外汇与外币的区别是什么? 答:外汇不等于外币,外汇除包括外币,还包括外币有价证券、外币支付凭证;外币也不等于外汇,外币并非都是外汇,通常情况下,只有可以自由兑换外币才是外汇,因为外汇的实质是国际支付手段,如果某种货币不能自由兑换,它就不能成为国际支付手段 2、狭义的静态的静态外汇和广义的外汇的区别何在? 答:狭义的外汇就是外国货币的汇率~~广义的外汇就是所有一切跟货币汇率有关的东西 外汇是以外币表示的用于国际结算的支付凭证。国际货币基金组织对外汇的解释为:外汇是货币行政当局(中央银行、货币机构、外汇平准基金和财政部)以银行存款、财政部库券、长短期政府证券等形式所保有的在国际收支逆差时可以使用的债权。包括:外国货币、外币存款、外币有价证券(政府公债、国库券、公司债券、股票等)、外币支付凭证(票据、银行存款凭证、邮政储蓄凭证等)。 3、我国外汇管理条例(1998年)关于外汇的范围是如何确定的? 答、依据《中华人民共和国外汇管理暂行条例》,外汇主要是指:(1)外国货币,包括钞票、铸币;(2)外币有价证券,如政府公债、国库券、公司债券、股票、息票等;(3)外币支付凭证,如票据、银行存款凭证、邮政储蓄凭证等;(4)SD.Rs;(5)其他外汇资金 4、什么是汇率?有几种标价方法? 答、汇率是一国货币同另一国货币兑换的比率。如果把外国货币作为商品的话,那么汇率就是买卖外汇的价格,是以一种货币表示另一种货币的价格,因此也称为汇价。 二、汇率的标价方法 确定两种不同货币之间的比价,先要确定用哪个国家的货币作为标准。由于确定的标准不同,于是便产生了几种不同的外汇汇率标价方法。 5、汇率有哪些种类? 答、(1)按国际货币制度的演变划分,有固定汇率和浮动汇率(2)按制订汇率的方法划分,有基本汇率和套算汇率3)按银行买卖外汇的角度划分,有买入汇率、卖出汇率、中间汇率和现钞汇率(4)按银行外汇付汇方式划分有电汇汇率、信汇汇率和票汇汇率5)按外汇交易交割期限划分有即期汇率和远期汇率(6)按对外汇管理的宽严区分,有官方汇率和市场汇率(7)按银行营业时间划分,有开盘汇率和收盘汇率 6、什么是实际汇率?如何计算? 答:实际汇率是将名义汇率剔除通货膨胀率因素后形成的汇率。以公式示之, R=S? P*/P 例:设S=RMB.8/$不变,若P*/P 由1升至2(由于外国物价上升),则R=16;反之,P*/P降至0.5 (由于本国物价上升),则R=4。实际汇率在宏观经济分析中具有重要的意义,是衡量一国商品对外竞争能力,进而也是预测贸易账户差额的重要工具 7、什么是汇率指数?如何计算? 答、汇率指数是指以指数方式衡量汇率变化,在宏观经济分析中具有重要的运用,包括双边汇率指数和多边汇率指数(即有效汇率) 8、如何计算一种货币的升(贬)值率? 答、所谓货币贬值率,是指由于货币的的发行量大大超过流通中实际所需要的货币量,从而引起货币贬值,货币贬值后和贬值前相比所存在的比率,我们称为货币贬值率。货币贬值率的计算公式为:货币贬值率=(现在已发行的货币量—流通中实际所需要的货币量)/现在已发行的货币量。 9、影响汇率变化的因素有哪些? 答、影响汇率变化的因素两种货币实际所代表的价值量是汇率决定的基础,并在下列主要因素影响下,汇率不断变动1)国际收支(2)通货膨胀(3)利率水平对资本的流动的影响(4)各国的汇率政策(5)投机活动(6)政治事件 10、分析已过货币从对内贬值到对外贬值的过程? 答、一般地,当一国发生通货膨胀,该国货币所代表的价值量就会减少,物价相应上涨,即货币对内贬值,而该国货币的购买力随物价上涨而下降,在国际市场上,对该国货币的需求减少,于是该国货币的汇率就会趋于下跌,即货币对外贬值。 11、分析两国相对利率的变动对汇率的影响 答、当各国利率出现差异时,人们为追求最好的资金效益,会从低利率国家筹集资金,向高利率国家投放资金,这势必会影响外汇的供求进而影响汇率。因为涉及资金在不同国家间的流动,所以重要的是利率的相对水平而不是绝对水平。一般来说,一国利率相对他国提高会刺激国外资金流入增加、本国资金流出减少,造成本国货币供给减少、货币需求增加,本国货币升值。 12、分析汇率变动对一国对外贸易产生的影响。 答、1.对物价的影响:一般,进出口产品以其供应国货币计价。①进口方面:在进口品需求弹性较低的情况下,本币贬值将产生成本推动的通货膨胀②出口方面:在出口品供给弹性较低的情况下,本币贬值将产生需求拉动的通货膨胀 汇率变化对贸易品价格的变动会传递到非贸易品价格上 2.对生产结构、资源配置、收入分配及就业的影响 好处:本币贬值以后,出口商品的国际竞争力增强;进口商品成本增加,国内进口替代品行业会繁荣起来。弊端:货币的过度贬值,有保护落后的作用;不利于技术引进 社会资源将重新配置,各部门的收入也会发生变动,同时会影响就业状况 、第二章汇率决定理论 一、概念 一价定律:同种可贸易商品在不同地区间的价格是一致的。或在不存在运输费用和人为的贸易壁垒(如关税)的自由竞争市场,同种商品在不同国家用相同币种表示的售价相同。 绝对购买力平价:一国货币的价值及对它的需求是由单位货币在国内所能买到的商品和劳务的量决定的,即由它的购买力决定的,因此两国货币之间的汇率可以表示为两国的货币购买力之比。 相对购买力平价:相对购买力平价从动态角度考察汇率的决定与变动,认为汇率的变动由两国通货膨胀率差异决定,是两国货币所代表的购买力变动率之比。 抛补的利率平价:两国货币汇率的远期升贴水近似的等于两国利率之差。

国际金融习题与答案精选

第六章外汇风险管理(练习) 一、本章要义 练习说明:请结合学习情况在以下段落空白处填充适当的文字,使上下文合乎逻辑。 企业的跨国经营涉及两个以上的主权国家,涉及资金在不同国家之问的流动,因此,需要将一种货币兑换成另一种货币,才能实现国际贸易、跨国投资和融资、红利分配等等。在越来越多的国家选择浮动汇率制度的情况下,汇率的波动给跨国企业的国际经营带来了风险,外汇风险成为跨国企业必须面列的经营风险。 外汇风险又称(1)_______,是指在不同货币的相互兑换或折算中,因汇率在一定时间内发生始料未及的变动,致使有关国家金融主体实际收益与(2)________或实际成本与预期成本发生背离、从而蒙受经济损失的可能性。风险头寸、(3)________ 、成交与资金清算之间的时间间隔、(4)_______等共同构成外汇风险因素。根据外汇风险作用对象、表现形式不同,可以划分为外汇交易风险、(5)_______和(6)_______。 外汇风险管理的目标是充分利用有效信息,力争减少汇率波动带来的现金流量的不确定性,控制或者消除业务活动中可能面临的由汇率波动带来的不利影响。为了实现这一目标,在外汇风险管理中应该遵循一些共同的指导思想和原则---全面重视原则;(7)_________原则;(8)_________原则。外汇风险管理的关键程序包括:(9)___________(10)___________、风险管理方法选择、风险管理实施、监督与调整。外汇风险管理的主要手段分为三类: (11)_______; (12)________;(13)________。企业需要根据自身的业务规模、金融市场发达程度及管理需求制定适当的外汇风险管理策略,并选择正确的管理手段。 二、释义选择 练习说明:请从文字框中为下列国际金融术语选择匹配的定义或描述,将对应的字母编号填入空格处。个别术语有可能对应不止一个描述;如果需要,任意 描述可以使用多次。

现代操作系统试卷及其答案

1.一般用户更喜欢使用的系统是()。 A.手工操作 B.单道批处理 C.多道批处理 D.多用户分时系统 2. 与计算机硬件关系最密切的软件是()。 A.编译程序 B.数据库管理系统 C.游戏程序 D.OS 3. 现代OS具有并发性和共享性,是()的引入导致的。 A.单道程序 B. 磁盘 C. 对象 D.多道程序 4. 早期的OS主要追求的是()。 A.系统的效率 B.用户的方便性 C.可移植 D.可扩充性 5.()不是多道程序系统 A.单用户单任务 B.多道批处理系统 C.单用户多任务 D.多用户分时系统 6.()是多道操作系统不可缺少的硬件支持。 A.打印机 B.中断机构 C.软盘 D.鼠标 7. 特权指令可以在()执行。 A.目态 B.浏览器中 C.任意的时间 D.进程调度中 8. 没有了()计算机系统就启动不起来。 A.编译器 B.DBMS C.OS D.浏览器 9. 通道能够完成()之间的数据传输。 A.CPU与外设 B.内存与外设 C.CPU与主存 D.外设与外设 10. 操作系统的主要功能有()。 A.进程管理、存储器管理、设备管理、处理机管理 B.虚拟存储管理、处理机管理、进程调度、文件系统 C.处理机管理、存储器管理、设备管理、文件系统 D.进程管理、中断管理、设备管理、文件系统 11. 单处理机计算机系统中,()是并行操作的。 A.处理机的操作与通道的操作是并行的 B.程序与程序 C.主程序与子程序 D.用户程序与操作系统程序 12. 处理机的所有指令可以在()执行。 A.目态 B.浏览器中

C.任意的时间 D.系统态 13.()功能不是操作系统直接完成的功能。 A.管理计算机硬盘 B.对程序进行编译 C.实现虚拟存储器 D.删除文件 14. 要求在规定的时间内对外界的请求必须给予及时响应的OS是()。 A.多用户分时系统 B.实时系统 C.批处理系统时间 D.网络操作系统 15. 操作系统是对()进行管理的软件。 A.硬件 B.软件 C.计算机资源 D.应用程序 16.()对多用户分时系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 17.()对多道批处理系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 18. ( )对实时系统最重要。 A.及时性 B.交互性 C.共享性 D.运行效率 19. Windows98是()操作系统。 A.多用户分时 B.批处理系统 C.单用户多任务 D.单用单任务 20. 分布式系统与网络系统的主要区别是() A.并行性 B.透明性 C.共享性 D.复杂性 21. ( )操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。 A.网络 B.分布式 C.分时 D.实时 22. 如果分时操作系统的时间片一定,那么(),则响应时间越长。 A.用户数越少 B.用户数越多 C.内存越小 D.内存越大 23. 下面6个系统中,必须是实时操作系统的有()个。 ·航空订票系统 ·过程控制系统 ·机器口语翻译系统 ·计算机辅助系统

国际金融课后答案 陈雨露第四版

第一章外汇与外汇汇率 1.请列举请列举请列举请列举20世纪世纪世纪世纪90年代的一些重大国际金融事件年代的一些重大国际金融事件年代的一些重大国际金融事件年代的一些重大国际金融事件,,,,说明汇率波动对经济的重大影响说明汇率波动对经济的重大影响说明汇率波动对经济的重大影响说明汇率波动对经济的重大影响。。。。答:刚刚过去的20世纪90年代,整个国际金融颌城动荡不安,危机叠起。从北欧银行业的倒闭到欧洲货币危机入墨西哥金融危机到巴林银行的倒闭、大和银行的巨额亏损,再到亚洲金融危机,无不令人触目惊心。90年代以来的几次重大国际金融动荡事件中,外汇投机的确起了推波助澜的作用。外汇投机是一个远期的外汇交易概念,它纳粹是为了外汇波动差价而进行的一种外汇买卖。其交易目的不是真实的外汇,而是为了未来汇率波动的差价而进行的买空或卖空。一般来说,判断某种外汇未来看涨的一方为多头,其具体操作办法是买空(即低买高卖),这在国外又称公牛;而判断某种外汇未来看跌的一方则为空头,其具体操作是卖空(即高卖低买),这在国外又称为熊。当这种外汇到期上涨则多头方盈利,反之则空头方盈利。目前在国际金融市场中横冲直撞的对冲基金无非就是这两种投机的对做,以对冲其风险。但由于其具有杠杆效应,因而对国际金融的冲击更大。在欧洲货币危机、墨西哥金融危机和泰国金融危机中京罗斯做的都是空头,判断英镑、里拉、墨西哥比索和泰林等要贬值,在其没有贬值之前先抛售大量筹码,待其贬值以后再以低价吸进筹码还贷,从而从中获利。纵观国际投机资本的炒作,其攻击一国货币(假如泰殊未来有贬值的预期)的途径一般可通过以下三种方法:一是投机者从泰国商业银行拆入大量的泰铁,然后到外汇市场上全盘抛售泰林换取美元,由此引发市场的“羊群效应”,其他市场参与者纷纷效尤,使秦铁汇率逐步下跌后则以低价买回素昧,部分还贷部分盈利;二是投机者从银行同业拆入泰林,抛售泰殊的同时,买入泰殊兑美元的期货合同,吉泰铁上涨则卖家赚钱,若秦殊下跌则买家用较不值钱的秦铁结算合同从而赚钱;三是投机者在攻击汇率时,同时在股市做空,购入或在股指期货市场抛空,即使汇率因央行干预不变,投机者仍可在股市或股指期货市场中盈利,即(1)股市上抛空~投机攻击~利率提高~股市下挫~股市购入;(2)投机攻击~利率提高~股市下跌~股市购入~投机退出~利率下降~股价上升~股市抛售;(3)期市上抛空股指期货合约~股指期货合约下跌~平仓股指合约。2.1994年人民币的通货膨胀率高达年人民币的通货膨胀率高达年人民币的通货膨胀率高达年人民币的通货膨胀率高达24%,,,,美元的通货膨胀率只有美元的通货膨胀率只有美元的通货膨胀率只有美元的通货膨胀率只有6%,,,,为什么为什么为什么为什么1995年人年人年人年人民币对美元没有贬值反而升值了民币对美元没有贬值反而升值了民币对美元没有贬值反而升值了民币对美元没有贬值反而升值了1%????答:通货膨胀率是指物价平均水平的上升速度,货币升值也叫“货币增值”,是指国家增加本国货币含金量,提高本国货币对外国的比价的政策,货币升值是国家货币不稳定的另一种表现,它不意味着提高本国货币在国内的购买力,而只是提高本国货币对外国货币的比价。所以通货膨胀率和升值无关。 3.你是否搞清了直接标价法和间接标价法下的银行买价和卖价你是否搞清了直接标价法和间接标价法下的银行买价和卖价你是否搞清了直接标价法和间接标价法下的银行买价和卖价你是否搞清了直接标价法和间接标价法下的银行买价和卖价????答:买入价和卖出价都是从银行角度划分的,银行买入外汇价格较低,卖出外汇的价格较高。在直接标价法下,较低的价格为买入价,较低的价格为卖出价。而在间接标价发中,情况则相反,较低的价格为卖出价,较高的价格为买入价。 4.2004年年年年10月月月月29日日日日,,,,中国人民银行上调了金融机构存贷款基准利率中国人民银行上调了金融机构存贷款基准利率中国人民银行上调了金融机构存贷款基准利率中国人民银行上调了金融机构存贷款基准利率,,,,你认为这样调整你认为这样调整你认为这样调整你认为这样调整会如何影响人民币汇率会如何影响人民币汇率会如何影响人民币汇率会如何影响人民币汇率????答:根据外汇的利率平价理论,一国利率上升有助于本国货币汇率上

国际金融习题(答案)

《国际金融》习题集 第(1-2)讲国际收支和国际储备 一、名词解释 1、国际收支 2、居民 3、一国经济领土 4、国际收支平衡表 5、经常账户 6、经常转移 7、贸易收支 8、服务交易 9、收入交易 10、资本账户 11、金融账户 12、储备资产 13、错误和遗漏账户 14、自主性交易 15、补偿性交易 16、国际收支平衡 17、贸易收支差额 18、经常项目收支差额 19、资本和金融账户差额 20、总差额 21、国际储备 22、黄金储备 23、外汇储备 24、在IMF的储备头寸 25、特别提款权(SDR) 二、判断题 1、国际收支是一个流量的,事后的概念。(√) 2、国际货币基金组织采用的是狭义国际收支概念。( X ) 3、资产减少、负债增加的项目记入借方。( X ) 4、由于一国国际收支不可能正好收支相抵,所以国际收支平衡表的最终差额绝不恒为零。 ( X ) 5、资本和金融账户可以无限制的为经常账户提供融资。(X ) 6、总差额比较综合的反映了一国自主性国际收支状况,对于全面衡量和分析国际收支状况 具有重大意义。( √) 7、一国的国际储备就是该国外国资产的总和。( X ) 8、IMF规定黄金不再列入一国的国际储备。( X ) 9、根据国际储备的性质,所有可兑换货币表示的资产都可以成为国际储备。( X )

10、国际储备的过分增长会引发世界性通货膨胀。(√) 三:选择题(单选或多选) 1、我国编制国际收支平衡表的机构是( C ) A: 外汇管理局和中国银行 B:中国银行与国家进出口银行 C:中国人民银行与外汇管理局 D:外汇管理局与国家统计局 2、IMF规定,会员国的国际收支平衡表中进出口商品的统计应以各国海关统计为准,且计 价按( A ) A:FOB B:CIF C:CFR D:CIP 3、国际收支平衡表借贷双方的总额有时并不一致,以下是对其原因的解释,正确的是(ABCD ) A:国际经济交易的统计资料来源不一 B:有些数据来自估算,并不精确 C:统计者工作不细心 D:走私等地下经济的存在 4、以下表述不正确的是(D ) A:国际收支平衡表采用复式记帐法进行分录编制 B:引起外汇收入的交易应记入贷方 C:借方科目属于资金来源类科目 D:国际收支顺差又称为黑字 5、若在国际收支平衡表中,储备资产项目为-100亿美元,则表示该国( A ) A:增加了100亿美元的储备 B:减少了100亿美元的储备 C:人为的账面平衡,不说明问题 D:无法判断 6、下列项目应记入贷方的是( B D ) A:反映进口实际资源的经常项目 B:反映出口实际资源的经常项目 C:反映资产增加或负债减少的金融项目 D:反映资产减少或负债增加的金融项目 7、以下哪个项目应记入国际收支平衡表的借方(B ) A:在国外某大学读书的本科生获得该大学颁发的奖学金 B:本国向国际组织缴纳的会费 C:本国居民在国外工作获取的劳务报酬 D:本国外汇储备的减少 8、一国对外证券投资产生的股息汇回国内,应记入国际收支平衡表哪个项目下(A ) A:经常项目B:资本项目 C:平衡项目D:金融项目 9、以下哪些项目应列入本国的国际收支平衡表(BC ) A:在本国驻外使馆工作的本国工作人员的工资收入 B:本国在国外投资建厂,该厂产品在本国市场销售 C:债权国对债务国的债务减免 D:留学生在海外购买生活必需品

国际金融课后练习题答案教学文稿

国际金融课后练习题 答案

战后国际货币制度的特点 第一次世界大战后,实行的是国际金本位制,特点是: 统一性:主要国家都实行金本位制,各国都为本国货币规定了含金量,采取大致相同的政策措施,各国之间的货币比价被固定下来 松散性:国际金本位制是自发形成的,没有统一的章程,也没有一个国际组织的领导和监督。 二战后,资本主义世界建立了一个以美元为中心的国际货币制度,特点是(如第二问所答) 布雷顿森林体系的特点 1.在布雷顿森林体系下的国际储备中,黄金和美元并重。美国不仅凭借其第二 次世界大战后所拥有的巨额黄金储备强调黄金的作用,而且将美元与黄金挂钩。 2.在所有西方国家货币中,美元是唯一的中心货币和主要的储备资产。布雷顿 森林体系保持了美元是单一中心货币。 3.只允许外国政府而不允许外国居民用美元向美国政府兑换黄金。 4.建立了国际货币基金组织作为维持国际金融秩序的中心机构。 牙买加体系的特点: 1.国际储备体系的多元化:黄金作用大大降低,美元也丧失其单一中心货币的 地位,但还没有哪一种储备资产可以独立担当国际储备中心货币的职能。2.汇率制度多元化:牙买加协议允许各国自由作出汇率安排,固定汇率制度和 浮动汇率制度可以并存。 3.国际收支调节机制多样化:在牙买加体系下,发达国家实行浮动利率制,对 利用汇率机制来调节国际收支起重要作用, 人民币国际化进程 欧洲货币市场的概念: 不受市场所在国法令管辖,真正国际化的金融市场。其借贷货币包括市场所在国家境外的所有可兑换货币,统称为“欧洲货币”或“境外货币”;借款人可以在这个市场上任意选择借贷货币的种类;借贷关系为外国借款人和外国放款人的关系;非居民可以自由地参加交易的市场,因而常被称为“离岸金融市场”。 离岸金融中心的主要类型和代表市场:

国际金融习题以及答案

一、判断题 1、国际收支就是一国在一定时期内对外债权、债务得余额,因此,它表示一种存量得概念。( F ) 2、资本流出就是指本国资本流到外国,它表示外国在本国得资产减少、外国对本国得负债增加、本国对外国得负债减少、本国在外国得资产增加。(T) 3、国际收支就是流量得概念。( T ) 4、对外长期投资得利润汇回,应计入资本与金融账户内。( F ) 5。投资收益属于国际收支平衡表中得服务项目。( F ) 二、单项选择题 1、国际借贷所产生得利息,应列入国际收支平衡表中得( A )账户。 A、经常B、资本C、直接投资D、证券投资 2、投资收益在国际收支平衡表中应列入(A)。 A、经常账户B、资本账户 C、金融账户D、储备与相关项目 3、国际收支平衡表中人为设立得项目就是(D)。 A、经常项目B、资本与金融项目C、综合项目D、错误与遗漏项目 4、根据国际收支平衡表得记账原则,属于借方项目得就是( D ). A、出口商品B、官方储备得减少 C、本国居民收到国外得单方向转移 D、本国居民偿还非居民债务。 5、根据国际收入平衡表得记账原则,属于贷方项目得就是( B )。 A、进口劳务B、本国居民获得外国资产 C、官方储备增加 D、非居民偿还本国居民债务 三、多项选择题 1、属于我国居民得机构就是( ABC )。 A、在我国建立得外商独资企业B、我国得国有企业 C、我国驻外使领馆 D、 IMF等驻华机构 2、国际收支平衡表中得经常账户包括( ABCD)子项目。 A、货物 B、服务 C、收益 D、经常转移 3、国际收支平衡表中得资本与金融账户包括(AB )子项目。 A、资本账户B、金融账户C、服务D、收益 4、下列( AD )交易应记入国际收支平衡表得贷方。

江西理工大学-现代操作系统考试复习题

第一章:引论 1.系统调用与中断的概念。 作业题解 第一章引论 PE1-14. 陷阱和中断的主要差别是什么? 答:陷阱是由程序造成的,并且与它同步。如果程序一而再地被运行,陷阱将总在指令流中相同的位置的精确发生。而中断则是由外部事件和其他时钟造成的,不具有重复性。 PE1-20. 有一个文件,其文件描述符是fd,内含下列字节序列:3,1,4,1,5,9,2,6,5,3,5.有如下系统调用: lseek (fd, 3, SEEK_SET); // 从文件开头偏移量为3,此时将读写位置移到文件1,5,9,2的1处 Read(fd, &buffer, 4); 其中lseek调用寻找文件中的字节3.在读操作完成之后,buffer中的内容是什么? 答:包含字节:1,5,9,2。 PE1-22. 块特殊文件和字符特殊文件的基本差别是什么? 答:块特殊文件包含被编号的块,每一块都可以独立地读取或者写入。而且可以定位于任何块,并且开始读出或写入。这些对于字符特殊文件是不可能的。 PE1-29. 下面是单位转换练习: (a)一微年是多少秒? (b)微米常称micron.那么gigamicron是多长? (c)1TB存储器中有多少字节? (d)地球的质量是6000 yottagram,换算成kilogram是多少? 答:这些都可以直接转换: (a) micro year = 10-6X 365 X 24 X 3600 = 31.536 sec。 (b) 1km或者1000。 (c)有240字节,也就是1,099,511,627,776 字节。 (d)它是6 X 1024公斤。 第二章:进程与线程 1.进程的概念。 答:进程是对正在运行的程序的一个抽象。是容纳运行一个程序所需要的所有信息的容器。也可以说一个进程就是就是一个正在运行的实例。 2.进程的三种基本状态。 运行态(该时刻进程实际占用CPU)。 就绪态(可运行,但因为其他进程正在运行而暂时停止)。 阻塞态(除非某种外部事件发生,否则进程不能运行)。

国际金融第四章课后作业答案

第四章课后习题答案 一、判断题 1. X。补贴政策、关税政策和汇率政策都属于支出转换型政策。 2. X。外部均衡是内部均衡基础上的外部平衡,具体而言,反映为内部均衡实现条件下的国际收支平衡,它不能脱离内部均衡的条件。 3. X。丁伯根原则的含义是,要实现N个独立的政策目标,至少需要相互独立的N个有效的政策工具。将货币政策和财政政策分别应用于影响力相对较大的目标,以求得内外平衡是蒙代尔提出的政策指派原则的要求。 4. X .“蒙代尔分配法则”认为,财政政策解决内部均衡问题更为有效,货币政策解决外部平衡问题更为有效。 6. X。应使用紧缩的财政政策来压缩国内需求,紧缩的货币政策来改善国际收支。 7.√。 二、不定项选择题 1. B 2. D 3. BC 4. BD 5. A 6. BD 7. CDE(说明:一般而言,汇率变动会通过影响自发性贸易余额而引起BP曲线移动,但是,在资本完全流动的情况下,国际收支完全由资本流动决定,贸易收支的变动能够被资本流动无限抵销,此时的BP曲线反映为一条水平线,仅仅与国际利率水平有关) 8. ABD 9. CD 三、简答题 1.按照斯旺模型,当国际收支顺差和国内经济过热时,应当采取怎样的政策搭配答:斯旺模型用支出转换与支出增减政策搭配来解决内外均衡的冲突问题。政府的支出增减型政策(譬如财政政策)可以直接改变国内支出总水平,主要用来解决内部均衡问题。政府的支出转换型政策(譬如实际汇率水平的调节)可以改变对本国产品和进口产品的相对需求,主要用来解决外部平衡问题。当出现国际收支顺差和国内经济过热时,应当一方面缩减国内支出,一方面促进本币升值,从而使进口增加,并使国内支出中由国内供给满足的部分进一步减少,从而降低国际收支顺差和国内收人水平。 2.在斯旺的内外均衡分析框架中,当内外均衡时,国内的产出水平、就业水平是唯一的吗 答:在斯旺模型中,内部均衡意味着本国生产的产品被全部销售掉,并且国内支出得到满足。当国内产出一定时,如果国内支出扩大,为了满足国内支出,就需要本币升值以减少出口或增加进口。外部平衡意味着净出口为零。当国内产出一定时,如果国内支出扩大,进口商品增加或出口商品减少,此时就需要本币贬值以同时增加出口或减少进口,以实现国际收支平衡。 可见,斯旺模型中推导的国内支出与实际汇率的关系,是在国内产出水平一定的条件下成立的。反过来说,如果国内产出水平可变,那么,无论是内部均衡还是外部平衡,在国内支出扩大时,只需要国内产出水平上升即可,不会发生进出口的变动,也不会影响实际汇率。所以,当斯旺模型的内外均衡同时成立时,国内的产出水平是唯一的,对应的是充分就业时的就业水平。 (说明:斯旺模型中的国内支出和净出口的关系,用文字描述可能较为难以理解,不妨用一些具体的数字来解释。 假设本国产出水平为100单位,原来处于内外均衡状态,具体而言,国内生产100单位的产品,其中出口20单位,国内支出100单位,其中80单位由国内生产的产品满足,20

现代操作系统第四版 第二章 答案

现代操作系统第二章进程与线程习题 1. 图2-2中给出了三个进程状态,在理论上,三个状态可以有六种转换,每个状态两个。但是,图中只给出了四种转换。有没有可能发生其他两种转换中的一个或两个 A:从阻塞到运行的转换是可以想象的。假设某个进程在I/O上阻塞,而且I/O结束,如果此时CPU空闲,该进程就可以从阻塞态直接转到运行态。而另外一种转换(从阻塞态到就绪态)是不可能的。一个就绪进程是不可能做任何会产生阻塞的I/O或者别的什么事情。只有运行的进程才能被阻塞。 2.假设要设计一种先进的计算机体系结构,它使用硬件而不是中断来完成进程切换。CPU需要哪些信息请描述用硬件完成进程切换的工作过程。 A:应该有一个寄存器包含当前进程表项的指针。当I/O结束时,CPU将把当前的机器状态存入到当前进程表项中。然后,将转到中断设备的中断向量,读取另一个过程表项的指针(服务例程),然后,就可以启动这个进程了。 3.当代计算机中,为什么中断处理程序至少有一部分是用汇编语言编写的 A:通常,高级语言不允许访问CPU硬件,而这种访问是必需的。例如,中断处理程序可能需要禁用和启用某个特定设备的中断服务,或者处理进程堆栈区的数据。另外,中断服务例程需要尽快地执行。(补充)主要是出于效率方面的考量。中断处理程序需要在尽量短的时间内完成所需的必要处理,尽量减少对线程/程序流造成的影响,因此大部分情况下用汇编直接编写,跳过了通用编译过程中冗余的适配部分。 4.中断或系统调用把控制转给操作系统时,为什么通常会用到与被中断进程的栈分离的内核栈 A:内核使用单独的堆栈有若干的原因。其中两个原因如下:首先,不希望操作系统崩溃,由于某些用户程序不允许足够的堆栈空间。第二,如果内核将数据保留在用户空间,然后从系统调用返回,那么恶意的用户可能使用这些数据找出某些关于其它进程的信息。 5.一个计算机系统的内存有足够的空间容纳5个程序。这些程序有一半的时间处于等待I/O的空闲状态。请问CPU时间浪费的比例是多少 A:^5 =%

相关主题
文本预览
相关文档 最新文档