
Linux开发
bcbobo21cn
这个作者很懒,什么都没留下…
展开
-
如何提交Linux内核补丁到Linux内核社区
如何提交linux内核补丁;转载 2022-06-02 04:11:34 · 33 阅读 · 0 评论 -
Linux 组调度学习
在linux内核中,使用task_group结构来管理组调度的组。转载 2022-04-05 17:40:56 · 37 阅读 · 0 评论 -
Linux gcc 基本选项
gcc 基本选项;原创 2022-03-02 01:34:15 · 447 阅读 · 0 评论 -
CentOS下首次使用as86汇编器
centOS下使用as86汇编;原创 2022-02-27 12:13:45 · 150 阅读 · 0 评论 -
centos yum安装时出现 cannot find a valid baseurl for repo: addons
Linux,baseurl for repo;原创 2022-02-27 09:21:37 · 224 阅读 · 0 评论 -
Linux repo 文件学习;
linux repo文件;原创 2022-02-27 08:52:24 · 587 阅读 · 0 评论 -
CentOS 5 安装as86汇编器
centOS安装as86汇编器;原创 2022-02-27 02:23:46 · 120 阅读 · 0 评论 -
Linux 0.12内核的内存管理基础
Linux内核 0.12内存管理;转载 2022-02-27 00:31:35 · 31 阅读 · 0 评论 -
初步了解Linux创建文件系统命令
linux mkfs命令;原创 2022-02-20 02:07:47 · 346 阅读 · 0 评论 -
认识Linux文件系统inode和查看inode相关信息
linux 下inode包含文件的元信息;原创 2022-02-20 00:39:10 · 1589 阅读 · 0 评论 -
认识Linux设备驱动模型和Kobject
Kobject是Linux设备模型的基础;转载 2022-02-19 23:58:47 · 27 阅读 · 0 评论 -
认识 linux sysfs文件系统
自2.6版本开始,linux内核开始使用sysfs文件系统,它的作用是将设备和驱动程序的信息导出到用户空间,方便了用户读取设备信息,原创 2022-02-19 23:23:00 · 372 阅读 · 0 评论 -
centos查看模块信息和模块路径
centos查看内核模块信息;原创 2022-02-19 20:39:02 · 647 阅读 · 0 评论 -
认识CentOS下boot目录和el5、el6文件
centOS的boot目录和el5、el6文件;原创 2022-02-19 20:14:42 · 403 阅读 · 0 评论 -
初步了解Linux内核中断初始化
Linux内核中断初始化初步了解;转载 2022-01-13 01:17:15 · 34 阅读 · 0 评论 -
CentOS下初次使用MySQL
CentOS下使用MySQL;原创 2022-01-09 19:19:38 · 298 阅读 · 0 评论 -
CentOS源码下载和Windows平台下解压rpm包
CentOS源码下载;Windows平台解压rpm包;原创 2022-01-09 03:21:58 · 477 阅读 · 0 评论 -
Linux下编译构建成功HelloWorld驱动程序并加载
Linux 下helloworld驱动程序编写和构建、加载;原创 2022-01-08 09:40:09 · 205 阅读 · 0 评论 -
Linux insmod 命令学习
Linux insmod命令加载模块;原创 2022-01-08 07:41:17 · 491 阅读 · 0 评论 -
linux 内核 printk 使用
Linux内核printk;转载 2022-01-02 19:23:01 · 108 阅读 · 0 评论 -
linux内核dentry结构学习
linux内核dentry结构;转载 2021-12-21 21:58:48 · 75 阅读 · 0 评论 -
Bochs调试Linux内核初步学习 - 3
接此;https://blog.csdn.net/bcbobo21cn/article/details/120480214 前面尝试了在线性地址下断点,都是失败;下面再研究一下;首先看一下0.11或0.12目录下,还有一个debug.bat,其中目录可能要改成和run.bat一致;运行run.bat;启动;bochs命令行停留在<bochs:1>,此时左边虚拟机的面板是空白;看一下相关教材的说明,目前是, Bochs调试系统准备好运行;操作系统还...原创 2021-10-02 02:59:07 · 51 阅读 · 0 评论 -
Bochs调试Linux内核 - 定位内核中的变量或数据结构
到此网址下载,http://oldlinux.org/Linux.old/bochs/linux-0.12-080324.zip解压以后如下;第一个文件是Bochs安装文件;安装之;安装之后如下图;同时在下图目录新建0.11目录;把下载的如下内容拷贝过来; .bxrc, 这是bochs配置文件;bochs配置文件包含如下两行, floppya: 1_44="bootimage-0.12-hd", status=inserted floppyb: 1_44="...原创 2021-09-26 00:52:53 · 81 阅读 · 0 评论 -
ubuntu下wget下载Linux内核源码、make生成.config文件
根据资料,如果要调试Linux内核源码,需要自己编译内核源码;原因是,一般下载的内核并不是为调试而编译的,要在编译时开启 "Compile the kernel with debug info" 选项,编译出的内核方可调试;下面来初步看一下编译;现在hyper-v虚拟机上有一个ubuntu;hyper-v中上次创建过一个虚拟交换机;在ubuntu虚拟机的网络适配器中加入此虚拟交换机;然后进入ubuntu;右上角出现上下箭头,就联网了,否则没有;看一下ubuntu的ip;前次下载过原创 2021-07-04 06:10:58 · 562 阅读 · 4 评论 -
qemu虚拟机的初步使用、了解linux下gdb和gdbserver
看了一下资料,qemu虚拟机的基本使用,它是可以运行img文件,把操作系统跑起来;没有可运行的操作系统img文件;想起bochs里面自带一个可运行的img文件;把bochs下的img文件,hd10meg这个,直接拖到qemu-system-x86_64命令上;然后看一下,img中包含的简单linux系统被qemu运行起来,输入root登录,然后进到此简单linux系统里面;输入-h参数,可以查看qemu命令的帮助;qemu命令可以设置一些参数;例如下图命令设置cpu核原创 2021-06-27 03:28:59 · 344 阅读 · 1 评论 -
Linux下调试器GDB的简单使用图解
gdb是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。11原创 2021-06-15 01:27:03 · 150 阅读 · 0 评论 -
Linux下运行第一个Java程序成功(Linux下JDK安装和环境变量配置等)
要从本机拷贝一个jdk的linux安装包到虚拟机,看一下虚拟机上系统的IP;此系统没有预先安装openJDK;新建一个java目录,用于安装;需要切到root用户;创建java目录;使用工具连接虚拟机上Linux;出现下图错误;ping一下该IP,可以ping通;可能是防火墙问题;直接从虚拟机下载jdk 安装包;火狐浏览器进入oracle对应页面;下载需要oracle账号;账号密码忘记了;从别的网站下到一个,如下图;从图形界面把下载的文原创 2021-05-05 04:27:32 · 113 阅读 · 0 评论 -
Linux内核编译学习1
这是指的在一台安装了Linux操作系统的电脑上,下载一份新版本的Linux内核源码,编译源码,升级当前操作系统版本为新的版本;编译内核一共有8个步骤;在这之前要确保足够的硬盘空间和内存;首先要添加一块硬盘20G,并分区,看它的教程提到,完成以后,查看或修改GRUB菜单,来确认是不是真的把内核安装好了;grub菜单是什么?grub是一种多操作系统启动程序,我们在安装了各种linux后,开机时出现的操作系统选择菜单通常是grub程序所显示的;Linux安装后,默认的启动的操作系统就设转载 2021-03-24 18:42:51 · 41 阅读 · 0 评论 -
Linux内核常见FAQ
推荐一些好的Linux内核参考书? a.《Linux Device Drivers, Second Edition》,有中文译本 b.《Understanding the Linux Kernel, 2nd Edition》 c.《Linux内核源代码情景分析》,分上下两册 d.《边干边学-Linux内核指导》 如何得到某一版本的Linux内核源代码? a. http://www.kernel.org或ftp://ftp.kernel.org,这是Linux内核版本的...转载 2021-03-19 20:10:11 · 46 阅读 · 0 评论 -
Linux内核BPF学习1
随着 BPF 追踪系统(基于时间采样)最后一个主要功能被合并至 Linux 4.9-rc1 版本的内核中,现在 Linux 内核拥有类似 DTrace 的原生追踪功能。DTrace 是 Solaris 系统中的高级追踪器。对于长期使用 DTrace 的用户和专家,这将是一个振奋人心的里程碑。现在在 Linux 系统上,你可以在生产环境中使用安全的、低负载的定制追踪系统,通过执行时间的柱状图和频率统计等信息,分析应用的性能以及内核。用于 Linux 的追踪项目有很多,但是这个最终被合并进 Linux...转载 2021-03-06 21:35:07 · 142 阅读 · 0 评论 -
Linuc C 编程实例1
1 get.c#include <stdio.h>#include <string.h>#include <strings.h>int main(void){ char buf[100]; bzero(buf, 100); fgets(buf, 100, stdin); printf("you have input %d letters\n", strlen(buf));原创 2021-01-30 15:00:11 · 53 阅读 · 0 评论 -
linux 内核探测kprobe 初步了解
kprobe(内核探测,kernel probe)是一个动态地收集调试和性能信息的工具。如,收集寄存器和全局数据结构等调试信息,无需对Linux内核频繁编译和启动。用户可以在任何内核代码地址进行陷阱,指定调试断点触发时的处理例程。工作机制是: 用户指定一个探测点,并把用户定义的处理函数关联到该探测点,当内核执行到该探测点时,相应的关联函数被执行,然后继续执行正常的代码路径。kprobe允许用户编写内核模块添加调试信息到内核。用户可以编译一个内核模块,并将内核模块插入到调试的内核中,就可以..原创 2021-01-17 06:20:50 · 271 阅读 · 0 评论 -
初步了解Linux strace 命令和跟踪进程产生的系统调用
strace strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。样例输出如下,root@ubuntu:/usr# strace cat /dev/nullexecve("/bin/cat", ["cat", "/dev/null"]...原创 2021-01-17 04:46:43 · 82 阅读 · 0 评论 -
初步认识Linux oops 消息
oops是英语口语"糟糕"的意思,当LINUX 内核发生严重错误时,比如内存段错误时,将会提示一大段信息。 Oops提示信息相当多,包括出问题时的,各个常用寄存器的值,调用的堆栈,以及出错的可能原因。oops 的格式 内核的文档里的详细的Oops的说明,的名字是 Documentation/oops-tracing.txt http://www.mjmwired.net/kernel/Documentation/oops-tracing.txtoops第一段出错是内存pa...原创 2021-01-17 03:38:05 · 179 阅读 · 0 评论 -
windows下gdb的下载和安装使用初步
GDB,UNIX及UNIX-like下的调试工具。Linux下的调试工具。据说可以在Windows下使用gdb;步骤有二;1 安装MinGW;可参阅,https://blog.csdn.net/bcbobo21cn/article/details/1050256432 借助 MinGW 安装 GDB 调试器。下面来看步骤2;MinGW安装GDB调试器;方法又有两种;1 在线安装 按资料要借助此工具;但是安装的MinGW里面找不到; 网上又下一个,如下图;但是安装过...原创 2020-11-16 01:42:38 · 3473 阅读 · 0 评论 -
20分钟构建属于自己的 Linux 发行版
导读 你想要构建自己的 Linux 发行版吗?不喜欢市面上现有的Linux发行版?你认为自己可以构建一款更好的发行版?你很幸运。我要在 20 分钟里面介绍如何构建一款发行版。 是的,你没有听错,就是 20 分钟。想知道如何构建吗?请读下去。你有好多办法来构建自己的自定义发行版。一种办法就是从头开始构建自己的 Linux 发行版。也可以将 Ubuntu 定制工具安装到酷似你想要的那种发行版的发行版,然后定制成个性化的发行版(是不是简单得很?)不过有一种更简单的办法,借助 SUSE Studio 在网上...转载 2020-11-13 00:25:14 · 436 阅读 · 0 评论 -
Linux内核裁剪及编译
Linux内核裁剪及编译可加载模块一 Linux基础知识linux内核组要由五个子系统组成:进程调度内存管理文件系统网络接口进程间通信Linux源码目录arch 目录中包含于体系结构有关的子目录和文件,arm的相关平台信息在arch/arm目录下。scripts 目录中存放着对核心配置的脚本文件。crypto 目录中包含着常见的加密算法。drivers 目录包含各种各样的驱动,包括字符型,快型,网络设备驱动程序。fs 目录中包括了linu...转载 2020-11-11 23:29:28 · 704 阅读 · 0 评论 -
Linux基本C编程fork、signal、time以及用printf在终端打印一个GUI窗口 - 使用cygwin
1 fork, vfork示例创建一个新进程的方法只有由某个已存在的进程调用fork()或vfork();vfork创建新进程的主要目的在于调用exec函数执行另外的一个新程序,在没调用exec或exit之前,子进程的运行是与父进程共享数据段的; 代码在此; https://blog.csdn.net/bcbobo21cn/article/details/51097573就不重复了;2 signal信号信号是linux系统为了响应某些状况而产生的事件。进程...原创 2020-10-22 04:50:41 · 118 阅读 · 0 评论 -
Vim编辑器的基本使用和三种模式
Linux vi/vim所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。目前使用比较多的是 vim 编辑器。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。vi/vim 的使用基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线原创 2020-09-05 20:12:37 · 1885 阅读 · 0 评论 -
使用Bochs调试Linux内核初级入门
之所以能用Bochs调试Linux内核,还是因为Bochs做了一些工作;安装完成以后如下;如果使用bochs.exe加载操作系统映像,就是在虚拟机中运行操作系统;如果使用bochsdbg.exe加载操作系统映像,就同时附带有调试命令,可进行调试;如下图,.bxrc文件,是欲加载的操作系统映像的配置文件;我这个是Bochs 2.5自带的;此目录下有run.bat;原内容如下;...原创 2020-04-04 19:19:32 · 513 阅读 · 0 评论