• 2024-11-07【Linux内核设计思想】三、Linux内核的启动过程
    欢迎关注博主Mindtechnist或加入【智能科技社区】一起学习和分享Linux、C、C++、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关注公粽号《机器和智能》回复关键词“python项目实战
  • 2024-07-15内存管理-19-vmlinux.lds.S分析
    基于msm-5.4一、简介链接器主要任务是将符号引用解析到符号定义上,将多个目标文件(.o)和库文件合并成为一个可执行文件或者动态链接库,生成符号表,并对程序代码做最后的检查和优化。这个链接脚本在Linux内核里就是vmlinux.lds.S文件。vmlinux.lds.S编译后会在out/target目录
  • 2024-05-30Linux顶层 Makefile 详解
    makefile分析:分析linuxmakefile文件时候我们需要在vscode下设置屏蔽下不用的文件夹。具体来说可以先建立一个.vscode文件夹和setting.json。具体内容为:{"search.exclude":{"**/node_modules":true,"**/bower_components":true,"**/*.o":true,"**/*
  • 2024-05-21Linux基础——为什么Crash无法正常解析vmcore文件?
    一、宕机主机启动项中/boot/vmlinuz与debug工具生成的vmlinux的md5值是否一致?####3、通过buildID检查安装的debug和内核是否匹配:```#eu-readelf-n/boot/vmlinuz-3.10.0-1160.88.1.el7.x86_64Notesection[2]'.notes'of380bytesatoffset0x9cd284:OwnerDatas
  • 2024-05-16linux内核Makefile和busybox编译
    刚开始学习Linux时的一些记录linux内核配置体验在arch/arm/configs/目录下面找到相似的配置文件,其名称一般为xxx_defconfigmakexxx_defconfigmakemenuconfig配置你的内核,配置完成后生成.config文件在TOPDIR,该文件由于是以‘.’开头,故在linux下是一个隐藏的文件。生成
  • 2024-04-15操作系统是否支持ebpf特性检查
    内核版本信息uname-a操作系统信息cat/etc/os-release查看是否支持kprobe事件zcat/proc/config.gz|grepCONFIG_KPROBE_EVENTSorcat/boot/config-$(uname-r)|grepCONFIG_KPROBE_EVENTS查看是否配置为CONFIG_KPROBE_EVENTS=y查看是否支持uprobe事件zcat/proc/
  • 2024-03-19操作系统实践之路——五、初始化(2.Linux初始化)
    文章目录一、全局流程二、从BIOS到GRUB三、GRUB是如何启动的四、详解vmlinuz文件结构五、流程梳理-1六、内核初始化从_start开始七、流程梳理-2参考资料前言​本章节将讨论一下Linux如何去做初始化。一、全局流程​在机器加电后,BIOS会进行自检,然后由BIOS加载
  • 2024-01-29linux内核-2.Linux 内核makefile编译过程
    1zImage编译_all是默认目标,如果使用命令make或者makeall编译Linux的话此目标就会被匹配。KBUILD_EXTMOD为空的,因此194行的代码成立,因此_all依赖all。all又依赖vmlinux,开始编译vmlinux。makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-distcleanmakeARCH=armCR
  • 2023-02-09进阶技术:Linux Arm32是如何调用C Main的
    前言:Linuxx64通过qemu的rdinit方式调用的CMain,实际上是通过load_elf_binary(加载和解析elf)和start_thread(设置Ip和sp),用缺页异常来调用。那么Arm32里面是如何调用CMa
  • 2022-12-30操作系统实战45讲00016
    你好,我是LMOS。在前面的课程中,我们建好了二级引导器,启动了我们的Cosmos,并进行了我们Cosmos的Hal层初始化。我会用两节课带你领会Linux怎样做初始化。虽然我们自己具体实
  • 2022-12-20Kernel Build System
    #GObjectWhatisGlib?glib库是Linux平台下最常用的C语言函数库,它具有很好的可移植性和实用性。glib的各种实用程序具有一致的接口。它的编码风格是半面向对象,标识符加
  • 2022-10-24kernel——Kbuild
    0.kbuild的组成0.1构成文件顶层Makefile.configarch/$(ARCH)/Makefile各个目录下的Makefilescripts/Makefile.*0.2预定义的目标和变量obj-mobj-yxxx-objszIm
  • 2022-09-01【转载】linux之vmlinux、vmlinuz、System.map和/proc/kallsyms简介
    原文:linux之vmlinux、vmlinuz、System.map和/proc/kallsyms简介_小立爱学习的博客-CSDN博客_vmlinux文章目录前言一、vmlinux与vmlinuz1.1vmlinux1.2vmlinuz1.