杭电操作系统-2009A答案

更新时间:2023-05-13 22:11:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

杭州电子科技大学-操作系统-2009A答案

参考答案

一、判断题(共10分,每题1分)

1-5 对错错错对 6-10 对错错错错

二、问答题(共90分,每题10分)

1. 嵌入式系统是专用计算机系统,仅配置了满足系统功能需要的资源,十分有限,使得直接在硬件平台上编写软件很困难,甚至是不可能的,因此嵌入式系统的软件开发是在宿主机上借助仿真环境完成编写、编译和调试,再下载到目标板上调试运行的,这种编译方式称为交叉编译。由于宿主机与目标板的处理机往往不同,所以在宿主机上编译生成的可执行程序,不能在宿主机上运行。

2. 嵌入式系统是专用计算机系统,通常由专门设计的硬件和软件构成,硬件包括嵌入式微处理器、存储器(RAM和Flash)、I/O系统等部件;软件包括嵌入式系统软件和应用软件。(图略)

嵌入式微处理器是运算的核心部件。Flash存储器是非易失性存储器,存储系统或者程序,启动系统时加载进入RAM存储器中。嵌入式系统的I/O系统是十分丰富的,包括通用标准接口和非标准专用接口。嵌入式操作系统为嵌入式系统提供良好的运行软环境,应用软件完成丰富的应用功能。

3. 实时操作系统是指满足实时性系统的实时性要求的操作系统,这种操作系统具有实时性好、可靠性高的特点。实时性分为硬实时与软实时,硬实时指对于响应速度有严格要求的情况,软实时指对系统的响应速度有一定要求的情况。例如工业锅炉的控制系统计算机需要严格的响应速度要求,所以属于硬实时性;而打印机虽然也有响应速度的要求,但是程度相对较弱,属于软实时性。

4. BootLoader是操作系统启动之前引导系统启动的一段小程序,它不属于操作系统。BootLoader完成系统的硬件初始化和装载操作系统内核的任务,为操作系统启动运行奠定基础。BootLoader有启动加载模式和下载工作模式,启动加载模式适合产品定型发布出售的时候,不需要用户的参与,是嵌入式系统的正常工作模式;下载工作模式适合产品研发过程、产品生产和升级更新的情况下,可以通过串口或者网络接口将系统文件映像下载到嵌入式产品中,完成软件系统的安装。

5. Linux系统中进程的状态基本包括六种:TASK_RUNNING、CURRENT、TASK_INTERRUPTIBLE、TASK_UNINTERRUPTIBLE、TASK_STOPPED、TASK_ZOMBIE。

杭州电子科技大学-操作系统-2009A答案

6. Linux的实时性并不好,经过对其调度算法进行改进,提高了其实时性。在Linux的调度算法中,将进程分为两类:常规和实时,对应的调度也采用不同的算法。当进程是实时进程时,调度时计算的优先级加1000,远远高于其他常规进程,从而保证实时进程优先运行。

7. 嵌入式系统使用FLASH存储器,需要考虑FLASH的磨损问题;嵌入式系统的电源不稳定,易突然掉电;嵌入式系统的计算资源有限,不适合运行复杂的文件系统。JFFS是日志文件系统,其具有的特点十分适合嵌入式系统使用,不仅记录了存储的数据,还记录了数据变化的过程,即文件更新日志,可以重建存储器上的数据。

8. 驱动程序是操作系统与设备之间的桥梁,操作系统向驱动程序发送I/O命令,发送或者接收数据。通过不同的驱动程序,操作系统就可以完成与不同设备之间的协调工作,高效地利用资源。

在Linux下,驱动程序加载有两种模式:模块方式和内核方式。模块方式就是驱动程序模块通过加载命令加载到系统中,可以灵活地加载和卸载,适合临时使用的驱动程序,调试的时候很方便。内核方式是将驱动程序编译在内核中,成为内核的一部分,启动系统加载的时候随内核加载进入系统。模块方式灵活,内核方式效率高。mknod、insmod、rmmod等命令是驱动程序加载/卸载的基本命令。

9. 基本写法:

calc: main.c add.o sub.o mult.o div.o

gcc -o calc main.c add.o sub.o mult.o div.o

add.o: add.c defs.h

gcc -c -o add.o add.c

sub.o: sub.c defs.h

gcc -c -o sub.o sub.c

mult.o: mult.c

gcc -c -o mult.o mult.c

div.o: div.c

使用默认规则的写法:

calc: main.c add.o sub.o mult.o div.o

gcc -o calc main.c add.o sub.o mult.o div.o gcc -c -o div.o div.c

add.o, sub.o: defs.h

本文来源:https://www.bwwdw.com/article/1z7e.html

Top