自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 资源 (6)
  • 收藏
  • 关注

原创 linux内核原子操作

创建两个内核线程thread_inc和thread_dec,分别调用atomic_inc和atomic_dec函数,atomic_inc每隔1秒调用一次,atomic_dec每隔2秒调用一次,调用完成之后使用atomic_read接口打印atomic值。描述:测试下linux内核驱动常用的几个atomic操作函数。OS版本:openEuler 22.03 LTS。

2022-09-02 09:32:22 597 1

原创 linux内核uuid生成器测试

openeuler linux 内核 uuid_gen 函数测试

2022-08-31 11:02:58 313

原创 linux内核随机数函数测试

OS版本:openEuler 22.03 LTS。描述:调用内核随机数生成函数,并打印。

2022-08-30 17:21:24 760 1

原创 openEuler embedded编译lightttpd进镜像失败

ERROR: openeuler-image-1.0-r0 do_rootfs: Postinstall scriptlets of ['lighttpd'] have failed. If the intention is to defer them to first boot,then please place them into pkg_postinst_ontarget_${PN} ().Deferring to first boot via 'exit 1' is no longer supp

2022-08-16 17:37:16 607

原创 linux内核模块参数函数module_param测试

从内核日志输出可以看到该参数的值已经被设置为1000,而不是原来默认的-150。操作系统版本:openEuler 22.03 LTS。加载内核模块时传入参数int_param。测试环境CPU架构:x86_64。

2022-08-15 16:31:33 896

原创 linux内核rwlock读写锁测试

描述:启动两个内核线程,一个线程用于修改全局静态变量 s_count ,一个用于读取全局静态变量。OS版本:openEuler 22.03 LTS。

2022-08-15 11:37:12 415

原创 openEuler embedded编译镜像报错You can set INITRAMFS_MAXSIZE a larger value

修改文件yocto-meta-openeuler/meta-openeuler/recipes-core/images/openeuler-image-common.inc。修改参数 INITRAMFS_MAXSIZE = "262144"为 INITRAMFS_MAXSIZE = "52284"

2022-08-15 10:59:41 390

原创 openEuler embedded编译go-runtime软件包报错

问题原因:链接器目录下缺少ld.gold的链接器,个人编译出来的链接器路径下有ld.bfd,目录如下:./tmp/work/aarch64-openeuler-linux/go-runtime/1.16.5-r0/recipe-sysroot-native/aarch64-openeuler-linux-gnu/bin/ld.bfd。问题原因:编译环境架构为arm aarch64架构的,openeulerEmbedded暂不支持,解决方法:修改go-runtime的inc文件:改为使用ld.bfd链接器,.

2022-08-15 10:48:19 422

原创 linux内核mutex互斥锁测试

描述:启动两个内核线程,这两个内核线程都加锁互斥锁对同一个静态全局变量镜像访问。OS版本:openEuler 22.03 LTS。测试结果:两个内核线程交替打印静态全局变量。

2022-08-10 14:38:33 546

原创 openEuler embedded编译镜像报错

查看了相应代码位置,发现是没有编译环境没有安装createrepo_c工具。解决办法:yum install createrepo_c。

2022-08-09 14:58:54 302

原创 linux内核定时器timer

openEuler 22.03 LTS linux 内核定时器 timer

2022-08-04 15:25:12 768

原创 qemu仿真启动openEuler embedded失败问题排查

openEuler embedded rootfs.cpio.gz启动报错/init: error while loading shared libraries: libtirpc.so.3: cannot open shared object file: No such file or directory

2022-08-03 17:37:31 805

原创 cpio解压与打包

cpio解压与打包_wlf_go的博客-CSDN博客_cpio解压

2022-08-03 16:28:50 351

原创 openEuler embedded编译镜像报错Applying ‘0001-arm64-add-zImage-support-for-arm64.patch‘ failed

解决办法:找到本地0001-arm64-add-zImage-support-for-arm64.patch的patch文件,与gitee上的patch进行对比,发现两个文件不一致。下载gitee上的patch替换后,重新编译正常。

2022-08-03 15:11:32 325

原创 内核查找符号指针函数kallsyms_lookup_name

openEuler linux kernel kallsyms_lookup_name

2022-08-03 11:30:39 3893 1

原创 openEuler创建内核线程kthread

openEuler linux kernel kthread

2022-08-01 18:00:05 405

原创 Linux OOM killer

设置oom_score_adj参数的内核代码位置为fs/proc/base.c,函数名为oom_score_adj_write。否则转换关系式为oom_score_adj=oom_adj*OOM_SCORE_ADJ_MAX/-17。如果oom_adj的值取最大(15),对应的oom_score_adj为OOM_SCORE_ADJ_MAX(1000)设置oom_adj参数的内核代码位置为fs/proc/base.c,主要调用的函数是oom_adj_write。...

2022-07-29 13:18:45 986

原创 openEuler 使用virt-install安装虚拟机报错

domain configuration does not support 'video model' value 'qxl'

2022-07-29 11:28:17 4563

原创 linux slab分配小块内存

linux 内核 slab kmem cache

2022-07-26 14:53:33 306

原创 编译openEuler embedded镜像

linux openEuler 22.03LTS openEuler embedded编译 测试

2022-07-22 15:56:14 1314

原创 linux 内核 dump_page

linux kernel dump_page

2022-07-20 16:58:46 794

原创 openEuler 使用coredumpctl调试进程core

openEuler core文件 调试

2022-07-20 11:51:14 1339 1

翻译 Ways to reclaim unused page-table pages

翻译

2022-07-19 16:59:22 160

原创 kylin v10部署 ceph 14.2.22问题记录

ceph 部署

2022-07-15 17:23:39 3121

原创 linux kmalloc 函数

异同点kmalloc分配的物理内存是连续的,vmalloc分配的物理内存可以不连续,但是虚拟地址空间连续。kmalloc既支持大块内存分配也支持小块内存分配,大块内存使用页面分配器,小内存使用slab分配器,而vmalloc用于大块内存分配器,并且最好分配内存大小是整页级的,否则会导致内存空间浪费。测试结果如下图所示,插入内核模块分配一块4M(阶数为10)大小的物理内存块,对应的阶数为10,阶数为10的内存块从548减少为547,删除内核模块回收内存块,阶数为10的内存块数量增加一,变为548。...

2022-07-15 15:25:53 2948

原创 openEuler 22.03LTS版本测试ebpf c编程hello world

openEuler ebpf c编程

2022-07-13 18:17:24 904 1

原创 openEuler 22.03LTS版本安装内核调试镜像vmlinux

openEuler 内核调试

2022-07-05 17:05:35 3649

原创 kprobe监控tcp_v4_connect

#include <linux/kernel.h>#include <linux/module.h>#include <linux/kprobes.h>#include <linux/init.h>#include <linux/uaccess.h>#include <linux/inet.h>#include <net/inet_sock.h>#include <linux/limits.h>.

2021-06-13 17:03:38 664 2

原创 解压内核vmlinuz工具kdress

https://github.com/elfmaster/kdress

2021-06-12 01:25:45 354

原创 高数笔记-第一章 函数与极限-9

第九节 连续函数的运算与初等函数的连续性连续函数的和、差、积、商的连续性定理 1 设函数f(x)f(x)f(x) 和 g(x)g(x)g(x) 在点 x0x_0x0​ 连续,则它们的和(差)f±gf\pm gf±g、积 f⋅gf\cdot gf⋅g 及商 fg\dfrac {f}{g}gf​ (当 g(x0)≠0g(x_0) \neq 0g(x0​)​=0时)都在点 x0x_0x0​连续.反函数的连续性定理 2 如果函数 y=f(x)y = f(x)y=f(x) 在区间 IxI_xIx​ 上

2021-04-24 10:32:19 199

原创 高数笔记-第一章 函数与极限-8

第八节 函数的连续性与间断点定义 设函数 y=f(x)y = f(x)y=f(x) 在点 x0x_0x0​ 的某一邻域内有定义,如果 lim⁡Δx→0Δy=lim⁡Δx→0[f(x0+Δx)−f(x0)]=0\lim\limits_{\Delta x \to 0}{\Delta y} = \lim\limits_{\Delta x \to 0}{[f(x_0 + \Delta x) -f(x_0)]} = 0Δx→0lim​Δy=Δx→0lim​[f(x0​+Δx)−f(x0​)]=0,那么就称函数 y=

2021-04-22 11:49:29 172

原创 高数笔记-第一章 函数与极限-7

第七节 无穷小的比较定义(1)如果 lim⁡βα=0\lim\limits{\dfrac {\beta}{\alpha}} = 0limαβ​=0,那么就说 β\betaβ 是比 α\alphaα 高阶的无穷小,记作 β=o(α)\beta = o(\alpha)β=o(α);(2)如果 lim⁡βα=∞\lim \dfrac{\beta}{\alpha} = \inftylimαβ​=∞,那么就说 β\betaβ 是比 α\alphaα 低阶的无穷小;(3)如果 lim⁡βα=c≠0\lim \d

2021-04-20 00:56:59 248

原创 高数笔记-第一章 函数与极限-6

第六节 极限存在准则 两个重要极限两个重要的极限(1)lim⁡x→0sin⁡(x)x=1\lim\limits_{x \to 0}{\dfrac{\sin(x)}{x}} = 1x→0lim​xsin(x)​=1(2)lim⁡x→∞(1+1x)x=e\lim\limits_{x \to \infty}{(1+\dfrac{1}{x})^x} = ex→∞lim​(1+x1​)x=e准则 111 如果数列{xn}\{x_n\}{xn​},{yn}\{y_n\}{yn​} 及 {zn}\{z_n\}{z

2021-04-19 00:54:44 300

原创 高数笔记-第一章 函数与极限-5

第五节 极限运算法则定理 1 两个无穷小的和是无穷小.推论 有限个无穷小之和也是无穷小.定理 2 有界函数与无穷小的乘积是无穷小.推论 1 常数与无穷小的乘积是无穷小.推论 2 有限个无穷小的乘积是无穷小.定理 3 如果lim⁡f(x)=A,lim⁡g(x)=B\lim\limits{f(x)} = A, \lim\limits{g(x)} = Blimf(x)=A,limg(x)=B,那么(1)lim⁡[f(x)±g(x)]=lim⁡f(x)±lim⁡g(x)=A±B\lim [f(x

2021-04-18 12:06:35 135

原创 高数笔记-第一章 函数与极限-4

第四节 无穷小与无穷大无穷小定义 1 如果函数f(x)f(x)f(x) 当x→x0x \to x_0x→x0​(或 x→∞x \to \inftyx→∞)时的极限为零,那么称函数f(x)f(x)f(x)为当x→x0x \to x_0x→x0​(或x→∞x \to \inftyx→∞)时的无穷小。定理 1 在自变量的统一变化过程x→x0x \to x_0x→x0​ (或 x→∞x \to \inftyx→∞)中,函数f(x)f(x)f(x)具有极限AAA的充分必要条件是f(x)=A+αf(x) =

2021-04-14 23:42:56 284

原创 高数笔记-第一章 函数与极限-3

第三节 函数的极限函数极限的定义1 . 自变量趋于有限值时函数的极限定义 1 设函数f(x)f(x)f(x)在点x0x_0x0​的某一去心邻域内有定义. 如果存在常数AAA,对于任意给定的正数ε\varepsilonε,总存在正数δ\deltaδ,使得当xxx满足不等式0<∣x−x0∣<δ0<|x - x_0|<\delta0<∣x−x0​∣<δ 时,对应的函数值f(x)f(x)f(x)都满足不等式∣f(x)−A∣<ε|f(x) -A| < \varep

2021-04-13 00:50:02 335

原创 高数笔记-第九章 多元函数微分法及其应用-2

第九章 多元函数微分法及其应用第二节 偏导数偏导数的定义及其计算法二元函数z=f(x,y)z = f(x, y)z=f(x,y)对于xxx的偏导数有如下定义:定义 设函数z=f(x,y)z = f(x, y)z=f(x,y) 在点(x0,y0)(x_0, y_0)(x0​,y0​)的某一邻域内有定义,当yyy固定在y0y_0y0​而xxx在x0x_0x0​处有增量Δx\Delta xΔx时,相应地函数有增量f(x0+Δx,y0)−f(x0,y0)f(x_0 + \Delta x, y_0) - f

2021-04-12 01:15:07 1466

原创 使用expect命令免交互登录root

/usr/bin/expect -c 'spawn /bin/su -; expect "Password: "; send “passwordxxxx\n”; interact ’

2021-04-11 16:47:39 161

原创 高数笔记-第九章 多元函数微分法及其应用-1

第九章 多元函数微分法及其应用第一节多元函数的基本概念平面点集坐标平面:R2=R×R={(x,y)∣x,y∈R}R^2 = R \times R = \{(x, y) | x, y \in R\}R2=R×R={(x,y)∣x,y∈R}平面点集:坐标平面上具有某种性质PPP的点的集合E={(x,y)∣(x,y)具有性质P}E = \{(x, y)|(x,y)具有性质P\}E={(x,y)∣(x,y)具有性质P}例子:平面上以原点为中心、rrr为半径的圆内所有点点集合是C={(x,y)∣x2+y2

2021-04-10 21:55:05 1638

原创 linux进程CPU使用率高问题定位

使用工具:perf,FlameGraph操作流程:$ perf record -e cycles -g –call-graph dwarf –p pid –o perf_browse.datactrl+c结束执行(执行时间越长采样数据也越大,可能导致后面分析存在问题。),在当前目录下会生成进程ID为pid的采样数据perf_browse.data。执行完成后可以先用perf report命令查看下,确认下有没有错误。$ perf report -g -i perf_browse.data$

2021-02-18 20:54:27 260 1

深入Linux内核架构.pdf

深入Linux内核架构.pdf 高清 英文版

2013-01-07

操作系统:精髓与设计原理.Operating.Systems.Internals.and.Design.Principles

操作系统:精髓与设计原理.Operating.Systems.Internals.and.Design.Principles.zip ) 高清 pdf

2013-01-07

数学建模讲义历年数学建模真题

数学建模历年真题详解,数学建模讲义,数学建模全国竞赛

2011-05-08

空空如也

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

TA关注的人

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