Swing桌面程序开发 图形化视窗操作系统.docx

上传人:b****7 文档编号:23503713 上传时间:2023-05-17 格式:DOCX 页数:144 大小:86.40KB
下载 相关 举报
Swing桌面程序开发 图形化视窗操作系统.docx_第1页
第1页 / 共144页
Swing桌面程序开发 图形化视窗操作系统.docx_第2页
第2页 / 共144页
Swing桌面程序开发 图形化视窗操作系统.docx_第3页
第3页 / 共144页
Swing桌面程序开发 图形化视窗操作系统.docx_第4页
第4页 / 共144页
Swing桌面程序开发 图形化视窗操作系统.docx_第5页
第5页 / 共144页
点击查看更多>>
下载资源
资源描述

Swing桌面程序开发 图形化视窗操作系统.docx

《Swing桌面程序开发 图形化视窗操作系统.docx》由会员分享,可在线阅读,更多相关《Swing桌面程序开发 图形化视窗操作系统.docx(144页珍藏版)》请在冰豆网上搜索。

Swing桌面程序开发 图形化视窗操作系统.docx

Swing桌面程序开发图形化视窗操作系统

1.6习题

一、填空题

1.目前,嵌入式处理器种类繁多。

按照类型大致可以分为嵌入式微处理器EMPU、嵌入式微控制器MCU、嵌入式数字信号处理器EDSP和片上可编程系统SOPC。

2.BootLoader就是在操作系统内核运行前执行的一小段程序,用于引导加载程序以及系统内核。

3.BootLoader是依赖于硬件平台的,不同的嵌入式处理器和嵌入式系统需要不同的BootLoader来引导。

4.嵌入式系统主要由嵌入式处理器、相关外围硬件、嵌入式操作系统及应用软件系统等组成,它是可独立工作的系统。

5.要想成为一个比较优秀的嵌入式开发人员,应该牢记“博、专、实践”的原则。

二、简答题

1.简述嵌入式系统的开发过程。

答:

嵌入式系统的开发过程主要包括6个方面:

芯片选择、配置硬件平台、Bootloader移植、操作系统裁减、操作系统移植和应用程序开发。

2.简述各类嵌入式处理器及其特点。

答:

嵌入式处理器,常用的主要包括如下几类:

嵌入式微处理器EMPU:

,嵌入式微处理器EMPU在使用时,将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小系统体积和功耗。

另外,为了满足嵌入式应用的特殊要求,在温度范围、抗电磁干扰、可靠性等方面一般都做了相应的增强。

嵌入式微控制器MCU:

嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种必要功能和外设。

嵌入式数字信号处理器EDSP:

典型的DSP处理器主要是对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。

在数字滤波、FFT、谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。

片上可编程系统SOPC:

片上可编程系统SOPC是一种新的软硬件协同设计的系统设计技术,其将处理器、RAM存储器、ROM存储器、总线、总线控制器、I/O接口、DSP、锁相环等集成到一片FPGA芯片中。

SOPC具有灵活的设计方式、可裁减、可扩充、可升级、并具备软硬件在系统可编程能力。

Swing桌面程序开发图形化视窗操作系统

编辑:

丁铁明

.简述如何成为嵌入式开发人员。

答:

嵌入式开发人员提应该牢记“博、专、实践”的原则。

❑博:

要求设计者不但需要掌握嵌入式处理器的使用,还需要通晓各种外围电路的实现。

软件上还需要掌握Bootloader的移植、嵌入式操作系统的移植和裁减、驱动程序的开发以及应用程序的开发。

❑专:

一个优秀的嵌入式开发人员,不可能嵌入式开发过程中的每一个领域都精通。

但需要嵌入式开发人员对其中的某些方面具有很深的造诣,这样可以提高竞争力。

❑实践:

嵌入式开发人员应该多练习、多交流、多实践。

这样,一方面可以在实践中排查错误、完善系统的稳定性,另一方面也可以巩固所学的知识、不断深化技术造诣。

2.4习题

一、填空题

1.按照系统对相应时间的敏感程度,嵌入式操作系统可以分为三类,硬实时系统、软实时系统和非实时系统。

2.VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。

3.WindowsCE是微软旗下的一个32位嵌入式操作系统。

在WindowsCE中,C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion),E代表电子产品(Electronics)。

目前最新的WindowsCE为WindowsCE6.0。

4.μC/OS-II是一种开源但不免费的实时操作系统,具有可剥夺实时内核。

5.PalmOS是3Corn公司的产品,其是一种32位的嵌入式操作系统。

PalmOS一套专门为掌上电脑开发的操作系统。

二、选择题

1.下面那个不是嵌入式操作系统的特点(B)。

A.高了系统的可靠性B.体积庞大

C.系统配置灵活D.充分发挥了32位CPU的多任务潜力

2.下面那个不是μC/OS-II嵌入式操作系统的特点(D)。

A.提供任务调度与管理B.占用空间小

C.执行效率高D.完全免费

3.下面那个不是WindowsCE嵌入式操作系统的特点(D)。

A.继承了传统Windows图形界面B.灵活的电源管理功能

C.优秀的线程响应能力D.极小的系统内核

4.下面那个不是嵌入式Linux操作系统的特点(D)。

A.源代码公开B.遵循GPL协议

C.高性能、可裁剪的内核D.具有Windows风格的图形界面

三、简答题

1.简述嵌入式操作系统与通用操作系统的区别。

答:

通用操作系统是一种通用的操作系统,可运行在不同的硬件平台。

而嵌入式操作系统与一般的Windows操作系统不同,其是一种专用、可定制的特点。

2.简述各个主流嵌入式操作系统的特点。

答:

由于内容很多,这里省略,读者可以直接参阅书中第2节的介绍。

3.7习题

一、填空题

1.RISC以CISC为基础,重点优化计算机结构,使其更加简单合理地提高运算速度。

2.Cortex-M3是一款低功耗处理器,具有门数码少,中断延时短,调试成本低的特点,是为要求有快速中断响应能力的深度嵌入式应用而设计的。

3.ARM7内核为低功耗的32位RISC处理器,其采用冯诺依曼体系结构,数据和指令使用同一条总线。

ARM7内核有一条3级流水线,执行ARMv4指令集,最适合用于对价位和功耗要求较高的消费类应用。

4.ARM10E内核为32位RISC处理器,具有高性能、低功耗的特点。

ARM10E采用了新的体系结构,与同等的ARM9器件相比较,在同样的时钟频率下,性能提高了近50%。

5.ARMCortex-M3内核主系统由四个驱动单元:

内核ICode总线(I-bus)、DCode总线(D-bus)、系统总线(S-bus)和GP-DMA(通用DMA)构成。

二、选择题

1.Cortex-M3采用(A)流水线结构。

A.3级B.4级

C.6级D.6级

2.Cortex-M3处理器采用(A)架构。

A.ARMv7-M架构B.ARMv4-M架构

C.ARMv6-M架构D.以上都不是

3.Cortex-M3的指令集包括(AB)。

(多选)

A.16位thumb指令集B.32位thumb-2指令集

C.ARM指令集D.以上都包括

4.Cortex-M3处理器支持以下哪些数据类型(ABCD)。

(多选)

A.32位字B.16位半字

C.8位字节D.64位双字

5.以下哪个表述不正确(D)。

A.ARM是一个公司的名称B.ARM是对一类微处理器的通称

C.ARM是一种技术的名字D.ARM是一款芯片的名称

三、简答题

1.简述ARM处理器系列及其特点。

答:

由于内容很多,这里省略,读者可以直接参阅书中第2节的介绍。

2.简述ARMCortex-M3的结构。

答:

ARMCortex-M3内核主系统由四个驱动单元:

内核ICode总线(I-bus)、DCode总线(D-bus)、系统总线(S-bus)和GP-DMA(通用DMA)构成。

❑ICode总线:

该总线将Cortex-M3内核的指令总线与Flash指令接口相连接。

指令预取在此总线上完成。

❑DCode总线:

该总线将Cortex-M3内核的DCode总线与闪存存储器的数据接口相连接(常量加载和调试访问)。

❑系统总线:

此总线连接Cortex-M3内核的系统总线(外设总线)到总线矩阵,总线矩阵协调着内核和DMA间的访问。

❑DMA总线:

此总线将DMA的AHB主控接口与总线矩阵相联,总线矩阵协调着CPU的DCode和DMA到SRAM、闪存和外设的访问。

3.简述ARMCortex-M3的编程模型。

答:

Cortex-M3处理器采用ARMv7-M架构。

它包括所有的16位thumb指令集和基本的32位thumb-2指令集架构。

Cortex-M3处理器不能执行ARM指令。

Cortex-M3处理器支持两种工作模式,线程模式和处理模式。

Cortex-M3处理器有两种工作状态:

Thumb状态和调试状态。

Cortex-M3处理器代码可以是特权执行或非特权执行。

非特权执行时对有些资源的访问受到限制或不允许访问。

特权执行可以访问所有资源。

处理模式始终是特权访问,线程模式可以是特权或非特权访问。

4.6习题

一、填空题

1.ARMRealViewMDK是ARM公司和深圳英倍特公司合作开了本土化的ARM开发平台。

2.ST公司的STM32系列芯片采用了Cortex-M3内核,其分为两个系列。

STM32F101系列为标准型,运行频率为36MHz;STM32F103系列为标准型,运行频率为72MHz。

3.STM32全系列芯片都具有引脚到引脚一一对应的特点,并且相同封装的内部资源均相同,这就给用户升级带来很大方便。

4.STM32提供了一种最简单的程序下载方法,即在应用编程,只需要串口连接到PC机上,便可以进行程序下载。

二、选择题

1.下列哪个不是RealViewMDK开发环境的特点(D)。

A.Windows风格B.兼容的KeilμVision界面

C.全面的ARM处理器支持D.体积庞大

2.STM32F103VBT6资源不包括(D)。

A.128k的FlashB.100个引脚

C.USB接口D.USBOTG接口

3.仿真执行程序,直到遇到一个断点的快捷键为(A)。

A.F5B.F11

C.F12D.F6

4.下列哪种方法可以对STM32进行程序下载(ABCD)。

(多选)

A.KeilULinkB.J-Link

C.在应用编程D.以上都可以

三、简答题

1.简述ARMRealView开发环境的特点。

答:

ARMRealViewMDK开发平台具有如下主要特点:

❑采用KeilμVision3的开发环境和界面,给单片机用户的升级带来极大的方便。

❑具有Windows风格的可视化操作界面,界面友好,使用极为方便;

❑支持汇编语言、C51语言以及混合编程等多种方式的单片机设计;

❑集成了非常全面的ARM处理器支持,能够完成ARM7、ARM9以及ARMCortex-M3等处理器的程序设计和仿真;

❑集成了丰富的库函数,以及完善的编译连接工具;

❑提供了并口、串口、A/D、D/A、定时器/计数器以及中断等资源的硬件仿真能力,能够帮助用户模拟实际硬件的执行效果;

❑可以与多款外部仿真器联合使用,提供了强大的在线仿真调试能力;

❑内嵌RTX-51Tiny和RTX-51FULL内核,提供了简单而强大的实时多任务操作系统支持;

❑在一个开发界面中支持多个项目的程序设计;

❑支持多级代码优化,最大限度地帮助用户精简代码体积;

❑由于KeilμVision具有最为广泛的用户群,因此相应的代码资源非常丰富,读者可以轻松地找到各类编程资源以加速学习和开发过程。

2.简述基于ARMCortex-M3的STM32芯片特点。

答:

ST公司的STM32系列芯片采用了ARMCortex-M3内核,其分为两个系列。

STM32F101系列为标准型,运行频率为36MHz;STM32F103系列为标准型,运行频率为72MHz。

STM32全系列芯片都具有引脚到引脚一一对应的特点,并且相同封装的内部资源均相同,这就给用户升级带来很大方便。

3.简述STM32最小硬件开发系统的组成及其各部分的作用。

答:

读者可以参阅正文中的第3节,其中包括如下几个部分:

❑主芯片:

采用STM32系列,为整个开发系统的核心,本书所有的程序都运行在其中。

❑晶体振荡部分:

提供了硬件时序以及实时时钟使用。

❑供电部分:

采用AM1117为芯片提供稳定的3.3V电压。

❑复位部分:

采用一个按键开关来实现。

5.7习题

一、填空题

1.Cortex-M3不支持ARM指令。

另外,Cortex-M3支持绝大部分的ARMv6Thumb指令和ARMv7Thumb指令。

2.索引数据传送指令包括预索引和后索引两类。

带预索引的数据传送可以用在多种数据类型上,并且既可用于加载,又可用于存储。

3.除了支持“预索引”,还支持“后索引”(Post‐indexing)。

后索引也要使用一个立即数offset,但与预索引不同的是,后索引是忠实使用基址寄存器Rd的值作为数据传送的地址的。

待到数据传送后,再执行Rd←Rd+offset。

4.用于在寄存器间传送数据的指令是MOV。

与MOV指令相关的另一个指令是MVN,它把寄存器的内容取反后再传送。

二、选择题

1.ARMCortex-M3支持的指令集不包括(A)。

A.ARMB.ARMv6Thumb

C.ARMv7ThumbD.以上全不包括

2.下列哪个是ARMCortex-M3支持的指令(A)。

A.SETENDB.MOV

C.ADDD.MVN

3.Cortex-M3片载了硬件乘法器,支持如下哪些64位乘法指令(ABCD)。

(多选)

A.SMULLB.SMLAL

C.UMULLD.SMLAL

4.Cortex-M3中的数据序转移指令包括(ABC)。

(多选)

A.REV.WB.REV16.W

C.REVSH.WD.LDRB

5.如果需要保存返回地址,则可以使用如下哪些转移指令(CD)。

(多选)

A.BB.BX

C.BLD.BLX

三、简答题

1.简述ARMCortex-M3不支持的指令及其原因。

答:

Cortex-M3不支持ARM指令。

另外,Cortex-M3支持绝大部分的ARMv6Thumb指令,但以下两个指令不支持

❑BLX#im:

在使用立即数做操作数时,BLX总是要切入ARM状态。

因为Cortex-M3只在Thumb态下运行,故以此指令为代表的,凡是试图切入ARM态的操作,都将引发一个用法错误。

❑SETEND:

由v6引入的,在运行时改变处理器端设置的指令(大端或小端)。

因为Cortex-M3不支持动态端的功能,所以此指令也将引发错误。

Cortex-M3支持部分的ARMv7Thumb指令,但有少量在ARMv7Thumb中列出的指令不被支持,如表5-13所示。

表5-13不支持的ARMv7Thumb指令

指令格式

原功能或不支持的原因

MCR

把通用寄存器的值传送到协处理器的寄存器中

MCR2

把通用寄存器的值传送到协处理器的寄存器中

MCRR

把通用寄存器的值传送到协处理器的寄存器中,一次操作两个

MRC

把协处理器寄存器的值传送到通用寄存器中

MRC2

把协处理器寄存器的值传送到通用寄存器中

MRRC

把协处理器寄存器的值传送到通用寄存器中,一次操作两个

LDC

把某个连续地址空间中的一串数值传送至协处理器中

STC

从协处理器中传送一串数值到地址连续的一段地址空间中

CPS.WA

Cortex-M3没有“A”位

CPS.W#mode

Cortex-M3的PSR中没有“mode”位

DBG

服务于跟踪系统的一条hint指令

PLD

预取数据。

这是服务于cache系统的一条hint指令。

因为在CM3中没有cache,该指令就相当于NOP

PLI

预取指令。

这是服务于cache系统的一条hint指令。

因为在CM3中没有cache,该指令就相当于NOP

YIELD

用于多线程处理。

线程使用该指令通知给硬件:

我正在做的任务可以被交换出去(swappedout),从而提高系统的整体性能。

2.查找ARMCortex-M3所支持的全部16位和32位指令集。

答:

这里省略。

3.简述预索引和后索引和区别。

答:

带预索引的数据传送可以用在多种数据类型上,并且既可用于加载,又可用于存储。

后索引也要使用一个立即数offset,但与预索引不同的是,后索引是忠实使用基址寄存器Rd的值作为数据传送的地址的。

待到数据传送后,再执行Rd←Rd+offset。

其中,offset可以是负数。

6.5习题

一、填空题

1.对于大部分基于闪存的系统来说,一项重要的需求就是当这些系统安装在终端产品上后,具有更新固件的能力,这个能力称为在应用编程。

2.STM32在每个芯片出厂之前,保存了一段BootLoader程序供用户快速实现在应用编程。

BootLoader程序的主要任务是通过USART1端口下载固件程序到内置的Flash存储器中。

3.在STM32中提供了3种不同的启动模式,一般由BOOT[1:

0]引脚电平来选择。

4.STM32的三种启动模式对应的三种存储介质都是芯片内置的。

5.在ST32的三种启动模式中,从用户闪存启动,这是正常的工作模式。

从系统存储器启动,这种模式启动的程序功能由厂家设置。

从内置SRAM启动,这种模式可以用于调试。

6.在系统上电的时候,CPU首先根据BOOT[1:

0]引脚电平来确定是哪种模式的启动,然后就是把相应模式的起始地址映射到0地址处,并从0地址处开始执行。

7.BOOT[1:

0]引脚电平的值是在复位后SYSCLK的第4个上升沿时被锁定的。

当退出standby模式时,BOOT[1:

0]引脚被重新采样。

因此,BOOT[1:

0]引脚必须在standby模式下也保持需要的启动模式配置。

二、选择题

1.下列哪个是STM32的BootLoader的特点(ABCD)。

(多选)

A.BootLoader程序在每个芯片出厂的时候已经内置,无需用户干预

B.支持任意波特率

C.BootLoader程序通过USART1端口下载固件程序到内置的Flash存储器中

D.占用引脚少,与计算机的串口只需RX和TX两根引脚即可完成固件升级工作

2.STM32启动BootLoader需要置如下那些引脚(C)。

A.BOOT1=0,BOOT0=0B.BOOT1=1,BOOT0=0

C.BOOT1=0,BOOT0=1D.BOOT1=1,BOOT0=1

3.通过意法半导体的BootLoader程序可以完成(ABCD)。

(多选)

A.固件下载B.读Flash

C.擦除FlashD.编辑选项字节

三、简答题

1.简述什么是在应用编程及其优点。

答:

对于大部分基于闪存的系统来说,一项重要的需求就是当这些系统安装在终端产品上后,具有更新固件的能力,这个能力称为在应用编程(In-ApplicationProgrammingIAP)。

很显然,在应用编程的好处是可以摆脱昂贵、复杂的编程器和仿真器,为用户的最终产品提供方便的固件程序的更新能力。

另外,对于资源有限的开发者来说,也提供了一种极低成本的固件下载方法。

2.简述STM32的在应用编程及其BootLoader。

答:

基于ARMCortex-M3的STM32具备了在应用编程能力。

STM32在每个芯片出厂之前,保存了一段BootLoader程序供用户快速实现在应用编程。

BootLoader程序的主要任务是通过USART1端口下载固件程序到内置的Flash存储器中。

3.简述STM32的启动模式及启动配置。

答:

在STM32中提供了三种不同的启动模式,一般由BOOT[1:

0]引脚电平来选择。

❑BOOT1=x,BOOT0=0:

用户闪存被选作启动区,x表示任意电平。

❑BOOT1=0,BOOT0=1:

系统内存被选作启动区。

❑BOOT1=1,BOOT0=1:

嵌入式SRAM被选作启动区。

7.5习题

一、填空题

1.FreeRTOS是一个可移植、开源的小型实时内核。

FreeRTOS作为开源的轻量级实时性操作系统,不仅实现了基本的实时调度、信号量、队列和存储管理,而且在商业应用上不需要授权费。

2.调度器是内核中负责决定在某个特殊时间哪个任务应该执行的部分。

内核可以在任务的生命期挂起、恢复一个任务许多次。

3.跟任何其他程序一样,一个任务执行时,它使用处理器/微控制器的寄存器,访问RAMROM。

这些资源一起组成任务的执行上下文。

4.FreeRTOS允许一定数量的参数存在,使得FreeRTOS内核可以剪裁来更加适合具体的应用程序。

这些参数,位于FreeRTOSConfig.h文件中。

二、选择题

1.下列哪个是FreeRTOS支持的处理器构架(ABCD)。

(多选)

A.ARM7B.ARM9

C.Cortex-M3D.AVR32

2.FreeRTOS的主要功能特点包括(ABCD)。

(多选)

A.时间管理B.内存管理

C.消息队列D.优先级调度

三、简答题

1.简述FreeRTOS的系统定制功能。

答:

FreeRTOS是一种开源的嵌入式操作系统。

FreeRTOS提供了系统定制功能,同时也提供了多种API函数用来实现任务控制和内核控制。

FreeRTOS允许一定数量的参数存在,使得FreeRTOS内核可以剪裁来更加适合具体的应用程序。

这些参数,位于FreeRTOSConfig.h.文件中。

每一个包含FreeRTOS源代码演示程序,都有它自己的FreeRTOSConfig.h文件。

2.简述FreeRTOS的任务控制API及功能。

答:

FreeRTOS操作系统的任务控制通过一系列的API函数来实现,每个API函数及其功能可以参阅本章正文。

3.简述FreeRTOS的内核控制API及功能。

答:

FreeRTOS操作系统的内核控制也是通过一系列的API函数来实现,每个API函数及其功能可以参阅本章正文。

8.5习题

一、填空题

1.嵌入式实时操作系统UC/OS首先在1992年发布,目前UC/OS-Ⅱ是最新版本。

嵌入式实时操作系统UC/OS-Ⅱ是一种开源但不免费的实时操作系统,具有可剥夺实时内核。

2.在UC/OS-Ⅱ中,任务可以是一个无限的循环,也可以是在一次执行完毕后被删除掉。

这里要注意的是,任务代码并不是被真正的删除了,而只是操作系统不再理会该任务代码,所以该任务代码不会再运行。

3.UC/OS-II也可以通过事件来实现数据共享和任务通讯,这里讲到的事件,可以是信号量、邮箱或者消息队列等。

4.UC/OS-II中的信号量由两部分组成:

一个是信号量的计数值,它是一个16位的无符号整数(0到65535之间);另一个是由等待该信号量的任务组成的等待任务表。

5.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1