自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(505)
  • 资源 (44)
  • 收藏
  • 关注

原创 【Shell】贪吃蛇

【代码】【Shell】贪吃蛇。

2025-06-04 14:13:52 69

原创 【Linux】内核裁剪,如何删除未编译到的C源文件和头文件?

1. 最上边行是当前内核的版本信息和编译的时间(没有红色箭头)2.第一个箭头是内核6.14.0版本内核源代码基于笔记本部分使用功能,裁剪后除去内核非使用源代码后C源代码和C头文件数量:9252个(如下图所示,再除去编译中间生成的*.mod.c),(第三个箭头是未做任何裁剪时C和H文件的总数:60480个),裁剪后C源代码和头文件数量仅为默认的15.3%。

2025-05-24 21:15:40 620

原创 【Linux】借助gcc源码修改,搜索头文件当前进展

在使用修改源代码编译的GCC,进行编译内核源代码时,好像性能要慢不少,有可能是打印日志操作有文件IO导致,也有可能是gcc编译的会不会不是release版本不太对,不太清楚。从上图可以看出对于每次的搜索,都是从第一个目录开始搜索,图里也可以看到修改源代码所在的目录,函数,行,昨天的博客感觉对于找到的位置还是不太好。其实,linux内核在编译时和链接时所使用的源代码不一定相同,也即编译能通过,但是链接会报缺少文件这类问题,下一步想找找链接时对于源文件搜索。这里也有一些gcc系统头文件目录搜索。

2025-05-22 23:29:11 418

原创 【Linux】借助gcc源码修改,搜索头文件当前进展

当前碰到一个比较大的问题,就是在编译的时候会生成一些中间文件,在/tmp目录,编译时需要不停的按enter键,才能继续往下编译。从另一方面来说,在内核编译中后期会进行链接,也会报一些头文件不能识别,这块估计得下一步继续摸索。这里的大概的意思是在编译test.c, log.c的时候对外依赖的头文件。这里的日志是编译时将头文件所在的目录添加到编译的头文件搜索目录列表。gcc的代码量比较大,看了很小些gcc源代码,慢慢摸索才找到这里。这只是大概 找到的位置,也不确定是否正确。

2025-05-21 16:15:13 202

原创 【Linux】gcc从源码编译安装,修改源码,验证修改的源码

本文作者分享了从Windows 10切换到Ubuntu Server版本的操作系统使用体验,指出频繁的系统升级通知令人烦恼。接着,作者探讨了学习Linux内核源代码的挑战,特别是如何确定GCC编译时使用的C文件和头文件。作者详细描述了编译GCC 14.2.0的过程,包括修改源代码以添加日志功能,并指出了在修改GCC源代码时需要注意的问题,如避免使用printf以免影响测试用例的通过。最后,作者强调了学习大型项目如GCC的编译框架和Makefile的复杂性。整体而言,文章记录了作者在操作系统切换和GCC源代码

2025-05-15 21:58:44 361

原创 [Linux]针对操作功能裁剪系统后进一步对未使用源代码删除步骤探索

,这里是配置基于下载的内核源代码下次编译时,只编译前面对系统操作使用到的功能所对应的内核源代码,这步实现 很大程度上的裁减,因为内核源代码非常多,反而一台电脑上使用的功能,尤其是驱动真正使用的代码量非常非常少,这里有一个问题,在新生成的config文件时,并不会对原来代码目录的*.c,*.h文件进行变化。这个方法不知道是否可行,编译器在编译的时候一般会在很多头文件目录去搜索,编译器会知道最终编译时所使用的头文件,及头文件所在目录,这样项目编译完成,就会记录所有的头文件,然后把不用的头文件删除。

2025-05-09 11:57:45 835

原创 [Linux]在源代码数量优化中统计源文件数量,目标文件数量的一点作用

在实际的操作中,会发现很多,比如自己的电脑根本就没用到AMD的任何驱动,但是你把AMD代码目录删除,就会报错这类问题,在目录的Kconfig也会对一些模块进行依赖,还有些是源代码的头文件依赖,也有些是函数中代码对其他产品的源代码有依赖,这些有很多看起来不太规范。如果自己的代码基本功比较好的话,可以从源代码级修改,但是由于代码 量比较大,这样操作有点难度。

2025-05-08 12:28:57 302

原创 [Linux]MODPOST Module.symvers modpost xxx undefined!

然后修改。

2025-05-05 22:23:30 118

原创 [Linux] 笔记本访问b站,Linux内核打印的调用栈

笔记本访问b站,内核打印的调用栈,这里注意,函数是:

2025-05-05 18:31:59 357

原创 Ubuntu22.04(禁用)彻底删除Snap以及出现“rm: 无法删除“XXX“:只读文件系统”的解决方案

Ubuntu22.04(禁用)彻底删除Snap以及出现“rm: 无法删除"XXX":只读文件系统”的解决方案 - _Hakuna_Matata - 博客园

2025-05-05 12:26:33 157

原创 【Shell】模拟爬虫下载天龙八部小说

【代码】【Shell】模拟爬虫下载天龙八部小说。

2025-04-07 19:10:08 419

原创 【C++】0xc0000005写入位置时发生访问冲突解决方法

很多的程序员在编写代码的时候都在处理的过程中遇到了错误代码0xc0000005导致后续的操作发生了冲突,下面就带来了0xc0000005写入位置时发生访问冲突解决方法,快来一起学习一下吧。要是这样还是没能够成功,那么很可能是你的系统有问题不兼容导致的,因此大家可以通过浆果一键装机工具来进行系统重装解决问题。1、一般用户都是在点击调试按钮进行调试时遇到了错误代码,这是内存的写入错误。2、此时需要更改系统的栈保留空间,点击“项目”选项卡,再点击“项目属性”。4、然后再次进行代码运行,就可以解决之前的问题了。

2025-01-27 13:01:46 981

原创 【C++】如何从源代码编译红色警戒2地图编辑器

这个直接通过微软安装,其实这里先只需要安装很少部分,当通过VS2022打开下载的源代码时,VS会提醒安装所缺的编译器及相关的东西,好像有1、2个多G要安装。这步很重要,这里好像是要更新三方库的下载索引还是啥的,我在这里吃过亏,如果这里不操作,三方库不下载,编译时会报很多源代码依赖不到。vs2022编译前需要下载源代码依赖的三方库,可能会报下载载被x-block-origin。源代码大概1.6M的样子,这里要小心,编译源代码需要的其他三方库比较多。1.​红警2的地图编辑器居然更新2.0了,还开源了。

2025-01-18 12:10:14 1770

原创 [JAVA]MyLogger

【代码】[JAVA]MyLogger。

2024-12-31 20:45:40 477

原创 【随笔】高德网络定位算法的演进

定位在实际产品中场景还是非常复杂的。

2024-12-17 10:47:35 115

原创 【Linux】Systemtap在CentsOS9上测试成功了

结果未找到这三个软件实际对应版本的rpm包,最终只能选择安装跟内核版本比较相近的rpm包。安装命令就是rpm -ivh xxx.rpm包。看到运行的效果,可以安心些,哈哈。

2024-12-13 15:14:05 552

原创 【Java】类似王者荣耀游戏

r77683962/WangZheYouDianRongYao

2024-12-08 11:18:45 321

原创 【Java】A *算法的应用

源代码PathFind.java(代码其实来源于网上,出处找不到了。

2024-12-06 09:33:27 249

原创 【Linux】SystemTap(类似Runtime Hook)在裁剪的系统运行不成功

make[1]: *** [scripts/Makefile.build:244:/tmp/stapksp0yb/stap_304a8a6d54945a958b0401857f38910b_1136_src.o] 错误 1。make: *** [Makefile:1919:/tmp/stapksp0yb] 错误 2。make[1]: *** 正在等待未完成的任务....

2024-11-29 10:35:38 713

原创 [chrome]黑色界面插件,PDF合并插件

下载的zip包解压成crx,然后把后缀名改为rar,然后解压,再导入解压的目录。

2024-11-26 21:20:28 502

原创 【java】StringBuffer 插入字符串源码

【代码】【java】StringBuffer 插入字符串源码。

2024-11-24 12:32:54 139

原创 [javascript]js的五子棋让红蓝双方自己跟自己下棋

【代码】[javascript]js的五子棋让红蓝双方自己跟自己下棋。

2024-11-19 21:21:24 307

原创 【Linux】内核调用栈打印函数dump_stack使用效果

【代码】【Linux】内核调用栈打印函数dump_stack使用效果。

2024-11-15 22:40:53 439

原创 【Linux】linux c语言调用send()接口内核调用流程

基于完整日志过滤" a.out "后的日志,因为第1步c代码编译出来的可执行文件叫a.out,执行时内核中的进程名是a.out。到这步其实已经到驱动层了。

2024-11-06 00:32:51 1081

原创 【Java】飞机大战游戏运行原理代码

【代码】【Java】飞机大战游戏运行原理代码。

2024-10-28 10:21:41 145

原创 【Java】一个博客系统简单运行原理

【代码】【Java】一个博客系统简单运行原理。

2024-10-27 22:22:59 301

原创 【Linux】进程ID和线程ID在日志中的体现

这里可以看出,在创建进程的时候(实际有可能是线程) ,这个pid是不断变化的,但是如果是创建线程,tgid的值实际上是父进程的值,从上图中可以看出,父进程的tgid值是等于pid的值的(2507行和2516行)。有点类似开始分析打印日志的时候,有多进程时,如果未把多进程的ID打印出来,是不太容易分析出来函数调用流程的,如下图所示红色方框这个字段,(注意,这图未针对函数调用关系混乱)这个pr_info_self打印宏其实还挺厉害,尤其是结合内核裁剪后,说不定更厉害。然后查找进程名为:firefox的进程。

2024-10-18 09:24:00 626

原创 【Java】画心形图形

本来想着自己看下这个源代码能不能实现,看了下源代码其实非常复杂。其中不同的爱心坐标点x,y变化的函数不太一样(

2024-10-15 12:31:26 827

原创 【Java】外部类和内部类,普通方法和静态方法

【代码】【Java】外部类和内部类,普通方法和静态方法。

2024-10-12 10:46:10 113

原创 【Linux】C文件头文件数裁剪前58644个,裁剪后9373个

在裁剪目录的时候,发现net的目录里边对drivers/net有一些是基于C源文件调用的依赖,比如我们硬件只有intel,没有思科或者其他厂商的,但是代码里有调用关系,开始我碰到这样的问题就直接修改C代码其实里边就是一些if分支什么的,直接干掉,DOGE。一般是删除自己觉得不太重要的代码或者目录,然后编译,重启验证功能是否正常,在开始裁剪驱动的网络目录时,有几次裁剪后无法上网,还有几次是裁剪后无法使用从Windows到Ubuntu的文件共享功能。这样操作的好处:裁剪后不会有多余的文件,都是通过编译找到的;

2024-10-11 17:48:30 879

原创 ​【Linux】精简Linux内核编译的简单方法​

一般说法:在运行这条命令前,将系统需要在后续内核编译的各种硬件都用一遍,以便你的系统中的模块均被调用了一次,使用“make localmodconfig”命令时,才能将你的系统将调用的模块包含进来。在编辑“~/build/kernel/.config”文件时,将相应项改为“=y”而不是“=m”。一般说法:在运行第二条命令前,将系统的各种硬件都用一遍,以便你的系统中的模块均被调用了一次,使用“make localmodconfig”命令时,才能将你的系统将调用的模块包含进来。

2024-10-06 19:12:01 1049

原创 【Java】飞机大战游戏运行原理代码

【代码】【Java】飞机大战游戏运行原理代码。

2024-09-25 10:35:36 288

原创 【Linux】驱动层源代码如何查看进程ID和进程名称?

从第1张图由于字符串过滤的原因看不出来系统的多进程,如果不过滤,看到的是如下图这样子,可以比较好的说明多进程,操作系统不断的多进程切换,就这一张图有不少进程。源代码所在文件、函数、行号、进程ID、进程名以及当前打印的日志类型,中括号外边就是自己想要打印代码的字符串,参数列表什么的。在第1张图里也看到以太接口对收发包和字节的计数,其实数据就是ifconfig命令的,当前数量对不上,前面有博客是可以对得上的。在第1张图里好像还有第0号进程,稀客。登录 - Gitee.com。

2024-09-24 11:04:36 382

原创 【Linux】通过内核以太层可查看应用程序运行时访问外网情况

下边是运行firefox时内核打印的日志,可以看到浏览品运行时调用了很多的操作系统内核系统调用,比如:文件读写、网络数据包的收发等等,其实这些日志还并不全,因为内核源代码有很多调用频率太高的地方不能添加打印日志,容易造成操作系统死机,这即是前一阵子博客讲的为什么需要把函数调用的频率整理出来的原因。在操作系统运行的时候,好像也看到过Windows也会偷偷收发网络数据包,其中有一个当时是Windows操作系统测试网络连通性会去下载一个外网的文件。

2024-09-23 00:40:43 392

原创 【Linux】当前进展

行 2105: [ 2.011995] kernel: [drivers/base/bus.c bus_add_driver 648] bus: 'platform': add driver cht_dollar_cove_ti_pmic。行 2089: [ 2.011850] kernel: [drivers/base/bus.c bus_add_driver 648] bus: 'platform': add driver cht_crystal_cove_pmic。

2024-09-21 13:49:22 1684 2

原创 【Linux】查看操作系统开机时初始化的驱动模块列表的一个方法

1、驱动层module_init(module_init_function)作为模块初始化,并且提供模块内部初始化的函数名;内核最上层看到的是系统调用入口,最底层是驱动。3、从找到的模块函数中添加打印信息;方法也是摸索出来的,不一定对。

2024-09-13 08:37:39 1025

原创 【LINUX】shell中模拟爬虫

读取文件1和文件2的内容。

2024-09-11 07:04:50 590

原创 【LINUX】在ubuntu中安装tomcat

#instal jdkapt install openjdk-8-jdk -y#enter install pathcd /home/a/#copy tomcat packagecp /mnt/hgfs/Share/apache-tomcat-9.0.93.tar.gz .#unpress tomcat packagetar -xf apache-tomcat-9.0.93.tar.gz #enter bin pathcd apache-tomcat-9.0.93/bin#start the se

2024-09-11 07:03:52 324

原创 【LINUX】SHELL贪吃蛇

Show()#Mapdo;;;esacdone#Snakefor ((i=0;i++))doecho "*"done#Foodecho "0"dodoneMove();;;;esacArrayMovethenthenthenthenfithen。

2024-09-11 07:02:41 627

原创 【LINUX】ubuntu的docker容器中运行tomcat

Docker在Ubuntu上依赖一些软件包。#复制宿主机tomcat压缩包到容器,以后可能会修改。#查看docker 运行的tomcat id。#复制页面到tomcat服务器目录。#进入docker容器。

2024-09-11 07:01:45 385

函数指针详解.doc

函数指针详解.doc

2012-10-28

Linux内核阅读心得体会

Linux内核阅读心得体会

2016-10-30

类everything java源码

java实现的类everything源码,当前未支持文件添加,删除操作的更新,有一些日志方便开发使用,当然代码有一些冗余,当前支持,多字符串搜索,支持正则表达式搜索,用于学习,来自于: https://download.youkuaiyun.com/download/chousheng/4782687#comment

2018-06-13

汇编语言王爽

汇编语言王爽汇编语言王爽汇编语言王爽汇编语言王爽汇编语言王爽

2018-02-15

xdotool源代码

xdotool_3.20150503.1.orig.tar 

2016-03-16

Dark-Reader.crx

chrome 黑色主题,比较适合夜间浏览,有利于保护眼睛,chrome 黑色主题,比较适合夜间浏览,有利于保护眼睛

2018-08-09

jdk9_javac.rar

jdk9 javac编译器,从编译器解压出来的大包不能直接用于编译,会报package冲突,做了一些处理后可以用于本地编译和调试

2018-01-07

Orange's chapter8a修改后可以查看消息流程的版本

Orange's chapter8a修改后的版本方便消息流程分析 https://blog.youkuaiyun.com/r77683962/article/details/79826404

2018-04-05

chapter5_i

os orange chapter5_i os orange chapter5_i os orange chapter5_i os orange chapter5_i

2018-03-13

15_day_mini

15_day_mini

2018-10-24

15_day_mini2

15_day_mini2

2018-10-25

chatserverclientepoll

c epoll server clientc epoll server clientc epoll server clientc epoll server client

2018-08-04

NS2新的RTP协议

NS2新的RTP协议

2012-04-10

SourceInsight4

SourceInsight4SourceInsight4SourceInsight4SourceInsight4

2018-02-15

计算机网络

计算机网络计算机网络计算机网络计算机网络计算机网络

2011-10-21

UML基础教程

UML基础教程

2012-02-29

计算机编程的艺术

计算机编程的艺术

2012-02-29

unix网络编程

unix网络编程

2012-05-13

javac_可以编译目录.rar

jdk9 javac编译器 源码 当前可以根据用目录作为参数进行编译 谢谢

2018-01-20

clicks模拟鼠标键盘

clicks use for simulate mouse and keyboard actions. Manul: clicks display help information clicks s x sleep x ms clicks m x y mouse cursor move from current position to current.x+x current.y+y position clicks mt x y mouse cursor move to x, y clicks l click left button clicks dl double click leftbutton clicks r click right button clicks dr double click rightbutton clicks e x lines of operation in file clicks sr/er start/end record your operations clicks i string input string at mouse cursor Examples: clicks s 2000 clicks m 100 100 clicks mt 100 100 clicks l clicks r clicks dr clicks dl clicks i "hello clicks!" clicks sr clicks er clicks e a.txt a.txt: mt 100 100 s 1 m 300 300 s 1 l ...

2016-03-13

A *算法的应用XXXX

A *算法的应用XXXX

2024-12-06

records.txt

Ubuntu 19.04 Upgrade kernel from 5.0.0 to 5.0.1 generated files

2019-08-24

kernel start log.txt with log

kernel start log with init/main.c and kernel/idle.c modified

2019-10-29

linux给net/socket.c部分接口添加pr-info后运行情况

111

2024-06-13

linux给net/socket.c部分接口添加pr-info后运行情况

111

2024-06-13

[97世界编程大赛4K组]ts代码运行展示.mp4

1、代码源头及演示:https://supersodasea.github.io/Omniscent/ 2、修改了些代码,减少和修改了些代码行方便阅读和调试,但是原代码有魔鬼数字,实在看不懂 3、源代码用到了些图形学相关知识; 4、当前运行代码地址及分支:https://gitee.com/r77683962/Omniscent,分支:Only2Files 5、该视频未配声音。

2024-05-05

SI4安装文件及操作流程

SI4安装文件及操作流程

2022-08-01

EDK II Documentation

EDK II Documentation EDK2代码中工程文件

2022-07-10

前端项目带有可定制菜单示例

前端

2022-01-21

小米商城网站示例模仿商城

小米商城网站示例模仿商城

2022-01-21

hibernate-release-5.0.12.Final.rar

hibernate-release-5.0.12.Final.rar

2019-06-17

kern.log linux start

LINUX 启动日志记录(包含文件,函数,没有行数),内核版本5.3.1 添加打印日志添加打印日志添加打印日志

2019-11-10

30day 的07_day 添加了大屏显示1024*768,适配了中文显示

30day 的07_day 添加了大屏显示1024*768,适配了中文显示30day 的07_day 添加了大屏显示1024*768,适配了中文显示30day 的07_day 添加了大屏显示1024*768,适配了中文显示

2019-04-14

dmesg_with_pr_info_add_file_function.log

dmesg_with_pr_info_add_file_function.log dmesg_with_pr_info_add_file_function.log

2019-11-03

scrapy1.5-chinese-document-master.zip

scrapy1.5-chinese-document-master.zip

2019-07-07

30day pdf+codes

30day pdf+codes

2019-04-11

15_day_mini2.rar

30dayos, mini code

2019-04-08

引导扇区设置显示1024*768分辨率

引导扇区设置显示1024*768分辨率

2018-10-25

YunGameDownload.zip

操作系统显示中文字符

2020-06-21

boot.zip Linux kerner grub 5.0.1压缩包

linux kernel grub 5.0.1起动文件汇总,如果是自己新编译的内核,需要把vmlinuz-5.0.0-13-generic和initrd.img-5.0.0-13-generic拷贝到boot目录。

2019-09-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除