admin管理员组文章数量:1794759
嵌入式基础知识总结
文章目录
- 前言
- 一、选择题
- 二、填空题
- 三、简答题
- 四、综合题
- 多线程编程
- 总结
前言
本篇为嵌入式知识点总结,花费了大概一两天时间整理的,现在分享给大家!!!
一、选择题
1.以下哪个不是嵌入式系统的特点?( ) A.面向特定应用 B.高质量高可靠 C.可裁剪性 D.具备二次开发能力 解析:嵌入式系统本身不具备二次开发能力,即设计完成后用户通常不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行再次开发。 2.下列产品中不属于嵌入式系统的是( ) A.无线鼠标 B.数码相机 C.个人笔记本 D.行车记录仪 解析:常见的嵌入式产品:数码相机、手机、PDA、路由器、鼠标、键盘,扫描仪、打印机 3.栈是一种数据结构,对其最常见的操作为“压栈”和“出栈”,其出入规则是( )。 A.可以保护现场 B.先进后出 C. 对其最常见的操作为“压栈”和“出栈” D.只出不进 解析:栈是一种数据结构,对其最常见的操作为“压栈”和“出栈”,其出入规则先进后出。 4.ARM 是基于__架构的___位处理器。 A.CISC,16 B.RISC,32 C.RISC,16 D.CISC,32 解析:ARM 是基于32位,RISC处理器结构。 5.在Ubuntu操作系统中,把一行程序注释掉可以是( )。 A.// B.* C./ D.~ 解析://为注释 6.Vi编辑器,当前处于插入模式,如果想保存退出vi,则( )。 A.使用“:q!”命令 B. 先按ESC键,使用“:wq!”命令 C.使用“:wq!”命令 D.先按ESC键,使用“:q!”命令 解析:先按ESC键,使用“:wq!” 7.Linux下,将/mnt/hgfs/file.c复制到目录/home/nfs下的命令( )。 A.cp file.c /home/nfs B.cp /file.c /home/nfs C.cp /mnt/hgfs/file.c /home/nfs D.cp /home/nfs /file.c /mnt/hgfs/ 解析:cp +当前文件路径 +复制后文件路径 8. 关于进程,描述错误的项是( )。 A.fork()函数执行一次返回一个值 B.使用fork()函数可以生成子进程 C.父进程为子进程“收尸” D.在父子进程可各自执行不同的任务 解析:执行一次返回两个值。 fork调用的一个奇妙之处就是它仅仅被调用一次,却能够返回两次,它可能有三种不同的返回值: (1)在父进程中,fork返回新创建子进程的进程ID; (2)在子进程中,fork返回0; (3)如果出现错误,fork返回一个负值。 9.文件filename的权限是664,文件的用户所有者对其操作权限是( )。 A.rw- B.r-x C.-wx D.–x 解析:421分别代表读(r)写(w)执行(x) 第一个数字代表文件所有者(Owner),用户组(Group),其他用户(other Users) 10.把file.c文件,编译成一个可以在开发板上执行的程序file,其命令是( ) A.gcc file.c B.arm-linux-gcc file.c C.gcc file.c -o file D.arm-linux-gcc file.c -o file 解析:arm-linux-gcc为交叉编辑工具
二、填空题1.嵌入式系统总体上是有硬件和()两大部分组成,其中硬件的核心是()。 答案:软件 微处理器 2.ARM处理器有()和ARM两种工作状态。 答案:Thumb 解析:ARM处理器的两种工作状态: 1、ARM状态:32位,ARM状态执行字对齐的32位ARM指令。 2、Thumb状态,16位,执行半字对齐的16位。 3.ARM 存储器中,数据的高字节存放在低地址,是() 存储方式, 数据的低字节存放在低地址,是() 存储方式。 答案:大端存储 小端存储 解析:大端存储:大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放。 小段存储:小端模式, 是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内在的低地址中,这种存储模式将地址的高低和数据位 权有效结合起来,高地址部分权值高,低地址部分权值低,和我们的逻辑方法一致; 4.为了获得线程本身ID号的函数是()。 答案:pthread_t pthread_self(); 解析:Linux下获取当前线程ID号函数:pthread_t pthread_self(); 返回:当前线程的ID号 5. 将套接字和某个地址绑定是用()函数。 答案:bind(); 解析:int bind(int sockfd, const struct sockaddr *myaddr, socklen_t addrlen); 6. 在Ubuntu中,一般用()命令来检查主机间网络连通情况。 答案:ping命令 7. 网络编程时涉及的传输层协议是()和()。 答案:TCP UDP
三、简答题1.列举国产的嵌入式处理器和国产的操作系统(每个列举3种)。 答案: 处理器:飞腾(ARM)、海思(ARM)、展讯(ARM) 操作系统:统一操作系统(UOS) 深度Linux (Deepin) 优麒麟(UbuntuKylin) 2.写出3种进程间通信的方式。 答案:消队列 信号 套接字( socket ) 管道、消队列、共享内存、信号及信号集等 3.解释写出下列专业术语的含义:(1)ARM (2)CISC (3)SPSR。 答案:ARM:ARM处理器 CISC:复杂指令集计算机 SPSR:程序状态保存寄存器 4.解释ssize_t write (int fd, const void * buf, size_t count);中各参数的含义。 答案:fd:是文件描述符(write所对应的是写,即就是1) buf:通常是一个字符串,需要写入的字符串 count:是每次写入的字节数
四、综合题1.对文件进行打开,写入,读取,关闭等操作 请大家务必掌握open(),close(),write(),read()等函数 2.(1)SIGQUIT ----ctrl+\\ SIGINT------ ctrl+c (2)I have get SIGQUIT I have get SIGINT
多线程编程主要功能要求:创建两个线程,线程1,执行函数func1,打印自己的姓名信 ;线程2,执行函数func2,打印自己的学号信;线程执行完退出。 代码如下:
#include <stdio.h> #include <pthread.h> void *func1(void) { printf("chenfeifan!!!"); } void *func2(void) { printf("201805090213"); } int main() { int i=0,ret=0; pthread_t id1,id2; ret=pthread_create(&id1,NULL,(void*)func1,NULL); if(ret) {printf("Create pthread1 error!\\n");return 1;} ret=pthread_create(&id2,NULL,(void*)func2,NULL); if(ret) {printf("Create pthread2 error!\\n"); return 1;} pthread_join(id1,NULL); pthread_join(id2,NULL); return 0; }运行结果如下:
总结
整理部分内容仅是嵌入式基础内容,如想深入学习建议进行系统学习。 未经本人许可,不得转载!!!
版权声明:本文标题:嵌入式基础知识总结 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686941955a120844.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论