![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux内核
内核笔记
rjszcb
不断学习变成牛
展开
-
linux制作 ext4镜像image 脚本demo
将需要打包进镜像的文件丢进target的对应文件下,先生成ext4文件进行,然后挂载,cp拷贝到镜像包,最后卸载,这样就做出了一个镜像包,然后将文件替换,和md5 hash值,文件大小替换烧录文件里。记录烧录起始地址,结束地址,md5等等。readme 使用方法。原创 2023-11-21 17:05:05 · 272 阅读 · 0 评论 -
linux内核,fs,app ,debug调试手段
追加打印消息到控制台。原创 2023-11-02 15:26:42 · 215 阅读 · 0 评论 -
linux systemd start stop enable disable命令区别
当我们不需要开机启动时,可以删除掉这两个文件,或者任何条件都不让开机启动,就不让登入ssh,可以将两个文件指向空,屏蔽它,这样就没有办法使用systemctl enable ssh,来建立链接文件,如下ln -s /dev/null ssh.service,根文件系统filesystem需要我们要开机启动ssh服务,就手动建立这样两个链接文件。1、用ssh服务为例,,ssh是客户端,远程ssh访问其他设备,sshd是服务端,以本设备作为其他设备远程ssh登入。一、systemd 的服务在三个文件件下。原创 2023-11-16 17:46:34 · 410 阅读 · 0 评论 -
linux系统篇(二).之Systemd机制
使用如下软链接命令 sudo ln -s /usr/lib/systemd/system/clamd@scan.service /etc/systemd/system/multi-user.target.wants/clamd@scan.service。systemctl脚本存放在:/usr/lib/systemd/,有 系统(system)和用户(user) 之分,像需要 开机不登陆就能运行 的程序,还是存在系 统服务里 吧,即:/usr/lib/systemd/system目录下。原创 2023-10-07 11:38:51 · 305 阅读 · 0 评论 -
linux系统篇(一).之Systemd机制
Systemd默认从目录/etc/systemd/system/读取配置文件,但是里面存放的大部分文件都是符号链接,指向目录/usr/lib/systemd/system,配置文件存放于/usr/lib/systemd/system/,开机启动后会在/etc/systemd/system目录建立软链接文件, 每个Unit的配置文件配置默认后缀名为.service,systemctl enable命令用于在上面两个目录之间,建立符号链接关系。启动计算机的时候,需要启动大量的Unit。二、是启动脚本复杂。转载 2023-09-28 18:51:27 · 614 阅读 · 0 评论 -
Linux 配置dns覆盖默认127.0.0.53
Linux dns默认127.0.0.53,在/etc/resolve.conf中存在 nameserver 127.0.0.53,手动修改无果,每次重启依旧127.0.0.53,因为这是系统生成的文件,resolvectl命令来查dns的配置。ping www.baidu.com #用ping连接百度验证,成功连接,能够解析域名。如果是自己的dns服务器,就换成公司的,之后查询,已生效。要修改dns,先暂停dns服务,如下操作,#然后重启网络服务器;原创 2023-07-06 10:56:01 · 3626 阅读 · 1 评论 -
Linux dd 命令使用
dd命令的使用,等下写。原创 2023-06-19 13:47:34 · 90 阅读 · 0 评论 -
Linux挂载的文件系统类型
mount指令,查看当前系统挂载了那些文件系统,proc,sysfs,tmpfs,selinuxfs,pstore,cgroup,debugfs,tracefs,都是伪文件系统。不占用磁盘,只在系统起来后,运行在内存,比如ext3.ext4,jffs2,yaffs2,ubi等等常见的文件系统,是根文件系统,占用磁盘,空间的。mount指令可以看到各个分区的属性,rw,ro,可读可写或只读,在开发阶段,一般设置为可读可写,量产时,将会设置为只读。可以看到,设置分配了很多用户分区,用于存储数据。原创 2023-06-19 13:48:08 · 127 阅读 · 0 评论 -
Linux系统时间date命令
可以直接在终端输入这两个指令,就可以立即更新系统时间,用date命令,可以查看当前是否修改对。如果要每次开机,进行时间同步,将这个指令放到系统启动脚本里,每次开机都执行,原创 2023-06-05 15:04:38 · 444 阅读 · 0 评论 -
linux将dmesg,ls grep 通过>输出到 文件里(一)
dmesg 命令,有配置syslog的话,或cat syslog。将日志导出到文件,方便查看。查看Linux启动日志。原创 2023-06-01 10:54:40 · 2645 阅读 · 0 评论 -
问题记录 bug4-linux网卡初始化失败(四)
系统启动后,网卡设备驱动加载失败,这是个隐蔽的问题,外接Switch,phy,未及时上电,导致初始失败。是mcu控制外接网卡芯片供电,导致的问题。原创 2023-05-31 18:40:31 · 129 阅读 · 0 评论 -
问题记录 bug3-linux磁盘分区lsblk与df查看空间大小不一样(三)
问题记录 bug3-linux磁盘分区lsblk与df查看空间大小不一样。原创 2023-05-31 18:39:07 · 842 阅读 · 0 评论 -
问题记录 bug2-linux磁盘分区/格式化/挂载(二)
linux磁盘分区/格式化/挂载,明天写,原创 2023-05-31 18:38:00 · 44 阅读 · 0 评论 -
问题记录 bug1-系统上电挂载异常分区,df与du命令查看文件使用大小显示不一样
我们分配的block0p1,是给根文件系统用的,kernel启动后,会将/root挂载在这个分区,这样,后面kernel挂载完驱动后,就会去启动第一个进程,并使用/etc下的各种配置文件,对系统进行配置,比如配置网卡ip,配置log日志,并启动各种脚本,各种用户程序。根据这个博主说的,确实解决了问题,所以,这里提一下,为啥会出现这种损坏文件,导致磁盘分区异常的呢,有可能是系统关机过程,正在写文件,突然断电了,就会导致这个文件的损坏,所以一般正常的关机,都会去umount 驱动,挂载文件,原创 2023-05-31 18:35:13 · 1214 阅读 · 0 评论 -
Linux loglevel日志等级设置
最新的操作系统大都已经采用了rsyslog取代syslog,作为新的系统日志程序,rsyslog支持将日志存储到远端的日志服务器中,但这不是本文介绍的重点,本文主要介绍rsyslog的七种级别的日志如何各自记录到指定的文件中。系统支持按不同log输出方式配置不同等级输出,如串行口的输出等级配置为2,则只有0,1等级的Log会输出到串行口,以此类推;如何触发,可参考iptables的LOG操作,该操作默认的级别为4级,也即warning级别。0 debug –有调式信息的,日志信息最多。原创 2023-05-10 16:10:02 · 3520 阅读 · 0 评论 -
iptables基础知识详解
iptables基础知识详解。原创 2023-01-16 18:43:36 · 91 阅读 · 0 评论 -
mtdparts分区设置(cmdline,uboot,Linux-kernel)
mtdparts分区设置原创 2022-12-09 17:30:26 · 554 阅读 · 0 评论 -
linux kernel内核、驱动日志调试方法(一)
对于正在运行的内核,所谓的core文件就是这个内核在内存中的核心映像,即/proc/kcore。proc文件系统是一种无存储的文件系统,当读其中的文件时,其内容由文件关联的读函数动态生成,当写文件时,文件所关联的写函数被调用。printk是打印内核消息的函数,printk通过附加不同日志级别(loglevel)或者说消息优先级,让printk对消息进行分类,这是与printf最大的区别,在编译时,日志级别宏会被展开为一个字符串,然后与消息本文拼接在一起,因此printk中优先级和格式字符串之间没有逗号。原创 2022-11-25 17:33:10 · 5302 阅读 · 1 评论 -
Linux /proc目录和 /sys目录(一)
由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。该文件指定了可以分配的文件句柄的最大数目。系统中当前运行的每一个进程都有对应的一个目录在/proc下,以进程的 PID号为目录名,它们是读取进程信息的接口。如下,可以看到proc,证明proc是个虚伪文件系统,还有debugfs,sysfs,ext3,等这些熟悉的系统。下面是一部分信息,太多了,启动时显示log图片,设置堆栈,设置文件系统,挂载,注册鼠标,键盘,usb驱动等等,原创 2022-11-25 15:45:52 · 1030 阅读 · 0 评论 -
inux 2.6中断下半部机制分析
inux 2.6中断下半部机制分析Posted on 2013-03-12 23:46 feisky 阅读(369) 评论(0) 编辑 收藏Linux 2.6中断下半部机制分析作者:流星摘要 本文主要从使用者的角度对Linux 2.6内核的下半部机制softirq、tasklet和workqueue进行分析,对于这三种机制在内核中的具体实现并未进行深入分析,倘若读者有兴趣了解,可以直接阅读Linux内核源代码的相关部分。说明 本文档由流星自网上收集整理,按照自由软件开放源代码的精神发布,原创 2022-11-20 14:30:26 · 98 阅读 · 0 评论 -
linux 网络协议.深入内核理解sk_buf
后面看内核,再总结写https://blog.csdn.net/u012658346/article/details/17370447原创 2022-01-10 11:09:38 · 801 阅读 · 0 评论 -
linux 常见锁的用法
linux 常见锁的用法内核锁,应用层锁互斥锁,自旋锁原创 2022-01-10 11:07:14 · 536 阅读 · 0 评论 -
linux select 多路复用介绍(一)
linux select 在socket里使用(二)转载 2022-01-06 19:53:29 · 235 阅读 · 0 评论 -
文件描述符fd的本质是什么(一)
转自:https://mp.weixin.qq.com/s/hLq7Pp8CkJD9B-Xqym50dA转载 2022-01-07 11:24:47 · 77 阅读 · 0 评论 -
Linux 文件系统是怎么工作的(一)?
原创 2022-01-07 10:03:22 · 150 阅读 · 0 评论 -
普通目录下Makefile编译驱动写法(三)
普通目录下Makefile编译驱动写法(二)原创 2021-11-04 09:32:45 · 95 阅读 · 0 评论 -
主根目录下Makefile写法(二)
主根目录下Makefile写法(二)原创 2021-11-03 22:01:27 · 157 阅读 · 0 评论 -
普通子目录下Makefile写法(一)
Makefile写法原创 2021-11-03 21:57:09 · 161 阅读 · 0 评论 -
linux 的tlv320aic3x驱动源码分析
linux 的tlv320aic3x驱动源码分析原创 2021-11-03 21:50:39 · 497 阅读 · 0 评论 -
为什么Linux的音频驱动位于sound目录下而不是driver/sound
为什么Linux的音频驱动位于sound目录下而不是driver/sound来自百度百科:https://zhidao.baidu.com/question/1766959028556770020.html1、早期的2.4内核所有的音频驱动和其他驱动一样都是位于drivers目录下的:drivers/sound2、到了2.5开发版内核,所有的音频驱动包括音频框架代码由drivers/sound移到了sound目录下:(1)2.6内核之前的git记录查找:http://git.kernel.org/?转载 2021-11-03 17:40:34 · 716 阅读 · 1 评论 -
Linux2.6版本内核编译配置选项(中文翻译一)
Linux2.6版本内核编译配置选项原文: https://www.cnblogs.com/lcw/p/3159396.htmlDevice Drivers设备驱动程序Generic Driver Options驱动程序通用选项Select only drivers that don’t need compile-time external firmware只显示那些不需要内核对外部设备的固件作map支持的驱动程序,除非你有某些怪异硬件,否则请选上Prevent firmware from转载 2021-11-03 17:38:49 · 820 阅读 · 0 评论 -
顶层Makefile,Kconfig,.config,子目录kconfig,Makefile,kbuild的关系
linux内核是一个庞大的开源软件,针对arm,x86,mipi等等架构,内有不同平台的驱动代码,和与不同架构soc相关的核心代码他们是如何进行编译的?如下,输入 make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- uImage,可知,针对的是arm架构的,那么只会选择arm架构的代码进行编译,那么顶层Makefile,Kconfig,.config,子目录kconfig,Makefile,kbuild,到底是如何知道完成编译的呢?很多博客,没讲明白,所以原创 2021-11-03 15:59:35 · 753 阅读 · 0 评论 -
yffs2,jffs2、ext4,ubi根文件镜像的格式的区别和优缺点
yffs2,jffs2、ext4,ubi根文件镜像的格式的区别和优缺点,不同的介质,如nand,norflash,inad,emmc,不同的格式正在酝酿。原创 2021-07-14 15:07:25 · 1032 阅读 · 1 评论 -
hisi3599av100镜像制作工具
如何制作根文件系统镜像,hisi的SDK包中,有编译好的制作镜像的工具,我的是emmc启动,作为介质,制作ext4格式的文件,所以用的是ext4的工具,华为还有制作其他格式的工具,yffs2,jffs2,ubi的,在目录下有编译好的工具。...原创 2021-07-14 15:05:03 · 172 阅读 · 0 评论 -
应用层,多线程通信锁,linux内核锁
自旋锁,互斥锁,读写锁,酝酿中原创 2021-07-13 13:02:46 · 183 阅读 · 0 评论 -
Uboot下,emmc,nand操作(一)
一、目的:嵌入式开发板,通过emmc上的内核文件加载启动linux操作系统,以及存放其他程序文件。需要将所需文件先写入emmc中。二、总体步骤是:uboot启动后,进入linux下,将emmc分区并格式化,uboot下支持fat和ext2的格式,这里用fat格式,并挂载,然后放入所需要的文件。这样重启后,进入uboot下,将emmc中的文件load到内存中运行。三、uboot下emmc内容烧写(拷贝)步骤:1、uboot启动后,输入mmc info有mmc的相关信息2、通过tftp或其他方式启动li原创 2021-07-13 12:26:32 · 9858 阅读 · 1 评论 -
linux驱动好像分为总线式,平台式,gpio式
记录这个问题,有空好好研究,面试,有人问过我,酝酿中原创 2021-07-03 11:24:40 · 63 阅读 · 0 评论 -
linux驱动的动态加载和静态加载
linux驱动,加载时,有两种方式启动内核时,会加载编译进内核的驱动,另一种是,动态加载,在外边单独编译ko,使用insmod加载ko详细,在酝酿。原创 2021-07-03 11:21:31 · 286 阅读 · 0 评论 -
linux下kernel,fs,dts,驱动加载的关系
linux启动时,启动uboot,给内核传参,uboot可以自己定制,给内核传需要的参数,内核启动后,会到uboot指定的分区,加载dts,来启动内核,加载驱动,,最后到指定的地址,挂载fs,配置系统,创建设备节点,最后进入用户态启动应用程序。没写完,在酝酿,他们启动过程和关系。初稿...原创 2021-07-03 11:07:32 · 411 阅读 · 0 评论 -
linux下网络设备和普通设备,ifconfig才能查看到网络驱动设备
在酝酿原创 2021-07-03 11:01:02 · 168 阅读 · 0 评论