一、课程性质与设置目的
(一)课程性质与特点
ARM体系结构与编程是嵌入式技术专业的核心课程之一,同时也是一门与嵌入式系统开发、汇编语言、操作系统、Linux系统开发等学科有着密切联系的计算机学科,具有综合性、应用性、实践性等特征。本课程立足于ARM平台和Linux嵌入式操作系统进行编写,结合嵌入式开发的最新理论与实践成果,并在借鉴国内外先进经验的基础上,对ARM体系结构及ARM开发的基本理论、基本知识及其具体的开发进行了全面、系统地阐述与分析,培养学生进行综合知识的运用以及工程开发的能力。
(二)课程设置目的与基本要求
本课程作为全国高等教育自学考试嵌入式技术专业(本科)的必考课程。通过本课程的学习,使学生对嵌入式处理器、嵌入式系统设计、ARM编程基本原理的基本结构、嵌入式系统设计所涉及的内容有一个较全面的认识,掌握基于ARM体系结构嵌入式系统设计开发的基本理论和方法,为今后从事基于ARM的嵌入式系统研究和开发打下良好的基础。基本要求如下:
1.熟悉嵌入式系统的体系结构和分类;熟悉ARM微处理器的结构和特点;了解嵌入式操作系统的分类;了解嵌入式系统的设计与开发;
2.掌握ARM编程模型的工作原理;掌握BootLoader、Linux交叉编译环境、嵌入式开发及调试;
3.掌握ARM下面简单设备驱动、网络设备驱动、音频设备驱动、USB设备驱动程序的开发;掌握uC/OS-Ⅱ、Linux在ARM平台的移植;掌握ARM平台图形用户界面的开发。
(三)本课程与相关课程的联系
本课程以嵌入式基于ARM体系结构的开发为主线,融合了硬件设计、软件设计、操作系统、汇编程序开发、计算机网络等计算机学科。建议在学习本课程之前,学生应具备必要的计算机体系机构、嵌入式系统、嵌入式开发、汇编语言、Linux操作系统、计算机网络编程等知识基础,例如:汇编语言、嵌入式Linux系统开发与应用、C语言程序设计、操作系统、计算机网络等课程。
本课程共分为十四章,分别是嵌入式系统基础、嵌入式处理器介绍、嵌入式系统的设计方法、ARM编程模型的工作原理、BootLoader、Linux交叉编译环境、嵌入式开发及调试、简单设备驱动程序、网络设备驱动程序开发、音频设备驱动程序开发、USB设备驱动程序开发、uC/OS-Ⅱ在ARM平台的移植、Linux在ARM平台的移植、图形用户界面实例。其中:
1.重点章包括:嵌入式处理器介绍、ARM编程模型的工作原理、BootLoader、嵌入式开发及调试、网络设备驱动程序开发、音频设备驱动程序开发、USB设备驱动程序开发、uC/OS-Ⅱ在ARM平台的移植、Linux在ARM平台的移植。
2.次重点章包括:嵌入式系统的设计方法、Linux交叉编译环境、简单设备驱动程序。
3.一般章包括:嵌入式系统基础、图形用户界面实例
二、课程内容与考核目标
第一章嵌入式系统基础
一、学习目的与要求
本章的学习目的主要是从整体上认识嵌入式系统。要求掌握嵌入式系统的概念和特点,了解嵌入式系统的研究现状和发展趋势,了解常用的几种嵌入式操作系统的特点以及它们之间的比较,了解嵌入式系统与PC机、嵌入式系统与单片机之间的不同。重点学习嵌入式系统的概念和特点。
二、课程内容
1.1嵌入式系统简介
1.1.1嵌入式系统的概念
1.1.2嵌入式系统的特点
1.1.3嵌入式系统的分类
1.2嵌入式系统的研究现状和发展趋势
1.2.1研究现状
1.2.2发展趋势
1.3典型嵌入式操作系统
1.3.1嵌入式操作系统的特点
1.3.2几种典型的嵌入式操作系统
1.3.3嵌入式系统与PC机
1.3.4嵌入式系统与单片机
1.3.5嵌入式Linux系统的特点
三、考核知识点
1.嵌入式系统的概念、特点和分类
2.嵌入式系统的研究现状和发展趋势
3.几种典型嵌入式操作系统、嵌入式系统与PC机的比较、嵌入式系统与单片机的比较
4.嵌入式Linux系统的特点
四、考核要求
1.嵌入式系统的概念、特点和分类
领会:嵌入式系统的概念、特点和分类
2.嵌入式系统的研究现状和发展趋势
识记:嵌入式系统的研究现状和发展趋势
3.几种典型嵌入式操作系统、嵌入式系统与PC机的比较、嵌入式系统与单片机的比较
识记:几种典型嵌入式操作系统
领会:嵌入式系统与PC机的比较、嵌入式系统与单片机的比较
4.嵌入式Linux系统的特点
识记:嵌入式Linux系统的特点
第二章嵌入式处理器介绍
一、学习目的与要求
本章的学习目的主要是掌握ARM处理器的指令集。要求了解嵌入式处理器的特点、分类和体系结构,了解典型的几种嵌入式处理器,了解ARM处理器的不同系列,掌握ARM处理器的工作状态,理解ARM处理器的运行模式,掌握ARM处理器的存储格式、寄存器结构和异常中断,在此基础上进一步掌握ARM处理器的指令集。重点学习ARM指令集和Thumb指令集。
二、课程内容
2.1嵌入式处理器概述
2.1.1嵌入式处理器简介
2.1.2嵌入式处理器的特点
2.1.3嵌入式处理器的分类
2.1.4嵌入式处理器的体系结构
2.1.5嵌入式处理器的存储体系结构
2.1.6典型嵌入式处理器
2.2ARM系列处理器
2.2.1ARM简介
2.2.2ARM技术的应用领域
2.2.3ARM处理器系列
2.2.4ARM处理器的工作状态
2.2.5ARM处理器运行模式
2.2.6ARM处理器的存储格式
2.2.7ARM状态下的寄存器结构
2.2.8ARM异常中断
2.2.9ARM处理器的应用选型
2.3ARM指令集
2.3.1ARM指令的一般格式
2.3.2ARM存储器访问指令
2.3.3跳转指令
2.3.4数据处理指令
2.3.5程序状态寄存器(PSR)传输指令
2.3.6协处理器指令
2.3.7ARM杂项指令
2.3.8ARM伪指令
2.4Thumb指令集
三、考核知识点
1.嵌入式处理器的特点、分类、体系结构和存储体系结构
2.ARM处理器系列、工作状态、运行模式、存储格式、寄存器结构、异常中断和应用选型
3.ARM指令集,包括指令的一般格式、存储器访问指令、跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、协处理器指令、杂项指令和伪指令
4.Thumb指令集
四、考核要求
1.嵌入式处理器的特点、分类、体系结构和存储体系结构
识记:嵌入式处理器的特点和分类
领会:嵌入式处理器的体系结构和存储体系结构
2.ARM处理器系列、工作状态、运行模式、存储格式、寄存器结构、异常中断和应用选型
识记:ARM处理器系列、应用选型
领会:ARM处理器的工作状态、运行模式、存储格式、寄存器结构、异常中断
3.ARM指令集,包括指令的一般格式、存储器访问指令、跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、协处理器指令、杂项指令和伪指令
领会:ARM指令的一般格式、存储器访问指令、跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、协处理器指令、杂项指令和伪指令
简单应用:ARM指令应用
4.Thumb指令集
领会:Thumb指令集
第三章嵌入式系统的设计方法
一、学习目的与要求
本章的学习目的主要是掌握嵌入式系统的设计流程。要求了解嵌入式系统的总体结构,了解嵌入式系统设计的特点,掌握嵌入式系统设计的内容和设计方法,熟练掌握嵌入式系统设计的流程以及每个阶段的工作内容和方法。重点学习嵌入式系统设计流程。
二、课程内容
3.1嵌入式系统设计概述
3.1.1嵌入式系统的总体结构
3.1.2嵌入式系统设计内容
3.1.3嵌入式系统设计的特点
3.1.4嵌入式系统设计方法的分类
3.2嵌入式系统设计流程
3.3课后练习
三、考核知识点
1.嵌入式系统的总体结构、设计内容、设计的特点和设计方法
2.嵌入式系统设计流程
四、考核要求
1.嵌入式系统的总体结构、设计内容、设计的特点和设计方法
识记:嵌入式系统设计内容和设计特点
领会:嵌入式系统的总体结构和设计方法
2.嵌入式系统设计流程
领会:嵌入式系统设计流程的各个阶段和内容
第四章ARM编程模型的工作原理
一、学习目的与要求
本章的学习目的主要是通过S3C2410X开发板的实例,掌握嵌入式系统的基本设计原则。要求了解嵌入式系统的基本设计原则,掌握ARM920T处理器的结构和特点,掌握S3C2410X处理器的特点、中断处理过程和片上资源的定义和使用。重点学习S3C2410X开发板。
二、课程内容
4.1系统设计概述
4.1.1嵌入式系统开发基础
4.1.2嵌入式系统选型原则
4.2ARM920T简介
4.3S3C2410X开发板
4.3.1S3C2410处理器的特点
4.3.2ARM片上总线
4.3.3S3C2410的处理器中断
4.3.4S3C2410处理器片上资源的定义和使用
4.3.5编程参考软件包2410TEST
4.4课后练习
三、考核知识点
1.嵌入式系统开发基础和选型原则
2.ARM920T内核、处理器结构、系统结构
3.S3C2410X开发板处理器特点、ARM片上总线、处理器中断和片上资源的定义和使用
四、考核要求
1.嵌入式系统开发基础和选型原则
识记:嵌入式系统开发基础和选型原则
2.ARM920T内核、处理器结构、系统结构
领会:ARM920T内核、处理器结构、系统结构
3.S3C2410X开发板处理器特点、ARM片上总线、处理器中断和片上资源的定义和使用
识记:S3C2410X开发板处理器特点,ARM片上总线
领会:S3C2410X处理器中断,处理器中断和片上资源的定义和使用
第五章BootLoader
一、学习目的与要求
本章的学习目的主要是掌握U-Boot的启动流程、编译过程和移植的关键技术。要求了解BootLoader的基本概念,了解BootLoader所支持的CPU和嵌入式体系结构,理解BootLoader的通用执行流程,了解U-Boot、VIVI等常用的嵌入式LinuxBootLoader,掌握U-Boot源代码的目录结构、启动过程、编译过程和移植的关键技术。重点学习U-Boot的启动流程、编译过程和移植的关键技术。
二、课程内容
5.1BootLoader介绍
5.1.1BootLoader的基本概念
5.1.2BootLoader所支持的CPU和嵌入式体系结构
5.1.3BootLoader的安装媒介
5.1.4BootLoader的概念扩展
5.1.5ARMBootLoader的共性
5.1.6BootLoader移植的必要性
5.1.7BootLoader的烧录和存储
5.1.8BootLoader与主机间文件传输所用的通信设备及协议
5.1.9BootLoader的通用执行流程
5.2常用的嵌入式LinuxBootLoader
5.2.1U-Boot
5.2.2VIVI
5.2.3Blob
5.2.4RedBoot
5.2.5ARMBoot
5.2.6DIY
5.3U-Boot基础
5.3.1U-Boot源代码的目录结构
5.3.2U-Boot支持的主要功能
5.3.3U-Boot命令介绍及环境变量
5.4U-Boot的启动过程
5.5U-Boot的编译过程
5.6U-Boot移植的关键技术
5.7课后练习
三、考核知识点
1.BootLoader的基本概念、所支持的CPU、嵌入式体系结构、与主机间文件传输所用的通信设备及协议、通用执行流程
2.常用的嵌入式LinuxBootLoader,例如U-Boot、VIVI
3.U-Boot源代码的目录结构、启动过程、编译过程和移植的关键技术
四、考核要求
1.BootLoader的基本概念、所支持的CPU、嵌入式体系结构、与主机间文件传输所用的通信设备及协议、通用执行流程
识记:BootLoader的基本概念、所支持的CPU、嵌入式体系结构、与主机间文件传输所用的通信设备及协议、
领会:BootLoader的通用执行流程
2.常用的嵌入式LinuxBootLoader,例如U-Boot、VIVI、Blob、RedBoot、ARMBoot、DIY
识记:U-Boot、VIVI、Blob、RedBoot、ARMBoot、DIY的简介、目录结构
3.U-Boot源代码的目录结构、启动过程、编译过程和移植的关键技术
识记:U-Boot源代码的目录结构
领会:U-Boot的启动过程、编译过程和移植的关键技术
第六章Linux交叉编译环境
一、学习目的与要求
本章的学习目的主要是掌握交叉编译环境的配置和开发调试。要求了解交叉编译环境概念模型、目标板与宿主机之间的连接、文件传输方式,掌握交叉编译过程中如何使用编译工具建立编译环境,掌握开发主机的环境配置。重点学习如何建立交叉编译环境。
二、课程内容
6.1交叉编译环境简介
6.1.1交叉编译环境概念模型
6.1.2目标板与宿主机之间的连接
6.1.3文件传输方式
6.1.4网络文件系统
6.2交叉编译工具简介
6.2.1gcc编译器
6.2.2Binutils工具包
6.2.3GNUmake
6.2.4glibc库
6.2.5gdb调试工具
6.2.6交叉编译环境的建立
6.3主机开发环境配置
6.3.1配置主机服务
6.3.2串口控制台工具
6.3.3配置DHCP服务
6.3.4配置TFTP服务
6.3.5配置NFS服务
6.4课后练习
四、考核要求
1.交叉编译环境概念模型、目标板与宿主机之间的连接、文件传输方式
领会:交叉编译环境概念模型、目标板与宿主机之间的连接、文件传输方式
2.交叉编译工具使用
简单应用:gcc编译器、Binutils工具包、GNUmake、glibc库和gdb调试工具的使用
3.主机开发环境配置
简单应用:会配置配置主机服务、串口控制台工具、配置DHCP服务、配置TFTP服务、配置NFS服务
第七章嵌入式开发及调试
一、学习目的与要求
本章的学习目的主要是掌握嵌入式开发环境使用和调试方法。要求了嵌入式系统开发环境,掌握ADS集成开发环境的使用,掌握嵌入式系统常用的调试方法,掌握ROM仿真器和JTAG接口仿真器。重点学习常用的几种调试方法。
二、课程内容
7.1嵌入式系统的开发环境
7.1.1开发环境简介
7.1.2ADS集成开发环境的使用
7.2嵌入式系统调试方法
7.2.1基于主机的调试
7.2.2远程调试器与调试内核
7.2.3在线仿真ICE
7.2.4BDM
7.2.5软件仿真器
7.3ROM仿真器
7.4JTAG接口
7.5课后练习
三、考核知识点
1.嵌入式系统开发环境和ADS集成开发环境的使用
2.嵌入式系统常用的调试方法,包括远程调试器与调试内核、在线仿真ICE、BDM和软件仿真器
3.ROM仿真器的元件和功能
4.JTAG接口仿真器的结构和功能
四、考核要求
1.嵌入式系统开发环境和ADS集成开发环境的使用
识记:嵌入式系统开发环境和ADS集成开发环境的使用
2.嵌入式系统常用的调试方法,包括远程调试器与调试内核、在线仿真ICE、BDM和软件仿真器
领会:远程调试器与调试内核、在线仿真ICE、BDM和软件仿真器等嵌入式系统常用的调试方法
3.ROM仿真器的元件和功能
识记:ROM仿真器的元件和功能
4.JTAG接口仿真器的结构和功能
识记:JTAG接口仿真器的结构和功能
第八章简单设备驱动程序
一、学习目的与要求
本章的学习目的主要是通过PCI驱动程序的编程实现,掌握简单设备的驱动程序编写方法。要求理解设备驱动的类型、数据结构和文件结构;掌握设备驱动的程序结构和接口;了解设备驱动的模块化编程和一般框架,掌握PCI驱动程序的编程实现。重点掌握PCI驱动程序的编程实现。
二、课程内容
8.1设备驱动概述
8.1.1基本概念
8.1.2数据结构
8.1.3文件结构
8.2设备驱动基础
8.2.1设备驱动程序结构
8.2.2设备驱动程序接口
8.3设备驱动模块化编程
8.3.1模块化驱动程序概述
8.3.2设备驱动模块化编程的一般框架
8.4PCI总线
8.4.1PCI设备驱动概述
8.4.2PCI驱动程序的编程实现
8.5课后练习
三、考核知识点
1.设备的类型、数据结构和文件结构
2.设备驱动的程序结构和接口
3.设备驱动模块化编程
4.PCI驱动程序的编程实现
四、考核要求
1.设备的类型、数据结构和文件结构
识记:字符设备、块设备、网络设备的定义;设备的主设备号和次设备号定义;设备的数据结构和文件结构
2.设备驱动的程序结构和接口
识记:设备驱动程序的注册、注销、打开、释放、读写、控制、中断和查询。
3.设备驱动模块化编程
领会:设备驱动模块化编程的编译方式、编程框架
4.PCI驱动程序的编程实现
综合应用:PCI驱动程序的编程实现
第九章网络设备驱动程序开发
一、学习目的与要求
本章的学习目的主要是掌握以太网驱动程序和硬件接口设计。要求了解网络驱动的体系结构、device结构,了解以太网接口的实现方式和硬件设计,掌握网络设备的初始化,掌握网络设备的打开和关闭,了解数据包的传输和接收。重点学习以太网驱动程序。
二、课程内容
9.1网络设备驱动程序简介
9.1.1网络设备概述
9.1.2重要数据结构——structdevice
9.2以太网控制器
9.3网络设备的初始化
9.3.1模块初始化模式分析
9.3.2启动初始化模式分析
9.4网络设备的打开和关闭
9.5数据包的传输和接收
9.5.1Socket缓冲区及相关操作
9.5.2数据包的传输
9.5.3数据包的接收
9.6网络设备驱动程序实例
9.7TCP编程实例
9.8课后练习
三、考核知识点
1.网络驱动程序的体系结构、device结构
2.以太网接口的实现方式和硬件设计
3.网络设备的模块初始化模式分析和启动初始化模式分析
4.网络设备的打开和关闭
5.Socket缓冲区、数据包的传输和接收
6.编写网络设备驱动程序实例
四、考核要求
1.网络驱动程序的体系结构、device结构
识记:网络驱动程序的体系结构、device结构说明
2.以太网接口的实现方式和硬件设计
识记:以太网接口的实现方式和硬件设计
3.网络设备的模块初始化模式分析和启动初始化模式分析
领会:网络设备的模块初始化模式分析和启动初始化模式分析
4.网络设备的打开和关闭
领会:网络设备的打开和关闭
5.Socket缓冲区、数据包的传输和接收
领会:Socket缓冲区、数据包的传输和接收
6.网络设备驱动程序实例
综合运用:编写网络设备驱动程序
第十章音频设备驱动程序开发
一、学习目的与要求
本章的学习目的主要是掌握音频设备驱动程序的开发方法。要求了解模拟音频的数字化过程,包括采用、量化和编码,了解常用的音频文件格式,了解WAV文件格式剖析,掌握IIS接口总线控制原理和音频接口设计,掌握Linux下音频设备编程接口、音频设备文件文件类型以及音频设备编程设计。重点学习Linux下音频设备编程设计。
二、课程内容
10.1音频信号基础
10.1.1音频信号
10.1.2模拟音频的数字化过程
10.1.3音频文件的格式
10.1.4WAV文件格式剖析
10.2基于IIS接口的音频系统
10.2.1IIS接口总线控制原理
10.2.2音频接口设计
10.3音频设备程序的实现
10.3.1音频设备编程接口
10.3.2音频设备文件
10.3.3音频设备编程设计
10.4课后练习
三、考核知识点
1.模拟音频的采用、量化和编码,常用的音频文件格式,WAV文件格式剖析
2.IIS接口总线控制原理和音频接口设计
3.音频设备编程接口、音频设备文件文件类型
4.音频设备编程设计
四、考核要求
1.模拟音频的采用、量化和编码,常用的音频文件格式,WAV文件格式剖析
识记:模拟音频的采用、量化和编码,常用的音频文件格式
领会:WAV文件格式
2.IIS接口总线控制原理和音频接口设计
领会:IIS接口总线控制原理和音频接口设计
3.音频设备编程接口、音频设备文件类型
识记:Linux常用的音频设备文件
领会:Linux音频设备编程接口
4.音频设备编程设计
综合运用:Linux音频设备编程
第十一章USB设备驱动程序开发
一、学习目的与要求
本章的学习目的主要是掌握基于Linux的USB设备驱动程序开发方法。要求了解USB的发展历史,了解USB设备的基础构成、了解USB中的描述符,掌握USB的数据传输方式,了解USB文件系统,了解Libusb框架内容,掌握USB的主机驱动结构,掌握USB驱动的整体架构和主要数据结构和相关函数,掌握USB主机驱动在S3C2410X平台的实现。重点学习USB驱动数据结构。
二、课程内容
11.1USB驱动程序简介
11.1.1USB总线概述
11.1.2USB设备的基础构成
11.1.3USB中的描述符
11.1.4USB的数据传输
11.1.5USB文件系统(usbfs)
11.1.6Libusb介绍
11.2Linux下USB系统文件节点
11.3USB主机驱动结构
11.4USB驱动数据结构
11.4.1USB驱动的整体构架
11.4.2USB驱动中主要的数据结构
11.4.3驱动程序相关函数
11.5USB主机驱动在S3C2410X平台的实现
11.5.1S3C2410X简介
11.5.2USB主机控制器
11.5.3USB驱动程序的移植
11.6课后练习
三、考核知识点
1.USB的发展历史,USB设备的基础构成、USB中的描述符、USB的数据传输方式
2.USB的主机驱动结构
3.USB驱动的整体架构、主要数据结构和相关函数
4.USB主机驱动在S3C2410X平台的实现
四、考核要求
1.USB的发展历史,USB设备的基础构成、USB中的描述符、USB的数据传输方式
识记:USB的发展历史、USB中的描述符、USB的数据传输方式
领会:USB设备的基础构成
2.USB的主机驱动结构
领会:USB的主机控制器驱动、USB驱动、USB设备类驱动的编程方法
3.USB驱动的整体架构、主要数据结构和相关函数
领会:USB驱动的整体架构、主要数据结构和相关函数
4.USB主机驱动在S3C2410X平台的实现
简单应用:在S3C2410X平台上实现USB主机驱动
第十二章μC/OS-Ⅱ在ARM平台的移植
一、学习目的与要求
本章的学习目的主要是掌握μC/OS-Ⅱ在嵌入式ARM平台的移植。要求掌握实时操作系统的基本概念,了解几种主要的实时操作系统,了解实时操作系统的主要性能,掌握μC/OS-II操作系统的系统特点、系统组成、文件结构、任务状态、任务控制块和任务调度器等,掌握μC/OS-II的系统内核,了解eCos的体系结构、可配置性和内核移植。重点学习μC/OS-II操作系统的系统内核。
二、课程内容
12.1实时操作系统简介
12.1.1实时操作系统的基本概念
12.1.2几种主要的实时操作系统
12.1.3实时操作系统的主要性能
12.2μC/OS-II操作系统
12.2.1μC/OS-II操作系统概述
12.2.2μC/OS-II系统内核
12.3eCos简介及移植介绍分析
12.3.1eCos的体系结构及可配置性
12.3.2eCos内核的移植
12.4课后练习
三、考核知识点
1.实时操作系统的基本概念,几种主要的实时操作系统,实时操作系统的主要性能
2.μC/OS-II操作系统的系统特点、系统组成、文件结构、任务状态、任务控制块和任务调度器
3.μC/OS-II的系统内核
4.eCos的体系结构、可配置性和内核移植
四、考核要求
1.实时操作系统的基本概念,几种主要的实时操作系统,实时操作系统的主要性能
识记:实时操作系统的基本概念,几种主要的实时操作系统
领会:实时操作系统的主要性能
2.μC/OS-II操作系统的系统特点、系统组成、文件结构、任务状态、任务控制块和任务调度器
识记:μC/OS-II操作系统的系统特点
领会:μC/OS-II操作系统的系统组成、文件结构、任务状态、任务控制块和任务调度器
3.μC/OS-II的系统内核
领会:μC/OS-II的任务调度、时间管理、内存管理、资源管理
4.eCos的体系结构、可配置性和内核移植
领会:eCos的体系结构、可配置性和内核的移植
第十三章Linux在ARM平台的移植
一、学习目的与要求
本章的学习目的主要是掌握Linux内核在ARM平台上的移植。要求了解Linux操作系统的产生、发展、特点和组成,掌握Linux内核的内核结构,掌握Linux内核的组成模块,了解Linux的文件系统,掌握Linux内核源码结构、内核启动流程、各种驱动移植和内核配置,了解Linux的根文件系统和嵌入式文件系统。重点学习Linux内核在ARM平台上的移植。
二、课程内容
13.1Linux概述
13.1.1Linux操作系统的产生及发展
13.1.2Linux操作系统的特点和组成
13.2Linux内核结构
13.2.1Linux内核的主要模块
13.2.2Linux的文件系统基础
13.2.3文件系统的挂载
13.3Linux操作系统移植及根文件系统
13.3.1Linux内核移植
13.3.2Linux根文件系统
13.4课后练习
三、考核知识点
1.Linux操作系统的产生、发展、特点和组成
2.Linux内核的内核结构、组成模块和文件系统
3.Linux内核源码结构、内核启动流程、各种驱动移植和内核配置,Linux的根文件系统和嵌入式文件系统。
四、考核要求
1.Linux操作系统的产生、发展、特点和组成
识记:Linux操作系统的产生、发展、特点和组成
2.Linux内核的内核结构、组成模块、文件系统
领会:Linux内核的内核结构、组成模块,文件结构和目录管理
3.Linux内核源码结构、内核启动流程、各种驱动移植和内核配置,Linux的根文件系统和嵌入式文件系统。
识记:Linux内核源码结构、根文件系统和嵌入式文件系统
领会:Linux内核启动流程、各种驱动移植和内核配置
第十四章图形用户界面实例
一、学习目的与要求
本章的学习目的主要是掌握Qt/Embedded嵌入式图形开发。要求了解GUI的特征和架构,了解OpenGUI、Qt/Embedded等常用的几种嵌入式Linux图形用户界面,了解Qt/Embedded的架构和开发环境,掌握Qt/Embedded信号和插槽机制,了解Qt/Embedded图形引擎实现基础和事件驱动基础,了解Qt/Embedded应用程序的开发流程,掌握Qt/Embedded移植与应用。重点学习Qt/Embedded嵌入式图形开发。
二、课程内容
14.1图形用户界面
14.1.1GUI简介
14.1.2GUI特征
14.1.3GUI架构
14.2嵌入式Linux图形用户界面简介
14.2.1MicroWindows
14.2.2OpenGUI
14.2.3Qt/Embedded
14.2.4MiniGUI
14.3Qt/Embedded嵌入式图形开发
14.3.1Qt/Embedded简介
14.3.2Qt/Embedded信号和插槽机制
14.3.3Qt/Embedded实现技术分析
14.3.4Qt/Embedded图形引擎实现基础
14.3.5Qt/Embedded事件驱动基础
14.3.6Qt/Embedded应用程序的开发流程
14.3.7Qt/Embedded移植与应用
14.3.8Qt/Embedded窗口部件
14.4课后练习
三、考核知识点
1.GUI的特征和架构
2.常用的几种嵌入式Linux图形用户界面
3.Qt/Embedded的架构和开发环境,Qt/Embedded信号和插槽机制,Qt/Embedded图形引擎实现基础和事件驱动基础,Qt/Embedded应用程序的开发流程,掌握Qt/Embedded移植与应用
4.Qt/Embedded窗口部件
四、考核要求
1.GUI的特征和架构
识记:GUI的特征和架构
2.常用的几种嵌入式Linux图形用户界面
识记:MicroWindows、OpenGUI、Qt/Embedded、MiniGUI的特点
3.Qt/Embedded的架构和开发环境,Qt/Embedded信号和插槽机制,Qt/Embedded图形引擎实现基础和事件驱动基础,Qt/Embedded应用程序的开发流程,Qt/Embedded移植与应用
识记:Qt/Embedded的架构和开发环境
领会:Qt/Embedded信号和插槽机制,Qt/Embedded图形引擎实现基础和事件驱动基础,Qt/Embedded应用程序的开发流程,Qt/Embedded移植与应用
4.Qt/Embedded窗口部件
简单应用:编写Qt/Embedded窗口部件程序
三、关于大纲的说明与考核实施要求
(一)关于课程内容与考核目标的说明
《ARM体系结构与编程》课程自学考试大纲明确了《ARM体系结构与编程》课程学习的内容以及深广度,规定了该课程自学考试的范围和标准,是进行学习和考核的依据。该课程中各章的内容均由若干知识点组成,在自学考试中成为考核知识点。
本课程的考核目标主要是考核考生对《ARM体系结构与编程》课程内容的掌握程度,检测他们对ARM体系结构、编程的理论与方法的认识深度与广度,以及他们在工作中应用这些理论与方法的能力,处理和解决工作实际问题的能力。
《ARM体系结构与编程》课程自学考试大纲要求考生学习和掌握的知识点内容都作为考核的内容。由于各知识点在课程中的地位、作用以及知识自身的特点不同,自学考试将对各知识点分别按四个认知(或叫能力)层次确定其考核要求。四个能力层次从低到高依次是:识记;领会;简单应用;综合应用。关于这些用语、概念的解释如下:
识记:能正确认识和表述科学事实、原理、术语和规律,知道该课程的基础知识,并能进行正确的选择和判断。
领会:能将所学知识加以解释、归纳,能领悟某一概念或原理与其他概念或原理之间的联系,理解其引申意义,并能做出正确的表述和解释。
简单应用:能用所学的概念、原理、方法正确分析和解决较简单问题,具有分析和解决一般问题的能力。
综合应用:能灵活运用所学过的知识,分析和解决比较复杂的问题,具有一定解决实际问题的能力。
(二)关于自考教材
《ARM体系结构与编程》葛超、王嘉伟、陈磊编著,清华大学出版社,2012年12月第一版
(三)自学方法指导
1.本课程的学习者应根据本大纲规定,认真阅读指定教材,理解教材中的基本原理,熟悉基本分析方法。为有效地指导个人自学和社会助学,本大纲已指明了课程的重点和难点,在各章的基本要求中也指明了各章内容的重点和难点。本课程的学习者应在全面系统学习的基础上,掌握重点,有目的的深入学习重点章节的内容,但切忌在没有全面学习教材的情况下孤立地去抓重点。
2.本课程的学习者在自学时,应根据本大纲在推荐教材和参考书中找出大纲中相关章节知识点的论述,系统做出自学笔记,适当地配合地进行编程练习。本课程中需要动手编程的实践内容较多,自学者在学习时,要注重对知识点的理解和掌握,仔细阅读教材和参考书中的内容,多动手编程和调试,做到融会贯通。
(四)对社会助学的要求
1.社会助学者应根据本大纲规定的考试内容和考核目标,认真钻研指定的教材,明确本课程的特点、学习范围和学习要求,对自学应考者进行切实有效的辅导,并从学习方法上给予指导,引导他们防止自学中的各种偏向,把握社会助学的正确方向。
2.正确处理重点和一般的关系。课程内容有重点与一般之分,但考试的内容要覆盖全部课程,而且重点与一般是相互联系的,不是截然分开的。社会助学者应全面系统地学习教材,掌握全部考试内容和考核知识点,在此基础上再突出重点。总之,要将把全面理解和重点深入探讨结合起来,切勿孤立地只抓重点,把自学应考者引向猜题押题的歧途。
3.正确处理基础知识与应用能力之间的关系。社会助学者既要重视基础理论知识,又要重视实际应用能力的培养,努力引导自学应考者将识记、领会同应用联系起来,将基础知识和理论转化为应用能力,在全面辅导的基础上,着重培养和提高自学应考者分析和解决问题的能力。
(五)关于命题考试的若干要求
1.本课程考试采用闭卷笔试方式,考试的时间为150分钟。本课程考试可以携带没有存储功能的小型计算器。
2.本大纲各章所规定的基本要求、考核知识点及考核要求下的知识细目,都属于考核的内容。考试命题既要覆盖到章,又要避免面面俱到。要注意突出课程的重点、章节重点,加大重点内容的覆盖度。
3.命题不应有超出大纲中考核知识点范围的题,考核目标不得高于大纲中所规定的相应的最高能力层次要求。命题应着重考核自学者对基本概念、基本知识和基本理论是否了解或掌握,对基本方法是否会用或熟练。不应出与基本要求不符的偏题或怪题。
4.本课程在试卷中对不同能力层次要求的分数比例大致为:识记占20%,领会占30%,简单应用占30%,综合应用占20%。
5.要合理安排试题的难易程度,试题的难度可分为:易、较易、较难和难四个等级。每份试卷中不同难度试题的分数比例一般为:2:3:3:2。
必须注意试题的难易程度与能力层次有一定的联系,但二者不是等同的概念。在各个能力层次中对于不同的考生都存在着不同的难度,考生切勿混淆。
6.课程考试命题的主要题型一般有单项选择题、多项选择题、判断题、名词解释题、简答题、计算题、论述题等题型。各种题型的具体样式参见附录题型举例。
附录:题型举例
一、单项选择题,要求给出四个备选答案(一个正确答案)
1、下面那点不是嵌入式系统的特点()。
A、内核精简
B、专用性强
C、功能强大
D、高实时性
二、多项选择题,要求给出五个备选答案(二个以上正确答案)
1、常用的几种Linux嵌入式GUI包括()。
A、MicroWindows
B、OpenGUI
C、XWindows
D、Qt/Embedded
E、MiniGUI
三、判断题
1、软实时操作系统要求每个任务必须准时完成。()
四、名词解释题
1、块设备
五、简答题
1、简述ARM片上总线及其功能?
六、编程题
1、编写一段ARM汇编程序,实现数据块复制,将R0指向的8个字的连续数据保存到R1指向的一段连续的内存单元。
七、论述题
1、简述USB设备的基础构成
更多信息请查看学历考试网