苏嵌//季宇晨//7.12

 

 

 

 

今日学习任务

 

1、辅导老师完成学习内容答疑

2、3小时完成c语言摸底测试

日任务完成情况

 

(详细说明本日任务是否按计划完成,开发的代码量)

1、完成了答疑的31条题目

2、将四个c语言编程题,编写完成

日开发中出现的问题汇总

 

 

 

1、在做答疑题目的时候,发现有一些小的知识点并没有记得很清楚,很多知识还需要加强巩固

2、下午的编程题花的时间比较久,有的函数的使用还不是很熟练

 

日未解决问题

 

日开发收获

 

将前几天学的知识进行了巩固

 

自我评

 

(是否按开发规范完成既定任务,需要改进的地方,与他人合作效果等)

 

 

 

还需加强对c语言的了解,基础打得不够扎实

其他

 

 Linux 具篇问题整理 老梁

1、 嵌入式开发与传统开发的区别?(同类问题:单片机开发与嵌入式开发的区别)

答:是否有无操作系统

2、 移植操作系统的好处有哪些?

答:提供了多任务机制、提供网络协议栈、提供了开元软件和工具

3、 嵌入式工程师的岗位划分有哪些?所具备的能力是什么?

答:应用软件和系统软件;应用软件所具备的技能:精通一门语言、熟悉一款操作系统;系统软件所具备的技能:精通c语言、熟悉汇编、理解操作系统的实现、熟悉硬件的工作原理

4、 人工智能和嵌入式之间有什么关系?人工智能和大数据、云计算的关系?

答:人工智能是指机器具备人的思维到机器学习再到深度学习;大数据和云计算主要是在机器学习这一过程,大数据的作用主要是:筛选数据,分析数据;云计算的作用就是处理

5、 CPU、GPU、DPU、TPU 分别是什么?

答:CPU:中央处理器;GPU:图形处理器;DPU:分段处理单元;TPU:高性能处理器

6、 嵌入式操作系统有哪些?vxwork 的特点?ucossii 的特点?

答:VxworkucossiiRedhatvxwork它既是一个操作系统,又是一个可以运行的最基本的小程序、可以提供可移植的工具、不开放源码;ucossii具有很好的开元性和可移植性

7、 什么是实时性?哪些操作系统具有实时性?

答:在规定的时间内完成规定的动作;VxworksLinux

8、 嵌入式的就业前景和以后的发展方向如何?

答:就业前景良好;例如Linux就应用于很多方面,我们现在很多软件都是用的Linux内核,并且军工,航空航天,网络等都需要

有很多热门的领域都需要这方面的人才,例如人工智能智能产品开发等都需要

9、 Linux 操作系统有哪些特点?

答:开放性、多用户、出色的速度技能、良好的用户界面、提供了丰富的网络功能、良好的可移植性、具有标准的兼容性

10、 Linux 和 unix 操作系统的区别?

答:Linux是开元代码的自由软件,Unix是对源代码不公开,并且进行保护的一个商业软件

11、 虚拟机的作用是什么?主流的虚拟机有哪些?

答:在本地pc机上建立一个或多个虚拟的计算机,来进行工作;VMwareVPC

12、 分别阐述 POSIX、GNU、GPL 的理解?

答:POSIX表示可移植操作系统接口,他是一个针对操作系统的标准化协议

GNU:全称是GNU is not unix,是一个完全自由的操作系统

GPL:是GNU的通用公开许可证

13、 Linux 发行版有哪些?各自的特点是什么?

答:RedhatCentOSRedhat适用人群数量大、资料非常多;CentOS是稳定性非常好

14、 Linux 和windows 的区别?

答:Linux是一个多用户、多任务网络操作系统;windows是直观、高效的面向对象的图形用户界面

 

15、 Linux 文件类型有哪些?

答:普通文件、目标文件、设备文件、链接文件;特殊文件又分为:管道文件、共享文件、堆栈文件

16、 罗列 Linux 下文件操作的命令有哪些?(常见面试命令)

答:创建文件:touch;查看文件内容:cat;删除文件:rm -fchmod是修改权限的;执行文件:gcc hello.c    ./a.out;复制文件:cp;存放设备文件:dev;存放配置:etc;剪切文件和重命名文件:mv

17、 如何配置 vim 编辑器?Linux 下还有哪些比较常用的文本编辑器?

答:用vi编辑器创建源程序文件,进vi编辑器后输入i进入文本编辑模式;编写代码; 用“:wq”保存文件并退出vi;用gcc编译连接;运行;

常用的文本编辑器:gedit

18、如何压缩、解压文件?命令是什么?

答:压缩文件:tar  cvzf hello.tar.gz hello.c;解压文件:tar xvzf hello.tar.gz;如果要解压到哪个具体的路径下:tar xvzf hello.tar.gz -c kk

18、 gcc 编译器的优点有哪些?还知道哪些 C 的编译器?

答:适合于开源软件,跨体系结构很多;Clang

19、 什么是交叉编译器?交叉编译器的作用?为什么需要交叉编译?

答:在一个平台上编译出来,再另一个平台上运行的软件代码;

能够实现在一个平台上编译出来,再另一个平台上运行的软件代码;

因为不同的cpu有不同的汇编,不同的汇编有不同的机器码;

20、 C 语言中源文件到可执行文件经历哪几个步骤?每个步骤具体做哪些工作?

答:预处理、编译、汇编、链接;

预处理做的工作:头文件展开、宏替换、条件编译;编译做的工作:语法分析、词法分析;汇编阶段做的工作:把编译阶段生成的”.s”文件转成二进制目标代码. 选项 -c,将.s输出为.o文件;链接阶段做的工作:讲.o 文件链接成最终可执行文件

21、 #include <stdio.h>    #include stdio.h的区别?

答:他们两最主要的区别是改变搜索路径;<>的头文件目录是在系统的头文件目录搜索;””是在当前的目录搜索,如果找不到,再到系统的目录下去找;

22、 分别阐述-I -w -Wall -O3  的作用?

答:-I是指定头文件的第三方搜索路径;-w是消除警告;-wall是显示所有警告;-O3是进行3级优化

23、 什么是库文件?库文件的特点?

答:用来保存函数或者变量,只能使用函数或者变量,但是看不到具体实现;

24、 Linux 下库文件的分类有哪些?库文件的存放路径是什么?

答:动态链接库、静态链接库;动态链接库以.so结尾;静态链接库以.a结尾

25、 静态库和动态库的区别?

答:静态库:是在执行程序之前就已经加入到执行代码中,成为执行程序的一部分来执行;并且他升级难、可执行文件过大、执行速度快、易于代码部署

动态库:是在执行启动时加入到执行到执行代码中;并且他易于升级、执行速度慢、不易于代码部署

26、 如何制作和使用静态库和动态库?

答:创建静态库;gcc -c 源文件.c,然后ar rcs libadd.a add.o,(add 是库的名字),再然后gcc main.c -ladd -L-l是指定哪个库,-L是指定到哪个地方找这个库)

创建动态库:gcc -shared -fPIC -o 库名.so 源文件.c,然后使用gcc  源文件.c  ./库名.so  -o  可执行文件名

27、 GDB 的特点有哪些?

答:gdbGNU发布的一款功能强大的程序调试软件

能够启动被调试程序,让被调试程序在指定的位置停住,当程序被停住时,可以检查程序状态一变量值

 

 

 

28、 阐述 run break info break continue finish 用?

            答:run:运行;break:指定在哪一行停住;info break:查断点编号;continue:是指跳过第一断点,如果有两个断点,那他进入第二个断点;finish:如果断点在子函数中,是让子函数运行结束

29、 make 工程管理的作用?

答:一键编译

30、 makefile 的语法是什么?(定义、执行顺序)

答:他的三要素是:目标体、依赖体、命令;执行顺序是从第一行开始执行;并且在写命令的时候必须先按Tab键;执行一个命令最终会生成目标体。

31、 企业级工程目录是如何创建?分别描述三个不同 makefile 的作用?

答:利用tree这个命令,让所有的目录以树状型显示;

3makefile1、总控的Makefile:将各个子目录下的.o链接生成可执行文件

2、子目录下的makefile:将目录下的.c文件编译成.o文件

3、Scripts目录下的Makefile:相当于c语言中的头文件,定义了一些变量

 

 

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值