Linux
cjwsimple
这个作者很懒,什么都没留下…
展开
-
Ubuntu12.04 163源修改记录
1,备分sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份下当前的源列表)2,修改sudo gedit /etc/apt/sources.list (打开Ubuntu 12.04源列表文件)3,163源deb http://mirrors.163.com/ubuntu/ preci原创 2013-12-30 09:47:33 · 766 阅读 · 0 评论 -
Linux 编译的四个阶段
这个过程主要指的是:源程序到可执行的二进制代码这整个过程四个阶段主要是:1.预处理阶段2.编译阶段3.汇编阶段4.链接阶段四个阶段的详细信息如下:1.预处理阶段主要执行展开源文件里的宏,插入include包含的文件.2.编译阶段.检查代码的规范性、是否具有语法错误等,并把预处理的文件编译成可读汇编代码即.s文件.另外说原创 2014-10-23 09:54:40 · 1278 阅读 · 0 评论 -
Android 按键代码分析
S5PV310的矩阵按键接口看一下芯片上的专用接口,如下图,全用的话有点多。关于专用接口的寄存器,这些寄存器我们后面要用得到的,按键的行、列信息会在这里面暂存的。以S5PV310为例,驱动代码:samsung-keypad.c软件部分:总体流程图如下,这个是在触摸屏基础上改过来的,感觉流程都是这个样子的。中断触发,中断处理转载 2014-10-23 10:00:41 · 1233 阅读 · 0 评论 -
当两台LINUX主机之间要互传文件时可使用SCP命令来实现
当两台LINUX主机之间要互传文件时可使用SCP命令来实现 复制文件: (1)将本地文件拷贝到远程 scp 文件名 --用户名@计算机IP或者计算机名称:远程路径 (2)从远程将文件拷回本地 scp --用户名@计算机IP或者计算机名称:文件名 本地路径复制目录:(1)将本地目录拷贝到远程 scp -r 目录名 用户名@计算机IP或者计算机名称:远程路径原创 2014-09-04 13:35:28 · 1012 阅读 · 0 评论 -
linux下编译MTK android的环境搭建
其他参考wangzhhttp://jingyan.baidu.com/article/624e7459abb8eb34e8ba5aa2.html原创 2014-10-15 14:56:16 · 2404 阅读 · 0 评论 -
安卓驱动入门网站记录
http://www.linuxidc.com/Linux/2011-07/38979.htm原创 2014-06-23 15:38:00 · 992 阅读 · 0 评论 -
Linux 内核学习的相关资源
内核文档 内核代码中包含有大量的文档,这些文档对于学习理解内核有着不可估量的价值,记住,在任何时候,它们在我们心目中的地位都应该高于那些各式的内核参考书。下面是一些内核新人所应该阅读的文档。 README 这个文件首先简单介绍了Linux内核的背景,然后描述了如何配置和编译内核,最后还告诉我们出现问题时应该怎么办。 Documenta转载 2015-01-09 16:44:42 · 614 阅读 · 0 评论 -
Linux 驱动开发记录
1,linux v4l2基础变成原创 2015-01-04 11:11:47 · 457 阅读 · 0 评论 -
Linux中断处理驱动程序编写
Linux中断处理驱动程序编写 中断与定时器:中断的概念:指CPU在执行过程中,出现某些突发事件急待处理,CPU暂停执行当前程序,转去处理突发事件,处理完后CPU又返回原程序被中断的位置继续执行中断的分类:内部中断和外部中断内部中断:中断源来自CPU内部(软件中断指令、溢出、触发错误等)外部中断:中断源来自CPU外部,由外设提出请求屏蔽中断和不可屏蔽中断:转载 2014-12-23 21:54:52 · 2189 阅读 · 0 评论 -
Linux V4L2基础编程
1. 定义V4L2(Video For Linux Two) 是内核提供给应用程序访问音、视频驱动的统一接口。2. 工作流程:打开设备-> 检查和设置设备属性-> 设置帧格式-> 设置一种输入输出方法(缓冲 区管理)-> 循环获取数据-> 关闭设备。3. 设备的打开和关闭:#include int open(const char *device_name, in转载 2015-01-04 11:12:44 · 622 阅读 · 0 评论 -
Linux C -线程编程
Linux--线程编程进程 系统中程序执行和资源分配的基本单位 每个进程有自己的数据段、代码段和堆栈段 在进行切换时需要有比较复杂的上下文切换 线程 减少处理机的空转时间,支持多处理器以及减少上下文切换开销, 比创建进程小很多 进程内独立的一条运行路线 处理器调度的最小单元,也称为轻量级进程可以对进程的内存空间和资源进行访问,并与转载 2015-03-31 13:29:54 · 624 阅读 · 0 评论 -
Android Qcril
enter_pinvendor/qcom/proprietary/qcril/qcril_original/qcril.cqcril_hash_table_lookup( (uint32) request, &entry_ptr );qcril_dispatch_event( entry_ptr, ¶ms )原创 2015-04-07 10:15:43 · 920 阅读 · 0 评论 -
机器码与汇编代码对应方法
1, 拿到机器码,写到c语言文件中int main(){ __asm__ __volatile__ (".byte 0x66, 0xf, 0x3a, 0xf, 0xd1, 0x4, 0x8d, 0x7f, 0x20, 0x66, 0xf, 0x7f, 0x54, 0x3a, 0xe0, 0x66");}2, gcc -m32 a.c 生成a.out3,objdump -d a原创 2017-12-20 14:34:23 · 6532 阅读 · 1 评论 -
Linux-kernel-bitmap
bitmap节约内存,用一个位去表示两种状态.对于数据量比较多的开关量非常适用。linux提供了相关的接口进行初始化和操作bitmap.include/linux/types.h#define DECLARE_BITMAP(name,bits) \ unsigned long name[BITS_TO_LONGS(bits)]bitmap_set函数原型:void bitmap_set(...转载 2018-06-06 16:48:24 · 910 阅读 · 0 评论 -
Linux用户空间与内核空间
Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数据可能不在内存中。Linux内核地址映射模型x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存转载 2014-09-02 19:47:41 · 502 阅读 · 0 评论 -
Linux中的gpio口使用方法
Linux中的IO使用方法 应该是新版本内核才有的方法。请参考:./Documentation/gpio.txt文件提供的API:驱动需要包含 #include 判断一个IO是否合法:int gpio_is_valid(int number);设置GPIO的方向,如果是输出同时设置电平:/* set as input or output, returning转载 2014-09-24 13:54:18 · 1351 阅读 · 0 评论 -
GIT摸索学习
创建版本库 git init本地添加索引和提交 git add 1.txt git commit -m '1.txt'显示git日志 git log恢复最近一次提交状态 git checkout 1.txt浏览本地分支 git branch创建本地分支 git branch new-branch切换原创 2013-12-30 15:50:45 · 636 阅读 · 0 评论 -
Linux2.6内核驱动移植参考
1、 使用新的入口 必须包含 module_init(your_init_func); module_exit(your_exit_func); 老版本:int init_module(void); void cleanup_module(voi); 2.4中两种都可以用,对如后面的入口函数不必要显示包含任何头文件。2、 GPL MODULE_LICENSE(转载 2013-12-27 16:31:18 · 641 阅读 · 0 评论 -
LCD驱动
1.S3C2440上LCD驱动 (FrameBuffer)实例开发讲解其中的代码也可直接参考:drivers/video/s3c2410fb.c以下为转载文章,文章原地址:http://blog.csdn.net/jianyun123/archive/2010/04/24/5524427.aspxS3C2440上LCD驱动 (FrameBuffer)实例开发讲解一、转载 2014-02-10 17:46:49 · 930 阅读 · 0 评论 -
linux命令码(_IO宏)
在ioctl.h头文件中定义了命令码命令码用一个32位的整型数表达bit29~31表示命令传输的方向,bit16~29记录要传输的数据的大小,bit8~15表示设备类型(一般用一个ASCII表示),bit0~7表示命令编号其中数据大小可以和方向的bit29重叠29位是特殊位,因为无方向定义值为1也就是无方向的时候会占用第29位,无方向就无所谓数据传输,所以携带数据大转载 2014-02-13 22:23:27 · 875 阅读 · 0 评论 -
device number(dev_t)
device number(dev_t)dev_tdescription: the dev_t type in is used to hold device numbers—both the major and minorparts.header: #includeconstructor: MKDEV(int major,转载 2014-02-13 22:26:05 · 866 阅读 · 0 评论 -
Linux设备驱动之Ioctl控制
Linux设备驱动之Ioctl控制 大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力。 一、在用户空间,使用ioctl系统调用来控制设备,原型如下:int ioctl(int fd,unsigned long cmd,...);/*fd:文件描述符cmd:控制命令...:可选参数:插入*argp,具体内容依赖于cmd*/ 用户程序所作的转载 2014-02-13 22:09:54 · 822 阅读 · 0 评论 -
Linux API函数总结
(一)文件操作篇 1、creat(建立文件)头文件1 #include 2 #include 3 #include定义函数1 int creat(const char * pathname, mode_tmode);函数说明参数pathname指向欲建立的文件路径字符串。creat()相当于使用下列的调用方式调用open()1 o原创 2014-06-23 15:02:33 · 1132 阅读 · 0 评论 -
linux 下格式化 SD卡
在linux下面给sd卡分区,格式化是非常轻松的。我安装的系统是ubuntu10.04。sd卡插上之后,自动mount了。所以,第一步,umount。$sudo -i 输入自己的密码取得root权限。# mount可以看到最后一行的设备号/dev/mmcblk0 on /media/60C5-3EC0 type vfat (rw,nosuid,nodev,uhelp转载 2014-07-03 11:44:22 · 1050 阅读 · 0 评论 -
linux分卷压缩解压学习记录
1.分卷压缩tar cvzpf - ALPS.JB3.MP.V1_CKT72_T_JB3_INHOUSE.tar.gz | split -d -b 300m上面的命令是将ALPS.JB3.MP.V1_CKT72_T_JB3_INHOUSE.tar.gz这个文件夹分卷压缩,每卷50m,注意ALPS.JB3.MP.V1_CKT72_T_JB3_INHOUSE.tar.gz前面有空格.压缩完之原创 2014-01-07 12:37:18 · 857 阅读 · 0 评论 -
Ubuntu 12.04搭建MTK 6577 安卓开发环境
Ubuntu 12.04搭建 MTK 6577安卓开发环境1. 下载并安装Vmware虚拟机;2. 下载并在虚拟机上安装Ubuntu 12.04 iso 安装包:下载地址: http://releases.ubuntu.com/12.04/ ;3. 更新Ubuntu 源:① sudo cp /etc/apt/sources转载 2014-09-10 11:26:19 · 885 阅读 · 0 评论 -
Linux 多线程编程
1.Linux“线程” 进程与线程之间是有区别的,不过Linux内核只提供了轻量进程的支持,未实现线程模型。Linux是一种“多进程单线程”的操作系统。Linux本身只有进程的概念,而其所谓的“线程”本质上在内核里仍然是进程。 大家知道,进程是资源分配的单位,同一进程中的多个线程共享该进程的资源(如作为共享内存的全局变量)。Linux中所谓的“线程”只是在被创建时clone转载 2014-08-28 10:15:49 · 526 阅读 · 0 评论 -
Linux驱动--函数,宏,结构体理解记录
1,contain_of 在学习Linux驱动的过程中,遇到一个很好玩的内核函数,准确的说是一个很好玩的宏,叫做container_of。该宏定义在include/linux/kernel.h中,首先来贴出它的代码:439/**440 * container_of - cast a member of a structure out to the containi原创 2014-06-23 17:18:31 · 818 阅读 · 0 评论 -
Linux C 生成随机数
生成随机数#include<time.h> #include<stdio.h> #include<stdlib.h> main() { int i,j; srand((int)time(0)); for(i=0;i<10;i++) { ...原创 2017-12-28 14:11:37 · 697 阅读 · 0 评论