乱七八糟
Strugglingler
这个作者很懒,什么都没留下…
展开
-
#!/bin/bash与 #!/bin/sh 傻傻分不清?
在Unix-like系统中,脚本语言通常使用所谓的shebang(或hashbang,符号为#!)来指定脚本解释器。它告诉系统应该使用哪个程序来解释和执行脚本。/bin/sh:这指定了脚本应当使用shell的sh版本来执行。sh是Bourne shell的缩写,是Unix系统中最初的脚本语言解释器。这个shebang一行告诉系统,该脚本是一个shell脚本,并且应当使用默认的shell来执行,通常是sh或bash(如果sh不可用)。原创 2024-03-22 11:51:48 · 149 阅读 · 0 评论 -
内核代码中打印指针用%p行吗?
总结一下:没有指定扩展名的指针(即没有修饰符的%p)被哈希(hash)了,以防止内核内存布局消息的泄露。结果发现第二行的%p打印不出来,而是一个特定的字符串。很奇怪,开始百度之路。找到了一个介绍这个的。原创 2024-03-17 21:57:55 · 230 阅读 · 0 评论 -
【devmem2】
32bit值(WIDTH默认等于32, 可选值为[8, 16, 32, 64]):在地址0x97000000读取16bit值。写入:在地址0x97000000。32bit值0x7777ABCD。在地址0x97000000。现在还没使用,用到再更。原创 2024-03-10 20:51:38 · 240 阅读 · 0 评论 -
/proc/iomem 目录
proc/iomem 是一个虚拟文件系统,在 Linux 操作系统中用于显示内核映射的 I/O 内存地址空间。这个文件系统是只读的,并且提供了关于系统所有 I/O 内存映射的信息。其中 System RAM 对应的是DDR物理内存。其中通过缩进展示了包含关系。原创 2024-03-10 20:34:33 · 142 阅读 · 1 评论 -
标准IO与系统IO
标准IO与系统调用IO。标准IO相关函数:fopen/fread/fwrite/fseek/fflush/fclose系统调用IO相关函数:open/read/write/lseek/fsync/close注:系统调用接口符合POSIX(Portable Operating System Interface for uinX-like system)规则,调用系统调用接口会陷入内核。标准IO为在系统IO基础上引出的函数,核心点为在调用系统IO前引入了用户Buffer。原创 2024-03-09 10:01:04 · 120 阅读 · 0 评论 -
【jiffies变量】
所以以jiffiy为单位,以当前时刻为基准计时2秒:(jiffies / HZ + 2) * HZ = jiffies + 2 * HZ。如此,可以通过jiffies获取一段时间,比如jiffies/HZ表示自系统启动的秒数。下两秒就是(jiffies/HZ+2)。参考链接:https://zhuanlan.zhihu.com/p/556944786。每秒中产生多少个定时器中断,由在<linux/param.h>中定义的HZ宏来确定。jiffies是内核中关于时间的一个重要概念,是内核时钟的基础。原创 2024-03-09 09:58:11 · 146 阅读 · 0 评论 -
Linux报 “illegal instruction” 异常的原因以及解决办法
当 Linux 上的程序收到 “Illegal instruction” 错误时,它表示正在尝试执行一种不支持的 CPU 指令,通常是由于使用了错误的 CPU 架构导致的。原创 2024-03-09 09:54:03 · 1989 阅读 · 0 评论