开发环境:

Redhat6.5

开发板:

Tiny4412 (ARM Cortex A9)

1. 系统调用概述

系统调用请点击 系统调用概述

2. 实现系统调用的步骤

添加一个系统调用比较简单,下面以添加add函数来讲解下添加过程

2.1  添加系统调用号

[root@deng linux-3.5]# vim arch/arm/kernel/calls.S

378 代表系统调用号  CALL是宏  sys_my_add是函数指针

2.2  添加系统调用相关宏的声明

注意: 378系统调用号不能写错

2.3 实现新添加的系统调用

[root@deng linux-3.5]# vim arch/arm/kernel/sys_arm.c

2.4 重新编译内核

[root@deng linux-3.5]# make -j4

编译完成之后,将要重新烧写内核到指定的falsh中

2.5 测试

测试方法有两种: 第一种通过内核驱动模块的方式测试 第二种通过应用程序测试

【内核驱动】 内核驱动中添加系统调用相关推荐

  1. MIPS(loongson)linux 中添加系统调用

    在基于MISP(loongson)架构处理器与基于 x86 架构处理器的 linux 内核中添加系统调用时更改的文件是不同的,x86 中需要更改 arch/x86/kernel/syscall_tab ...

  2. 在内核中添加系统调用

    前面我们学习了在内核中添加自己的代码,这次我们在内核中添加一个自己的系统调用,就像open/close一样的函数! 当我们应用程序调用open close函数时: open close函数是经过lib ...

  3. linux内核syscall_define6,linux中添加系统调用

    1)在内核里添加系统调用,函数形式是:asmlinkage type sys_func_name(...) 2)在文件include/asm-arm/unistd.h里面添加 define __NR_ ...

  4. Linux内核2.6.34.14添加系统调用及编译方法(CentOS-6.4-x86_64)

    <?xml version="1.0" encoding="UTF-8"?> //我添加系统调用步骤,仅供参考,尤其是系统调用的实现部分,建议大家自 ...

  5. 粤嵌实验板 linux 环境,粤嵌linux基础入门学习 linux系统中添加系统调用

    linux系统中添加系统是怎样调用的?从linux基础入门学习出发,一起来看看: 1.每个体系下面均有对应的系统调用列表: arch/arm/kernel/calls.S 在最后添加一个新的系统调用标 ...

  6. linux 3.5.0-23-generic内核版本系统调用数目,Linux操作系统分析(三)- 更新内核与添加系统调用...

    环境:Ubuntu 12.10     学号:SA****199 1.更新内核: 直接安装的系统内核版本一般不是最新,用 uname -a 查看一下 自己的版本,OK,我的是: Linux chenh ...

  7. Linux-0.11内核学习-添加系统调用

    1.参考资料 赵炯博士的网站oldlinux Linux内核完全注释 Linux0.11 源码 2.概要 操作系统作为软件应用层和底层硬件之间的部分,向下提供服务,向上提供接口.系统调用便是操作系统向 ...

  8. NVIDIA Jetson TX2 内核中添加 CP210x 串口驱动

    说明:本文的核心内容是围绕版本为 L4T 27.1 的内核编译过程.如果内核版本是 L4T 28.1 ,则可移步这篇文章: 编译 L4T 28.1,这两个版本的编译步骤几乎一样. 问题背景: 最近在 ...

  9. i.MX 6ULL 驱动开发 二十九:向 Linux 内核中添加自己编写驱动

    一.概述 Linux 内核编译流程如下: 1.配置 Linux 内核. 2.编译 Linux 内核. 说明:进入 Linux 内核源码,使用 make help 参看相关配置. 二.make menu ...

最新文章

  1. 解析自动驾驶算法四大模块的问题与后续发展
  2. 条件随机场CRF HMM,MEMM的比较
  3. 路由设计技术基础(Fundamentals of routing design technology)
  4. springboot获取sessionid_Spring Boot 整合Redis, 用起来真简单!
  5. 02 | 服务治理:Nacos 如何实现微服务服务治理
  6. jQuery下table操作示例(附案例源码)
  7. 第二章 findxargs
  8. jenkins 部署问题
  9. 如何快速把音乐转成MP3格式
  10. 企业网站 源码 e-mail_临汾网站制作,B2B软件哪家好
  11. 电子工业出版社博文视点在上海第六届UPA中国用户可用性大会上
  12. 数据表--excel的读取案例
  13. Electron-forge使用实战
  14. 计算机策略组无法打开怎么办,Win10系统gpedit.msc组策略打不开怎么解决
  15. 来,同学,坐下,谈谈对Dex文件的认识
  16. 易用的两个OCR(图像文字识别提取)开源项目
  17. CMFCMenuBar 的另类动态修改
  18. 推荐一个易学预测、学术研讨、资源分享网站:龙腾易学网
  19. 一些调格式的经验 插入图注和尾注
  20. 企业上云要几步?中拓互联奉送企业上云全攻略

热门文章

  1. MFC 问题集(4)CListCtrl
  2. Java黑皮书课后题第3章:**3.9(商业:检验ISBN-10)ISBN-10由10个个位整数d1d2d3d4d5d6d7d8d9d10组成,最后一位d10是校验和,输入前9个数,显示10位ISBN
  3. Java黑皮书课后题第2章:2.9(物理:加速度)平均加速度定义为速度的变化量除以这个变化所用的时间,编写程序,提示用户输入以米/秒为单位的起始速度v0,以米/秒为单位的终止速度v1,显示平均加速度
  4. java web中align命令_java web开发
  5. 7.1使用Request获取HTTP请求头
  6. (转)Linux内核参数之arp_ignore和arp_announce
  7. 坑爹的jquery ui datepicker
  8. (002)每日SQL学习:删除名称重复的数据
  9. Hadoop_计算框架MapReduce
  10. SQL Server学习之路(五):“增删改查”之“改”