avatar-decorate
不会code的菜鸡 level
获赞
954
粉丝
709
关注
1
看过 TA
2704
北京大学
2024
嵌入式软件开发
IP属地:北京
暂未填写个人简介
私信
关注
1. push_back()左值和右值的区别是什么?2. move底层是怎么实现的?3. 完美转发的原理是什么?4. 空类中有什么函数?5. explicit用在哪里?有什么作用?6. 成员变量初始化的顺序是什么?7. 指针占用的大小是多少?8. 野指针和内存泄漏是什么?如何避免?9. malloc和new的区别是什么?10. 多线程会发生什么问题?线程同步有哪些手段?11. 什么是STL?12. 对比迭代器和指针的区别13. 线程有哪些状态,线程锁有哪些?14. 解释说明一下map和unordered_map15. vector中的push_back()和emplace_back()的区别、以及使用场景16. 如何实现线程安全,除了加锁还有没有其他的方式?17. vector扩容,resize和reserve的区别18. vector扩容为了避免重复扩容做了哪些机制?19. C++中空类的大小是多少?20. weak_ptr是怎么实现的?21. 虚函数的底层原理是什么?22. 一个函数f(int a,int b),其中a和b的地址关系是什么?23. 移动构造和拷贝构造的区别是什么?24. lamda表达式捕获列表捕获的方式有哪些?如果是引用捕获要注意什么?25. 哈希碰撞的处理方法26. unordered_map的扩容过程27. vector如何判断应该扩容?(size和capacity)28. 构造函数是否能声明为虚函数?为什么?什么情况下为错误?29. 类中static函数是否能声明为虚函数?30. 哪些函数不能被声明为虚函数?31. 如何保证类的对象只能被开辟在堆上?(将构造函数声明为私有、单例)32. 讲讲你理解的虚基类33. C++哪些运算符不能被重载?34. 动态链接和静态链接的区别,动态链接的原理是什么?35. C++中怎么编译C语言代码?答案附在面经中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看35道真题和解析
0 点赞 评论 收藏
分享
查看20道真题和解析
0 点赞 评论 收藏
分享
1. Linux系统启动流程是怎么样的(GRUB引导)?加载BIOS–>加载MRB主引导记录–>加载GRUB主引导程序–>加载内核–>内核启动(加载完内核后,GRUB 将控制权转交给内核,开始执行操作系统的启动流程。内核会初始化硬件、文件系统和设备驱动,并执行初始化进程(init)以启动用户空间的系统服务和进程。)2. 嵌入式系统启动流程(Uboot)CPU 启动:当嵌入式设备开机后,CPU 会执行预定义的启动流程。这个流程通常包括初始化 CPU 寄存器、加载引导代码到内存中等。引导设备加载:CPU 会从预定义的启动设备(如闪存、SD 卡、网络等)中加载引导加载器(u-boot)的镜像文件到内存中。这个镜像文件通常是通过 JTAG、串口、网络等方式加载到设备中。u-boot 初始化:加载完 u-boot 镜像后,CPU 将控制权交给 u-boot,u-boot 开始执行。u-boot 会初始化设备硬件、外设、内存等,并设置一些系统参数和环境变量。引导加载:u-boot 会根据预定义的引导顺序(如配置文件中的引导顺序)从指定的启动设备中加载操作系统内核镜像到内存中。这个内核镜像可以是 Linux 内核、Android 内核或其他操作系统内核。内核启动:加载完内核镜像后,u-boot 将控制权传递给操作系统内核,开始执行内核启动流程。内核会初始化硬件、文件系统、设备驱动等,并启动用户空间的初始化进程。uboot引导内核启动主要向内核传递三个参数R0,R1,R2,第一个参数R0,默认为0。第二个参数,R1,CPU ID,告诉内核板载CPU的型号。第三个参数R2,告诉内核映像文件存在什么地方,板子还剩多少内存空间。这些参数的传递都是以tag_list的方式传递的。3. linux系统各个组成Linux系统主要由以下几个组成部分构成:内核(Kernel):Linux内核是操作系统的核心,负责管理硬件资源、提供系统调用接口、调度进程、管理内存等核心功能。Shell:Shell是用户与Linux内核交互的界面,它接收用户输入的命令并将其传递给内核执行。常见的Shell包括Bash、Zsh、Fish等。文件系统(File System):Linux文件系统负责管理计算机存储设备上的文件和目录,常见的文件系统包括Ext4、Btrfs、XFS等。GNU工具集:GNU工具集是一组由GNU计划开发的开源工具,包括文本编辑器(如Emacs)、编译器(如GCC)、调试器(如GDB)等,这些工具提供了丰富的功能,使得Linux系统能够进行各种开发和管理任务。图形用户界面(Graphical User Interface,GUI):GUI是一种通过图形化界面与计算机交互的方式,Linux系统中常见的GUI包括X Window System(X11)和Wayland等。应用程序:Linux系统支持运行各种应用程序,包括办公软件、开发工具、娱乐软件等,用户可以根据需求安装和使用不同的应用程序。4. Linux系统遇到意外崩溃的情况怎么办?发生崩溃时,应该会出现崩溃信息,根据崩溃信息去查找解决问题分析日志文件:日志文件是排查系统崩溃的重要工具,通过分析系统日志文件可以查找系统崩溃的原因;常见的日志文件目录:/var/log/syslog、/var/log/messages、/var/log/kern.log等 查看日志的方法检查硬件问题,可以检查内存、硬盘、cpu等硬件组件是否正常工作,可以通过sudo lshw 查看更新驱动程序和内核排除软件问题:如果系统在特定的应用程序或操作期间死机,尝试确定是否是由于特定的软件问题引起的。在这种情况下,尝试重新安装、更新或卸载相关软件。执行系统维护:定期执行系统维护操作,如清理临时文件、优化磁盘空间、检查文件系统等,以确保系统处于良好状态。Linux系统死机5. Linux驱动基础   驱动程序需要先注册设备和驱动,以进行设备的控制和管理。可以通过Linux内核提供的API如platform_driver_register或misc_register来注册设备和驱动。设备的初始化和资源分配在驱动程序中进行设备的初始化和资源的分配,包括内存分配、IO端口映射、中断注册等。可以使用内核提供的函数如kmalloc、ioremap等进行相应的操作。设备的IO操作和中断处理驱动程序需要实现设备的IO操作和中断处理函数。根据设备的不同接口和功能,可以使用内核提供的IO操作函数如readl、writel等进行读写操作,以及注册和处理中断的函数如request_irq、irq_handler等。设备的释放和注销在驱动程序退出或设备不再使用时,需要进行设备的释放和注销,包括资源的释放、中断的注销等。可以使用内核提供的函数如kfree、iomem_unmap等进行相应的操作。Linux驱动程序的调试方法6. 编译Linux内核流程获取源代码:首先,你需要获取 Linux 内核的源代码。你可以通过官方网站下载稳定版本的源代码,也可以使用版本控制系统如 Git 获取。安装编译工具链:在编译 Linux 内核之前,你需要安装适用于目标架构的编译工具链。这通常包括 GCC 编译器、GNU Make、以及其他必要的开发工具。配置内核:进入 Linux 内核源代码目录,在终端中运行 make menuconfig 命令,这会打开一个配置菜单,你可以在这个菜单中选择内核的编译选项。在这个配置菜单中,你可以配置各种内核功能、设备驱动、文件系统支持等。进行编译:配置完内核后,使用 make 命令进行编译。你可以使用 -j 参数指定并行编译的进程数量,以加快编译速度。例如:make -j4。安装内核:编译完成后,使用 make modules_install install 命令安装内核。这会将编译好的内核文件复制到适当的位置,并更新启动加载程序(如 GRUB)的配置文件。重启系统:完成安装后,重新启动系统并选择新编译的内核启动。以上内容摘自牛客官方专刊《c++/嵌入式面经专栏》,该专刊不仅有真题讲解,还有经验分享,不清楚嵌入式该学什么的同学,想找嵌入式实习/正式工作的同学,都可以来看看:  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看6道真题和解析
0 点赞 评论 收藏
分享
1. 描述C++程序到可执行程序的四个过程。2. 说明面向对象的特性。3. 区分静态多态和动态多态。4. 解释动态多态和静态多态的原理,并比较它们的效率。5. 什么是智能指针?6. `shared_ptr` 是否线程安全?7. 解释深拷贝和浅拷贝的区别。8. 比较 `i++`、`++i` 和 `++(i++)` 的行为。9. 解释右值引用、移动语义以及其底层原理。10. `vector` A 存储在哪里?`A.push_back(1)` 中的 `1` 存储在哪里?11. `vector` 的 `clear` 和 `push_back` 的时间复杂度及其原因。12. STL 容器是否线程安全?为什么?13. 线程和进程的区别。14. 计算线程创建的最大数量的公式。15. 什么是协程?协程是否有创建数量的限制?16. 什么是死锁?17. 每个线程需要 100 把锁,如何避免死锁?18. 解释 `thread_local` 的用法和作用。19. 什么是野指针?如何避免野指针?20. 解释 `new`、`delete` 和 `malloc`、`free` 的区别和常识。21. 虚函数、虚函数表和虚指针的概念是什么?22. 面向对象的基本特征。23. 解释死锁的四个必要条件。24. 区分内联函数和宏定义。25. 动态链接和静态链接的区别。26. 编译过程的各个阶段是什么?27. 如何找到两个无环链表的公共节点?28. 如何在无序的浮点数数组中找到中位数?29. 快速排序的原理及其优化方式。30. 列出三种智能指针及其特点。31. 解释左右值的概念。32. 描述三种特殊构造函数。33. `i++` 和 `++i` 是左值还是右值?34. 什么是完美转发?35. 右值能否取到地址?问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看35道真题和解析
0 点赞 评论 收藏
分享
1. 野指针以及怎么避免2. new、delete和malloc、free的常识3. 虚函数和虚函数表以及虚指针4. 面向对象的特征5. 三个智能指针6. i++和++i以及分别是左值还是右值7. 完美转发8. 右值能否取到地址9. 移动语义10. C语言怎么实现链表11. 驱动下半部分需要做些什么?12. 怎么把gpio注册成中断13. 按键gpio需要把中断配置成什么样的,怎么触发,怎么捕获状态,怎么实现长按14. 应用层不用read怎么拿到驱动层的数据,通知或触发形式15. 信号在驱动层触发应用层可以捕获到吗16. 什么是input子系统,识别到事件之后是怎么给应用层的17. CAN是一个什么信号,详细说说18. IIC通信有几根线?分别是什么19. 差分信号在走线的时候要注意什么20. 编译的过程21. Makefile最终是使用什么把可执行文件编译出来的22. 用什么命令把c文件生成可执行文件23. Makefile添加依赖库怎么操作24. 为什么通过apt-get去下载依赖库,有没有其他方式25. 32位系统一个指针变量占几个字节26. 如何将32位的变量最后一位置127. 程序的启动方式,编译过程28. 单片机内存调度机制29. 任务间的数据交互,怎么实现30. 串级PID详细说说问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. C++11有哪些新特性?2. 函数有哪些常见的传参方式,有何区别?3. 指针和引用有什么区别?4. 指针常量和常量指针有何区别?5. 常见的内存泄漏发生场景有哪些?6. 常见的内存泄漏检测工具有哪些?7. 虚拟内存和物理内存的区别是什么?8. 内存空间有哪些区域?分别是做什么的?9. 段页式内存管理有何优点?10. 说一下智能指针的类型及其区别。11. 内联函数是什么?和宏有何区别?它有什么优缺点?12. 什么是多态的底层原理?13. C++空类的大小是多少?如果空类内含有虚函数,类的大小又是多少?14. 讲讲内存对齐。15. 虚函数可以是模板函数吗?16. 虚函数可以内联吗?17. 32位Linux系统的寻址空间是多大?进程能申请的内存有这么大吗?18. Linux系统中调试崩溃问题的流程是?19. 栈溢出一般是由哪些原因导致?20. static关键字有什么用?static变量修饰全局、函数内和类内变量时,分别在什么时候进行初始化?21. 初始化列表有什么好处?哪些成员变量必须通过初始化列表初始化?22. 什么是右值引用?说一下什么是移动语义及使用场景?23. malloc/free和new/delete有什么区别?24. std::vector和std::list有什么区别?讲一下vector动态扩展的原理。25. Vector动态扩展时,编译器为什么不先判断一下原有空间后面的内存是否空闲?26. std::unordered_map和std::map的区别是什么?它们的底层数据结构是什么?27. priority_queue优先级队列的底层数据结构是什么?操作的时间复杂度是什么?28. 红黑树与AVL树有什么区别?与堆有什么区别?29. 如果让你用一维数组模拟一个大根堆,你怎么实现?30. C++编译过程分为哪几步?动态链接和静态链接的区别是?问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. 解释一下C++中的多态性。2. 什么是模板?它有什么用?3. 你能描述一下类型擦除吗?4. 命名空间的嵌套有什么好处?5. 析构函数可以重载吗?6. volatile和const的区别是什么?7. 虚继承的概念是什么?8. 异常安全性有哪些级别?9. 描述析构函数的调用顺序。10. std::vector是如何实现的?11. 如何实现单例模式?12. nullptr的作用是什么?13. std::list的优缺点是什么?14. std::unordered_map的实现原理是什么?15. 函数重载和运算符重载有什么不同?16. std::deque的特性是什么?17. 如何处理内存泄漏?18. 如何实现自定义异常类?19. std::shared_ptr的自定义删除器是什么?20. std::move的具体作用是什么?21. std::bind的用途是什么?22. std::optional的使用场景是什么?23. std::variant的特点是什么?24. 如何解决std::shared_ptr的循环引用?25. 如何实现自定义内存分配器?26. std::mutex的作用是什么?27. 条件变量的工作原理是什么?28. 如何实现观察者模式?29. std::string的移动构造函数有什么作用?30. static_cast和dynamic_cast的区别是什么?问题答案已经整理到专栏中了,关注我分享更多知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. 进程和线程有什么区别?2. 循环控制条件关键字goto被经常使用,但是goto的使用场合为什么受到局限?3. 字节对齐的理解,什么是字节对齐?4. 堆与栈的区别?5. 关键字const有什么含义?6. 已知一个数组table,用一个宏定义,求出数据的元素个数。7. 递归函数定义没有问题,递归深层次后易引发什么问题?8. TCP与UDP有啥区别?9. 内存泄漏和内存溢出是什么?10. 静态全局变量与普通的全局变量有什么区别?static函数与普通函数有什么区别?11. 进程之间通信的途径有哪些?12. 循环控制条件关键字goto的使用场景有哪些?13. I2C最多可以挂多少个设备?14. volatile关键字的作用?15. 字节对齐的两种方式。16. 关键字static的作用是什么?17. 局部变量和全局变量可以重名吗?18. 内存布局中有哪些段?19. do……while和while有什么区别?20. 一个32位的机器,该机器的指针是多少位?21. const关键字使用有哪些?22. malloc()与calloc分配空间有什么不一样?23. 程序的局部变量存在于哪里,全局变量存在于哪里,动态申请数据存在于哪里。24. 死锁的处理方式有哪些?25. 死锁的4个必要条件。26. 引用与指针有什么区别?27. 循环控制条件关键字goto的使用场景有哪些?28. 实现循环的方式?29. sizeOf()与strlen()的区别?30. 预处理的作用是什么?31. 编译器的作用?32. 无限循环如何用C编写死循环?33. 堆和栈。34. static全局变量与普通的全局变量有什么区别?static函数与普通函数有什么区别?35. 产生死锁的原因是什么?36. 线程是否具有相同的堆栈?37. 循环控制条件关键字goto被经常使用,但是goto的使用场合为什么受到局限?38. 关键字const有什么含义?39. 预编译,何时需要预编译?40. 内存泄漏和内存溢出是什么?更多题目可以参考专栏  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看40道真题和解析
0 点赞 评论 收藏
分享
1. C++中的智能指针(如std::shared_ptr和std::unique_ptr)有什么区别?2. 解释一下C++中的RAII(资源获取即初始化)原则。3. C++中的friend关键字有什么作用?它如何影响封装性?4. 什么是C++中的Lambda表达式?它的应用场景有哪些?5. C++中的构造函数和析构函数有什么区别?6. 什么是C++中的“移动语义”?它如何提高性能?7. C++中的std::function和函数指针有什么区别?8. 解释一下C++中的“深拷贝”和“浅拷贝”。9. C++中的static关键字有什么作用?在类中如何使用?10. 什么是C++中的“虚函数表”(vtable)?11. C++中的std::shared_ptr的引用计数机制是怎样的?12. 如何在C++中实现一个简单的策略模式?13. C++中的std::array的优缺点是什么?14. 解释一下C++中的“异常处理机制”。15. C++中的模板特化(template specialization)是什么?如何使用?16. 什么是C++中的“命名空间”?它的作用是什么?17. C++中的std::map是如何实现的?18. 如何在C++中实现多重继承?有何注意事项?19. C++中的const关键字有什么作用?如何使用?20. 解释一下C++中的“拷贝构造函数”和“赋值运算符”。21. C++中的std::string的实现原理是什么?22. 什么是C++中的“类型推导”?23. C++中的volatile关键字有什么作用?24. 如何在C++中实现一个简单的状态模式?25. 解释一下C++中的“智能指针的循环引用”问题。26. C++中的std::atomic是什么?它的使用场景有哪些?27. 什么是C++中的“内联函数”?它的优缺点是什么?28. C++中的std::thread如何创建和管理线程?29. 解释一下C++中的“构造函数委托”。30. C++中的std::string_view是什么?它的使用场景有哪些?答案附在面经中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. C++中的内存管理策略有哪些?2. 什么是C++中的虚继承?它的作用是什么?3. C++中的模板元编程是什么?有什么应用场景?4. 解释一下C++中的std::array和C-style数组的区别。5. C++中的异常安全保证分为哪几种?6. 什么是C++中的“拷贝与交换”惯用法?7. 如何在C++中实现一个线程安全的单例模式?8. C++中的std::mutex和std::lock_guard的作用是什么?9. 什么是C++中的条件变量(condition_variable)?如何使用?10. C++中的std::unordered_map和std::map的区别是什么?11. 解释一下C++中的类型萃取(type traits)。12. C++中如何实现一个自定义的异常类?13. 什么是C++中的“类型擦除”?14. C++中的std::unique_lock和std::shared_lock的区别是什么?15. 如何在C++中实现一个简单的观察者模式?16. C++中的std::promise和std::future的作用是什么?17. 什么是C++中的“多态容器”?18. C++中的constexpr关键字有什么作用?19. 解释一下C++中的std::optional。20. 什么是C++中的“未定义行为”?举例说明。21. C++中的std::variant是什么?它的使用场景有哪些?22. 如何在C++中实现自定义的内存分配器?23. C++中的std::string和C-style字符串的区别是什么?24. 什么是C++中的“命名空间污染”?如何避免?25. C++中的std::queue和std::stack有什么区别?26. 解释一下C++中的“范围for循环”。27. C++中的std::deque和std::vector的区别是什么?28. 如何在C++中实现一个简单的工厂模式?29. C++中的std::list的实现原理是什么?30. 什么是C++中的“可变参数模板”?如何使用?答案附在面经中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. C++中的构造函数和析构函数有什么区别?2. 什么是RAII(资源获取即初始化)?3. 在C++中,什么是多重继承?它有什么优缺点?4. 描述内存泄漏的原因及如何避免?5. 什么是深拷贝和浅拷贝?6. 在C语言中,如何实现动态数组?7. C++中的虚函数表是如何工作的?8. 描述一下链表与数组的优缺点。9. 解释一下什么是死锁及其产生的原因。10. 什么是线程安全?如何确保代码是线程安全的?11. 描述一下TCP和UDP的主要区别。12. 什么是内存对齐,为什么要进行内存对齐?13. C++中的模板是什么?它有什么优势?14. 解释一下什么是信号处理?15. 在嵌入式系统中,如何实现定时器?16. 什么是中断优先级?如何设置?17. 描述一下如何进行单元测试。18. 什么是状态机?在嵌入式系统中如何实现?19. C语言中的指针算术运算是什么?20. 解释一下什么是回调函数。21. 描述一下FIFO和LIFO的区别。22. 什么是对象池?它的作用是什么?23. 在C++中,什么是智能指针?它的优点是什么?24. 描述一下如何进行进程间同步。25. 什么是内存映射文件?26. 在C中,如何处理可变参数的函数?27. 解释一下什么是模板元编程。28. 描述一下如何实现一个简单的哈希表。29. C++中的访问控制修饰符有哪些?30. 什么是数据竞争?如何避免它?面经答案在专栏中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
阴差阳错,投的岗位JD写的和面试的部门工作完全不相符,打算明年秋招做个单独JD。阿里云某底层部门吧,估计招的人也比较少。一面自我介绍,问些专业问题(全都不会,基本都是芯片底层的)发现我基本做应用,不了解底层,就没问了。手撕代码:单链表逆序,N叉树最大层数,64位整数第一个1的位置(位运算写出来,最多需要64次,怎么更快,写不出)反问,聊天,做固件的,给了很多嵌入式职业建议,不要太业务,底层一些。看得出阿里面试官还是牛,一看就是技术大佬。二面本来以为一面时一问三不知要挂了,结果20天后突然接到电话二面的,邮件通知都没有,全程电话面了一小时。主要还是判断学习能力吧,详细自我介绍,做过的项目,学过的课程,这些年的经历。问些基础问题,static作用,Linux内核(不会,没了解),双向链表插入节点怎么做,队列和栈的区别,数组和指针能不能实现队列栈。介绍下部门业务,需要学习什么。最后欢迎我来,问几个offer,如果有很合适的会去吗,职业规划。HR面居然没有三面,直接HR了,HR也说是最后一面。自我介绍,表示最后一轮面试了,问下大三的项目申请,,遇到什么困难,怎么克服;自己优点和缺点;就业选择,为什么不读博。本来还有点开心居然有可能阿里,然后就没有然后了。国庆后打电话问,说是暂时开不出HC,估计排序挂了。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看4道真题和解析
0 点赞 评论 收藏
分享
1. 操作系统的主要功能有哪些?2. 什么是中断?中断的类型有哪些?3. 什么是死锁?死锁的必要条件是什么?4. 如何检测和解决死锁?5. 什么是文件系统?其主要功能是什么?6. 文件的存储方式有哪些?7. 什么是设备驱动程序?8. 操作系统是如何管理文件的?9. 什么是系统调用?10. 什么是内存分配?常见的内存分配策略有哪些?11. 什么是地址空间?12. 什么是物理地址和逻辑地址?13. 解释什么是分页和分段?14. 什么是线程安全?15. 什么是临界区?如何保护临界区?16. 什么是调度优先级?17. 什么是时间片轮转调度算法?18. 什么是实时操作系统?与普通操作系统的区别是什么?19. 什么是负载均衡?在操作系统中如何实现?20. 什么是虚拟化技术?21. 什么是容器化?与虚拟化的区别是什么?22. 什么是 LRU(最近最少使用)算法?23. 什么是 I/O 调度?24. 什么是内存泄漏?如何检测和解决?25. 什么是多级反馈队列调度算法?26. 操作系统如何处理异常和错误?27. 什么是系统性能监控?28. 什么是网络协议栈?其层次结构是什么?29. 什么是进程优先级反转?如何解决?30. 解释操作系统中“先来先服务”调度算法的优缺点。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看30道真题和解析
0 点赞 评论 收藏
分享
1. 嵌入式系统的主要组成部分有哪些?2. 描述中断的工作原理。3. 什么是实时操作系统(RTOS)?4. 描述任务调度的不同策略(如抢占式和非抢占式)。5. 什么是死锁,如何避免死锁?6. 描述嵌入式系统的开发流程。7. 什么是嵌入式操作系统?列举几个常见的嵌入式操作系统。8. 什么是看门狗定时器(Watchdog Timer)?9. 描述如何进行嵌入式系统的调试。10. 什么是I2C通信协议?其特点是什么?11. 描述SPI通信协议的工作原理。12. 如何在嵌入式系统中实现低功耗设计?13. 什么是GPIO?如何配置GPIO?14. 描述ADC和DAC的工作原理。15. 什么是PWM?其应用场景有哪些?16. 描述UART的基本工作原理。17. 什么是RTOS中的消息队列?18. 描述FreeRTOS中的任务优先级。19. 什么是内存映射(Memory Mapping)?20. 描述嵌入式系统中的电源管理技术。21. 什么是Bootloader的作用?22. 描述如何实现任务间的同步。23. 什么是嵌入式系统中的外设驱动程序?24. 描述如何使用DMA进行数据传输。25. 什么是Flash存储器?其特点是什么?26. 如何进行固件升级?27. 描述嵌入式系统中常见的调试工具。28. 什么是RTOS中的信号量?29. 描述嵌入式系统中的错误处理机制。30. 什么是资源共享?如何在多线程中实现?31. 描述嵌入式系统的安全性问题。32. 如何进行嵌入式系统的性能优化?33. 什么是嵌入式Linux?其特点是什么?34. 描述如何进行嵌入式系统的测试。35. 什么是物联网(IoT)?嵌入式系统在物联网中的作用是什么?相关面经可以参考大佬的面经链接  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
查看35道真题和解析
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务