嵌入式笔试刷题(第56天)
11. extern "C"
的作用?
在 C++ 中使用 extern "C"
可以告诉编译器按照 C 的方式编译声明的函数。主要作用有:
- 禁止 C++ 的名字修饰(Name Mangling);
- 便于 C++ 调用 C 函数,或 C 调用 C++ 提供的函数(通常用于头文件中);
示例:
extern "C" void my_c_function();
12. Linux 下 /etc/inittab
、/etc/fstab
、/etc/rcS
的作用:
/etc/inittab
:配置系统初始化和运行级别(init 启动脚本);/etc/fstab
:文件系统自动挂载表;/etc/rcS
:启动时运行的初始化脚本路径之一(通常在/etc/init.d/rcS
被调用)。
13. 简述嵌入式 Linux 启动步骤:
- 加电后 CPU 从固定地址启动;
- 启动 Bootloader(如 U-Boot);
- Bootloader 初始化硬件,加载 Linux Kernel;
- 内核启动后挂载根文件系统;
- 执行
/sbin/init
启动进程; - 根据
/etc/inittab
启动系统服务或 Shell。
14. fork()
与 vfork()
的作用及区别:
fork()
:创建子进程,父子进程地址空间独立;vfork()
:创建子进程,子进程共享父进程地址空间,适合在子进程立即调用exec
时使用。
区别:
地址空间 |
拷贝 |
共享 |
效率 |
相对较低 |
更高(无拷贝) |
使用限制 |
无 |
子进程不能返回或修改变量 |
15.
、、 的区别:
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式笔试专栏 文章被收录于专栏
本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。