当前位置: 首页 > wzjs >正文

前端搜索网站引擎怎么做疫情最新政策最新消息

前端搜索网站引擎怎么做,疫情最新政策最新消息,wordpress连接失效,建设网站的技巧实现自定义系统调用 如何使用 QEMU 模拟32位 ARM 环境参考:使用Qemu模拟32位ARM系统 修改linux内核源码 使用 linux-4.4.240 源码,下载链接:下载链接 在 arch\arm\include\uapi\asm\unistd.h 文件下新增系统调用 sys_test: /…

实现自定义系统调用

如何使用 QEMU 模拟32位 ARM 环境参考:使用Qemu模拟32位ARM系统

修改linux内核源码

使用 linux-4.4.240 源码,下载链接:下载链接

arch\arm\include\uapi\asm\unistd.h 文件下新增系统调用 sys_test

//added sys call
#define __NR_sys_test         	(__NR_SYSCALL_BASE+391) 

在这里插入图片描述
kernel/sys.c 添加系统调用函数 sys_test

//new sys_call sys_test
asmlinkage int sys_test(char * str, int count){int ret; char buf[256] = {0};if(count >= 256){ return -1; } ret = copy_from_user(buf, str, count);printk("[systest] Hello, %s. This is Kernel systest!\n", buf);return ret;
}

在这里插入图片描述

include/linux/syscalls.h 中添加 sys_test 的函数声明:

//new sys_call sys_test
asmlinkage int sys_test(char * str, int count);

在这里插入图片描述

arch/arm/kernel/calls.S 中添加 CALL(sys_test)

CALL(sys_test)

在这里插入图片描述

重新编译内核

依次执行

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- vexpress_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j$(nproc)

测试系统调用

在共享目录 share 下,创建测试代码 sys_test.c

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <linux/kernel.h>
#include <sys/syscall.h>
#include <string.h>int main ()
{char * buffer = "i am dinggongwurusai";int ret;ret = syscall(391, buffer, strlen(buffer)+1);printf("syscall ret: %d\n", ret);return 0;
}

采用静态链接的方式编译程序:

arm-linux-gnueabi-gcc sys_test.c -o app -static

qemu模拟启动

qemu-system-arm \-M vexpress-a9 \-m 512M \-kernel /home/wurusai/workspace/linux-4.4.240/arch/arm/boot/zImage \-dtb /home/wurusai/workspace/linux-4.4.240/arch/arm/boot/dts/vexpress-v2p-ca9.dtb \-nographic \-append "root=/dev/mmcblk0 rw console=ttyAMA0" \-drive file=rootfs.ext3,format=raw,if=sd,readonly=off \-fsdev local,id=host0,path=./shared,security_model=passthrough \-device virtio-9p-device,fsdev=host0,mount_tag=host0

进入共享目录 /mnt/shared ,执行程序 app
在这里插入图片描述

调用自定义系统调用 sys_test 成功。

注意:

对于大部分遇到的问题都参考 使用Qemu模拟32位ARM系统

http://www.dtcms.com/wzjs/511687.html

相关文章:

  • 基于网站开发小程序学软件开发学费多少钱
  • 好看的网站建设杭州新站整站seo
  • 如何看一个网站是谁做的seo营销培训咨询
  • 南昌做网站的公司有哪些浙江网站推广
  • 盐山县做网站价格网站收录免费咨询
  • 做网站犯法网络营销的主要传播渠道是
  • wordpress规则什么是seo营销
  • 哪个网站可以做图片小网站关键词搜什么
  • 如何把做的网站放到百度上百度手机版
  • 室内设计网站集合友链交换
  • 山西做网站怎么做百度竞价排名怎么靠前
  • wordpress批量拿站谷歌浏览器app下载安装
  • 做互联网小程序 和网站有没有前景商城全网推广运营公司
  • 低价格制作网站软文推广发布
  • 应用公园app制作平台云优化
  • 做投资的网站班级优化大师怎么加入班级
  • 劲松做网站的公司网络营销的核心是用户吗
  • 做网站要空间还是服务器网站联盟广告
  • 服务好的合肥网站建设seo如何优化网站步骤
  • 网站系统开发报价单什么是百度快照
  • 网站主页制作seo标题关键词怎么写
  • 扬州哪家公司做网站比较好成人英语培训
  • 新疆 网站建设广州网络科技有限公司
  • 2网站建设公司北京seo优化厂家
  • 如何做网站优化百度400电话
  • 郑州做网站熊掌号广州番禺发布
  • 昆明软讯科技网站建设清理大师
  • 网站建设公上海谷歌seo
  • 网络推广网站制作市场营销分析案例
  • 常见的网站类型有百度网盘帐号登录入口