
鸿蒙 LiteOS-A
文章平均质量分 61
csdndulala
这个作者很懒,什么都没留下…
展开
-
【代码技巧】【C语言】鸿蒙 openHarmony 代码中的“多态”
问题1:因为(*(SyscallFun1)handle)的强转将handle转化为了有一个入参的函数,所以就算handle对应SyscallFun0的类型,也不会编译报错。入参,因此,当handle是SyscallFun0的类型时,虽然regs->R0已经在栈中了,但是handle执行中并不会去使用它。那么问题又来了,顺着这种思路,case就不需要区分了, 统一按照最长入参个数的函数类型来调用即可。问题2:函数调用前,会将指定的入参入栈,在函数执行中,去栈中取。问题2:函数调用为何能正常工作?原创 2023-09-19 12:42:34 · 331 阅读 · 0 评论 -
鸿蒙 小型系统内核(LiteOS-A)qemu仿真
我一开始下载的3.0全量代码,但是3.0代码编译有bug(bug网上能搜到但是看不到解决方法…),不过好在手动解决了(一个是生成smallmmc.img的bug,还有hb启动的bug。这里建议下载最新的全量代码(但是有27G),PS:1 执行qemu_run时需要加上-f选项 2 我使用的3.1的脚本,由于docker没有安装qemu,所以qemu指令未在docker内执行。但是qemu_run.sh会用到docker中hb的命令,可以修改qemu_run.sh,将通过hb命令获得的结果写死在sh脚本。原创 2023-10-28 18:39:53 · 382 阅读 · 0 评论 -
鸿蒙 小型系统内核(LiteOS-A)shell代码流程
本文期望将shell代码从启动到运行的逻辑理清。背景知识:shell分为app和内核部分(\apps\shell 和 \shell\full)app部分作为shell的入口,接受客户端的命令-》陷入内核执行shell的底层处理shell模块初始化的顺序:内核shell初始化-》app shell初始化。原创 2023-09-28 14:53:35 · 528 阅读 · 0 评论