嵌入式linux 面试题

article/2025/9/20 3:40:54

嵌入式linux开机启动流程

上电–>固化boot–>uboot–>kernel–>file system–>app

uboot一般不使用mmu

uboot cmdline–>kernel

新版本kernel 设备树,代替platform文件

linux特殊进程

idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2)

  • idle进程由系统自动创建, 运行在内核态

idle进程其pid=0,其前身是系统创建的第一个进程,也是唯一一个没有通过fork或者kernel_thread产生的进程。完成加载系统后,演变为进程调度、交换

  • init进程由idle通过kernel_thread创建,在内核空间完成初始化后, 加载init程序, 并最终用户空间

由0进程创建,完成系统的初始化. 是系统中所有其它用户进程的祖先进程
Linux中的所有进程都是由init进程创建并运行的。首先Linux内核启动,然后在用户空间中启动init进程,再启动其他系统进程。在系统启动完成完成后,init将变为守护进程监视系统其他进程。

  • kthreadd进程由idle通过kernel_thread创建,并始终运行在内核空间, 负责所有内核线程的调度和管理

它的任务就是管理和调度其他内核线程kernel_thread, 会循环执行一个kthread的函数,该函数的作用就是运行kthread_create_list全局链表中维护的kthread, 当我们调用kernel_thread创建的内核线程会被加入到此链表中,因此所有的内核线程都是直接或者间接的以kthreadd为父进程

UART、I2C、SPI的优缺点和区别

协议UARTI2CSPI
硬件连接RX、TX、GNDVCC、GND、SCL、SDACS、CLK、MOSI、MISO
异/同步异步同步同步
全/半双工全双工半双工全双工
主从靠软件事先约定主从地址片选

CAN总线是一个广播类型的总线,采用硬件仲裁。

kernel申请内存

kmalloc():地址连续的小内存

kzalloc():同kmalloc 申请内存后清零

vmalloc():地址不连续

更大块内存:通过设置 kernel cmdline mem参数,保留系统内存,这部分内存用kernel接口申请不到。

  • ​ 在应用层 操作mem设备进行这块访问 mmap

  • ​ 在kernel层 ioremap

linux进程通信方式

共享内存、管道、消息队列、socket

欢迎关注微信公众号:LinuxRos

在这里插入图片描述

长期分享程序猿技术(linux shell脚本、应用、驱动、c、c++、机器人ROS、python、算法……)

http://chatgpt.dhexx.cn/article/1BeadJJL.shtml

相关文章

Linux面试题总结(一)

Linux基本面试问题 1. 什么是Linux: Linux是基于Linux内核的操作系统。它是一个开源操作系统,可以在不同的硬件平台上运行。它为用户提供了免费的低成本操作系统。这是一个用户友好的环境,他们可以在其中轻松修改和创建源代码的变体。 2. 谁发明Linux?…

【2022最新Java面试宝典】—— Linux面试题(50道含答案)

目录 一、Linux 概述1. 什么是Linux2. Windows和Linux的区别3. Unix和Linux有什么区别?4. 什么是 Linux 内核?5. Linux的基本组件是什么?6. Linux 的体系结构7. BASH和DOS之间的基本区别是什么?8. Linux 开机启动过程?…

Linux面试题附答案

Linux Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯本纳第克特托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多C…

Linux面试题总结(2022最新版)

关于作者 🐶 程序猿周周 ⌨️ 短视频小厂BUG攻城狮 🤺 如果文章对你有帮助,记得关注、点赞、收藏,一键三连哦,你的支持将成为我最大的动力 本文是《后端面试小册子》系列的第 5️⃣ 篇文章,该系列将整理和梳…

Linux 面试最常问的十个问题

如果你要去面试一个Linux系统运维工程师的职位,下面这十个最常见的问题一定要会,否则你的面试可能就危险了。这些都是比较基本的问题,大家要理解,不能光死记硬背。 1、如何查看系统内核的版本 这里有两种方法: 1&…

Linux面试题

常用命令 艿艿:这一小节会非常非常非常长,当做温故知新吧。 另外,面试官也可能会问,你熟悉 Linux 么?你平时使用哪些 Linux 命令。酱紫的连环炮~ 当然,建议重点看下 「性能相关」 小节。 目录相关 find 命…

Linux面试题(总结最全面的面试题!!!)

文章目录 Linux 概述什么是LinuxWindows和Linux的区别Unix和Linux有什么区别什么是 Linux 内核Linux的基本组件是什么Linux 的体系结构BASH和DOS之间的基本区别是什么Linux 开机启动过程Linux系统缺省的运行级别Linux 使用的进程间通信方式Linux 有哪些系统日志文件Linux系统安…

史上最全Linux面试题(2020最新版)

出处:https://blog.csdn.net/thinkwon/article/details/104588679 作者:ThinkWon 导读:本文整理了最新的Linux面试题,近3万字,约100道题,分享至此,希望对大家有帮助。 一、Linux 概述 1. 什么是…

48 个 Linux 面试问题和答案

你在准备 Linux 面试吗?我们准备了一些常见的 Linux 面试问题及其答案。 如果您是初学者(具有一定的 Linux 知识或获得认证)或具有专业的 Linux 管理经验,那么下面的问答有助于您准备面试。 1.什么是Linux及基本组件&#xff1f…

Linux面试必备20个常用命令

文章目录 第一章 什么是linux第二章 linux的基础命令1.pwd 命令2.ls 命令3.cd 命令4.man 命令5.grep 命令6.find 命令7.chmod 命令8.ps 命令9.kill 命令10.tail 命令11.netstat 命令8.date 查看当前系统时间10.echo 打印 选项 -e11.ping 地址 检测是否与主机连通 第三章 文件操…

python 取余运算

python中取余运算逻辑如下&#xff1a; 如果a 与d 是整数&#xff0c;d 非零&#xff0c;那么余数 r 满足这样的关系&#xff1a; a qd r , q 为整数&#xff0c;且0 ≤ |r| < |d|。 经过测试可发现&#xff0c;python3.6中取余运算得到的 r 是正整数&#xff1b; 转载于:…

python的取整和取余_python实现取余操作的简单实例

python实现取余操作的方法&#xff1a; 可以利用求模运算符&#xff08;%&#xff09;来实现。求模运算符可以将两个数相除得到其余数。我们还可以使用divmod()函数来实现取余操作&#xff0c;具体方法如&#xff1a;【divmod(10,3)】。 在python中要实现取余操作可以使用求模…

python中如何取余_python如何实现取余操作的方法

python如何实现取余操作的方法 发布时间&#xff1a;2020-08-17 09:36:53 来源&#xff1a;亿速云 阅读&#xff1a;68 作者&#xff1a;小新 这篇文章主要介绍python如何实现取余操作的方法&#xff0c;文中介绍的非常详细&#xff0c;具有一定的参考价值&#xff0c;感兴趣的…

chatgpt赋能python:Python取余mod的介绍

#Python取余mod的介绍 Python是一种高级编程语言&#xff0c;可以进行各种计算和数据处理。其中一个很重要的功能是取余操作mod。当我们想要计算余数或者判断某个数是否能被另一个数整除时&#xff0c;就需要使用mod。本文将介绍Python中mod的用法和注意事项。 ##Python中mod…

Python取余/求余(%)问题,负数求余最简单的解释

Python求余中会犯的错误思想如下&#xff1a; 一.忘记求商结果是负数时要向下取整&#xff0c;比如-2.25等于-3。 二.是把负数求余运算和正数求余运算混为一谈 正数求余运算比如9%41&#xff0c;思路可以想成9里面有两个4&#xff0c;还剩一个1&#xff0c;所以余数为1&#xf…

python中的取余运算符是_python取余运算

广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python中对负数求余的计算方法和求幂运算注意点python中对负数求余的计算方法1. 整除运算(除法计算出结果后,向下取整)使用整除运算用 1 203 2110 3310 -3-4103 …

python的取整和取余_python取余取整

广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 取余的公式:余数=除数-被除数*商python的的余数是按照整除(向下取整)得到的商来计算的。 取余问题主要分为 :正数与正数,负数与负数,正数与负数 ,0正数与…

chatgpt赋能python:Python取余运算详解

Python取余运算详解 在Python中&#xff0c;取余运算是一种非常常见的运算方式&#xff0c;尤其是在各种算法题目中。本篇文章将为大家介绍Python中取余运算的使用方法和相关细节。 取余运算符 在Python中&#xff0c;取余运算使用符号%表示&#xff0c;例如x % y表示x除以y…

kotlin学习

140-手写事件变换操作符之Rx操作符总结(Derry老师)_哔哩哔哩_bilibili 视频链接:导学_哔哩哔哩_bilibili 一、环境搭建 1、工具安装与环境配置 官网地址: Download Android Studio & App Tools - Android Developers 安装步骤就不一一介绍了 新建过程如下(新建一个多…

转载自张俊林的博客,人工智能

张俊林 转载自张俊林博客&#xff0c;非常感谢博主 &#xff08;本文2016年发表于《程序员》杂志&#xff09; 随着深度学习技术的快速进展&#xff0c;人工智能时代的序幕已经揭起&#xff0c;目前深度学习在图像处理方面的能力已经接近人&#xff0c;甚至在某些方面已经超过…