本练习有十道原创题,由易到难,涵盖软件与系统的全部五课。第 1 至 4 题测试基础概念,第 5 至 8 题把概念应用到情境,第 9 和 10 题综合多项技能。
请在纸上用完整句子作答,就像在考试中一样。
写完自己的答案后才打开解答。然后用最后的对照清单,检查每一道做错的题。两道追踪题可以用受限伪代码追踪训练器或安全的 Python 推理沙盒核对。
题目
1. 说出操作系统的两项功能。
显示答案
以下任选两项:管理文件、管理内存、多任务、通过驱动程序管理外围设备、提供用户界面、处理中断、安全。例如:操作系统为每个运行中的程序分配内存,并通过在磁盘上存储和整理文件来管理文件。
2. 把下列各项分为应用软件、操作系统功能或实用程序:视频编辑器、内存管理、备份工具。
显示答案
视频编辑器:应用软件。内存管理:操作系统功能。备份工具:实用程序。
3. 说明编译器做什么,解释器做什么。
显示答案
编译器在程序运行前把整个程序翻译成机器码,生成可执行文件。解释器一次翻译并运行程序的一条语句。
4. 什么是中断(interrupt)?
显示答案
发给处理器的、表示有事情需要关注的信号。它可以来自硬件,如按键,也可以来自软件。处理器暂停程序,处理该信号,然后继续。
5. 一位开发者发现,她的程序在显示三行输出后,带着错误信息停止了。用的是哪种翻译器?你是怎样看出来的?
显示答案
解释器。它一次运行一条语句,所以在到达出错语句之前,前三行已经运行过了。编译器会在任何输出出现之前就报告错误。
6. 一家音乐工作室想把程序交给客户,又不透露源代码。哪种翻译器合适?为什么?
显示答案
编译器。它生成机器码的可执行文件,所以工作室可以提供该文件而不提供源代码。可执行文件运行时也不需要安装编译器。
7. 追踪下面的片段,中断在指令 I2 执行时到达。给出 X 和 Y 的最终值。
I1: X ← 4
I2: Y ← X + 5
I3: X ← Y * 2
显示答案
I1:X = 4。I2:Y = 4 + 5 = 9。中断检查在 I2 之后进行,所以处理器保存程序计数器和寄存器,运行中断服务例程,然后恢复状态。I3:X = 9 × 2 = 18。
最终值:X = 18,Y = 9。中断不会改变结果,因为状态已被保存并恢复。检验:4 + 5 = 9,9 × 2 = 18。
8. 一所学校的电脑使用机械硬盘,虽然空闲空间很多,打开大文件却要很久。说出合适的实用程序,并解释它如何帮助。
显示答案
**磁盘碎片整理。**被拆成片段、存放在不同位置的文件会被重新排列,使每个文件存放在一起。读取磁头于是移动更少,文件打开更快。问题不在空闲空间,所以删除文件不是对症的做法。
9. 一个 500 MB 的视频被压缩成 350 MB。计算大小缩小的百分比,并说明压缩是否同时能防止文件丢失。
显示答案
节省 = 500 − 350 = 150 MB。150 ÷ 500 = 0.3,所以缩小了 30%。检验:500 的 30% = 150。
压缩不能防止丢失,因为仍然只有一份。要防止丢失需要备份。
10. 一家制造商在智能门锁中建入嵌入式系统。讨论影响其设计的两个限制,以及在这里使用嵌入式系统的一个缺点。
显示答案
**限制一,电力:**门锁可能用电池,所以处理器和程序必须省电,否则电池耗尽时门锁就会失效。
**限制二,内存与成本:**门锁的任务固定(检查密码或卡片,并移动锁舌),所以只需要一个小而便宜的处理器和少量内存。
**缺点:**程序存放在设备里,所以增加新功能或修复故障可能很困难,除非更换部件甚至整个门锁。它也不能运行其他程序。
如果你做错了
- **第 1 和 2 题:**你混淆了操作系统、应用软件和实用程序。复习区分操作系统与应用软件的角色和辨认实用程序的功能。
- **第 3、5 和 6 题:**翻译器说反了或描述得含糊。复习比较解释器与编译器的行为。
- **第 4 和 7 题:**缺少步骤顺序,或漏掉了保存的状态。复习用情境解释中断。
- **第 8 和 9 题:**选错了工具,或在百分比上出错。复习辨认实用程序的功能。
- **第 10 题:**只列出限制,没有联系设备。复习讨论嵌入式系统及其限制。
把每一种错误记进错题记录与重测队列,几天后再做一道新题。
这样的练习在老师阅读你的答案时会进展得更快。想了解怎么进行,请看我们的线上一对一计算机科学补习。