从未知扫描码到有用按键:在 Linux (NixOS) 上映射神秘按键 你是否遇到过这种情况:你的键盘上有一个按键(尤其是笔记本电脑上的特殊功能键),但无论你怎么按,系统都毫无反应?标准的按键测试工具,如 evtest 或 wev,似乎也完全忽略了它的存在。这可能令人沮丧,但别担心,通常有办法解决! 最近我就遇到了这样的问题(小米笔记本上的”小爱”键),通过一系列步骤成功让这个“沉默”的按键恢复了功能。 症状evtestsudo evtest /dev/input/b 2025-03-30
useful-things 替换一个目录下的/bin/bash替换为bash替换一个文件夹下所有文件中的 /bin/bash 为 bash: 1find /path/to/directory -type f -exec sed -i 's/\/bin\/bash/bash/g' {} + -type f:只选择文件。 -exec ... {} 2025-02-19
GitConventionalCommits Conventional Commits规范是一种用于编写清晰、标准化的提交信息的约定。它有助于自动化工具解析提交历史,生成版本日志和管理版本号。以下是该规范的一些关键点: 根据GitConventialCommits规范,git的提交信息可以简单写成: 12345<type>[optional scope]: <description>[optional body][op 2025-02-19
给NEMU移植Linux Kernel 文章内容可能会过时,请参考Github Repo Github Repo About这篇文章是从笔者的笔记整理而来, 比起“讲义”更像“博客” ,目前有许多东西都还没有完善(特别是linux driver的部分) 在笔者尝试给NEMU移植kernel的时候, 感到完全无从下手(也没发现CommandBlock老师的教程),过程中踩了非常多的坑,于是总结了这篇笔记 虽然大家更加建议的roadmap 2025-02-16
gdb-stub 和 Target Description 在尝试给NEMU移值linux的陷入的调试的黑洞,遂尝试nemu接入gdb GDB Stub在嵌入式系统中,由于目标设备可能没有足够的资源运行完整的 GDB,或者无法直接与开发者的主机连接,因此需要一个简化的代理程序来完成以下任务: 接收 GDB 的调试命令。 在目标设备上执行这些命令(例如设置断点、读取寄存器、修改内存等)。 将执行结果返回给 GDB 找到了一个非常简易的实现方式 https 2025-02-05
使用nix打包quardstar-qemu quardstar-tuorialquardstar-tutal 是一个从0开始构建嵌入式linux操作系统的教程, 他基于一个定制的qemu模拟器 之前没尝试过用nix打包程序,就借着这个机会试一试 结果1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 2025-01-19
nemu-riscv 特权指令杂谈 做PA的时候忽略了讲义上的一段话,导致做PA的时候苦苦调试了好两天的nemu/Spike(www) 如果你仔细RTFM, 你会发现标准RISC-V的分页机制需要在S模式及U模式下才能开启, 而在M模式下的访存并不会进行MMU的地址转换. 但我们在NEMU中进行了简化, 允许M模式的访存也进行地址转换, 这样可以避免引入S模式相关的细节, 让大家把注意力集中在分页机制本身. 但是, 既 2025-01-17 #RISCV #ysyx #PA
nix-devShell 中Boost 在nix-devshell里面遇到了CMAKE 需要依赖Boost::Asio 库 1configure: error: Could not find a version of the Boost::Asio library! 后来查到了有一个--with-boost-libdir选项,所以可以把boost传给环境变量 1234shellHook = '' export B 2025-01-14 #linux
rvdecoderdb的使用 chiselDSL(Domain-Specific Language) ChiselDecoder TODO RVDecoderDBrvdecoderDB 是一个chisel项目,它可以解析来自riscv-opcodes 的指令信息 安装,使用安装把rvdecoderdb的源代码clone下来然后加入build.sc的sources目录就行了 12345def sources = T.sourc 2025-01-12 #RISCV #ysyx #chisel
CR8809 前置条件 M79版CR8809 Linux系统 TTLtoUSB 想刷成OpenWRT 进查看光猫的管理员密码改桥接光猫的系统也有点离谱了, 密码直接明文存储在/tmp/ctromfile.cfg 里面 1234567891011nix-shell -p busybox telnet 2025-01-08 #linux