Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

学习Linux内核模块编写总结

学习Linux内核模块编写总结

在学习编写Linux内核模块的时候我们首先要清楚的知道内核模块的作用,为什么要使用内核模块?这是因为Linux内核的整体结构非常的庞大,包含的组件也非常的多,把所有的内核模块都编译到Linux内核,会导致的问题是内核很大,同时在现有的内核新增或删除部分功能时,不得不重新编译内核,可谓相当的费时。而模块的使用就是为了解决这一问题,即动态的在内核中添加或者删除相应功能。下面以一个经典的代码来看是相关的分析:#include #include MODULE_LI...
Linux下C编程习惯

Linux下C编程习惯

大学期间刚开始学习C语言时,我对于编程的要求不屑一顾,所以别人在参考我的代码的时候总是会说我写的“太乱”,当初我自己对于代码的要求就是自己能懂就行了。当我要踏入社会的时候我发现我必须要改掉这个不好的习惯,因为工作后不是简简单单的只要自己看懂就行了!下面就来简单的介绍我在linux下编程所学的一些规范的写法吧。1.宏定义的名称每个字母都用大写,名字要体现它在代码中的含义,例如:#difine PI 3.14159262.函数的命名尤其要有特点,单凭从函数名就...
从零开始RMI编程开发:HelloWorld

从零开始RMI编程开发:HelloWorld

本章使用经典的HelloWorld程序来作为RMI开发的第一篇,对于理论知识,笔者在这里也不做过多的阐述,主要目的通过HelloWorld这个经典的程序来说明在windows下的RMI开发的一些基本步骤.笔者也是刚接触RMI,有什么差强人意的地方请各位大虾们口下留情。 RMI技术 1.0:HelloWorld(jdk1.5以前版本) —创建远程接口:Hello packageorg.tony.rmi.demo; importjava.rmi.Remote;...
qt-embedded-linux-opensource-src-4.5.1成功移植到micro2440

qt-embedded-linux-opensource-src-4.5.1成功移植到micro2440

开发环境OS:Fedora 8GCC:4.3.0交叉编译:arm-linux-g++ 4.2.3Qt版本 qt-embedded-linux-opensource-src-4.5.1.tar.gz触摸屏 tslib1.4在此过程中我也参考了很多其他的方法但是linux不同的机子不同的环境不可能完全照搬,我几乎把网上所有能找到的关于qt移植的都找遍了通过一周的痛苦摸索,才弄出来希望下面的东西能给大家一点点帮助一个人痛苦摸索是多么的痛苦啊1. 首先安装交叉编译...
MPlayer在ARM2440开发板的移植

MPlayer在ARM2440开发板的移植

MPlayer 1.0已经把大部分解码库都自带了,如ffmpeg,但是自带的音频库在S32440下效果非常不好.换成使用libmad效果不错.因此MPlayer在ARM-Linux的最简单的移植只需要移植这两个即可.移植后即进行字符界面的播放.ARM的版本由我学生程磊最早运行成功.但完整版本需要如下库. 如果需要字幕支持.需要移植freetype库.支持JPG皮肤需要 libjpeg库,打开DVD光盘格式,需要dvdread,dvdnav等,支持pnm库需...
Linux内核移植基本框架

Linux内核移植基本框架

一.获得Linux源码二.解压系统源码解压命令Gzip -v rootfile 压缩一个文件rootfileGunzip rootfile.gz 解压缩一个文件Tar命令既可以压缩文件也可以解压缩文件,决定于tar 命令后面所跟参数-A将文件添加到现有的tar包-c表示创建新的tar包-t列出tar包中的内容-x从tar包中解压文件-f指定tar文件的名称-j用bzip2/bunzip2来压缩和解压tar包,后缀为.tar.bz2-z用gzip/gunzi...
Android权限之三共享UID和签名

Android权限之三共享UID和签名

共享UID安装在设备中的每一个Android包文件(.apk)都会被分配到一个属于自己的统一的Linux用户ID,并且为它创建一个沙箱,以防止影响其他应用程序(或者其他应用程序影响它)。用户ID 在应用程序安装到设备中时被分配,并且在这个设备中保持它的永久性。通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中.所以默认就是可以互相访问任意数据. 也可以配置成运行成不同的进程, 同时可以访问其他APK的数据目录...
Android权限之二packages.xml解析

Android权限之二packages.xml解析

/data/system/packages.xml这个文件由PackageManagerService.java生成,里面记录了系统当中安装的APK的所有属性,权限等信息。当系统中的APK安装、删除、升级时,文件就会被更新。<permissions>标签定义了目前系统中定义的所有权限。主要分为两类:系统定义的(package属性为Android)和APK定义的(package属性为APK的包名)。<package>代表一个APK的属...
Android中KeyEvent的生命周期

Android中KeyEvent的生命周期

1、生成存在这样一个线程,它不断地从driver读取Event,并把它放到RawEvent队列中。这个队列中的RawEvent既有按键,也有触摸、轨迹球等事件。RawEvent队列中的每个RawEvent最后都会通过一系列转化,最终变为KeyEvent被发送给另外一个线程,即输入线程,也就是一个Activity的主线程。2、传递KeyEvent传递过程主要可以划分为三步:过滤器、View树、Activity过滤器部分主要对应着PhoneWindowMana...
Android应用程序中用Java创建本地进程来执行C/C++程序

Android应用程序中用Java创建本地进程来执行C/C++程序

大致分为五步:创建环境、建立连接、发送数据、读取结果、释放资源。下面我们以打开一个shell进程,在进程中执行pwd命令,然后退出为例,来看一下整个过程。1、创建环境主要有两个:执行程序和当前目录。这个和在命令行下执行一个普通的Linux程序一样,先有一个当前目录,然后在当前目录下面调用要执行的程序。我们运行pwd的话,就需要在一个目录下启动shell进程。当前目录我们可以随便选一个。这里选根目录。ProcessBuilder pb = new Proce...
Linux共享内存+信号量编程示例

Linux共享内存+信号量编程示例

写在前面:最近被一本超级垃圾的书折磨够呛,书中的例子全是错的,不过幸好我不是初学者的水平。有几个例子还不错,但是书上的代码编译都不过,我折腾了很长时间才修改正确,发上来留着以后复习用。/*** 描述:通过共享内存进行进程间通信,使用信号量来同步.* 直接运行程序会启动服务端,会打印出shmid* 然后再启动并添加shmid这个参数即可启动客户端,然后即可进行通信* Created on: 2010-4-29* Author: QQwen* 开发环境: fc...
<< 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 >>