![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
luxiefly
这个作者很懒,什么都没留下…
展开
-
SHELL test 命令用法 .
原文地址:http://www.examw.com/linux/all/114976/index.htmltest命令用法。功能:检查文件和比较值 1)判断表达式 if test (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2 两个表达式都为真 test 表达式1 –o 表达式2转载 2013-11-18 09:48:15 · 455 阅读 · 0 评论 -
linux驱动学习过程
了解linux驱动程序技巧学习的方法很重要,学习linux操作系统时,你可能会遇到关于驱动方面的问题,这里将介绍学习linux驱动程序的方法,在这里拿出来和大家分享一下。 1.学会写简单的makefile 2.编一应用程序,可以用makefile跑起来 3.学会写linux驱动程序的makefile 4.写一简单char驱动,makefile编译通过,可以insmod,ls转载 2014-03-07 13:27:24 · 400 阅读 · 0 评论 -
linux cdev详解
linux cdev详解谨以此文纪念过往的岁月一.前言以前对于cdev仅仅是知其然,而不知其所以然。在本文中,将深入理解cdev的架构以及具体的实现。二.真实的cdev2.1 设备号搞驱动的都应该知道的东西,在写gpio驱动时,往往会用到以下两个函数。alloc_chrdev_region --自动分配设备号register_转载 2014-03-14 16:41:10 · 441 阅读 · 0 评论 -
对linux字符设备的理解(整体架构)
主要数据结构:struct cdev {struct kobject kobj; //内嵌的kobj,对象管理用struct module *owner; //模块const struct file_operations *ops; //文件操作struct list_head list;dev_t dev; //起始设备号unsigned int count; /转载 2014-03-17 10:47:34 · 427 阅读 · 0 评论 -
linux内核头文件
#include 是在linux-2.6.29/include/linux下面寻找源文件。#include 是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。#include 是在linux-2.6.29/arch/arm/mach-s3c2410/include/mach下面寻找源文件。#include在linux-2.6.31_转载 2014-03-18 14:05:40 · 442 阅读 · 0 评论 -
linux设备驱动作用
Linux设备驱动程序的作用简介设备 驱动程序就像一个个的“黑盒子”,使某个特定硬件响应一个定义良好的内部编程接口,这些操作完全隐藏了设备的工作细节。用户的操作通过一组标准化的调用执行,而这些调用独立于特定的驱动程序。将这些调用映射到作用于实际硬件的设备特有操作上,则是设备驱动程序的任务。 大多数编程可以分为两个部分:机制:需要提供转载 2014-03-18 14:09:17 · 1622 阅读 · 0 评论 -
linux驱动之LED
mini2440上LED对应的IO:LED1GPB5LED2GPB6LED3GPB7LED4GPB8低电平有效(点亮)寄存器:GPxCON设置端口功能(00表示输入,01表示输出,10表示特殊功能,11保留不用)转载 2014-03-20 16:43:43 · 339 阅读 · 0 评论 -
linux之进程空间等内存空间
作者:李强,华清远见嵌入式学院讲师。有这么几个问题,在上驱动课程的时候,我感觉一直困扰着同学们:● 用户程序编译连接形成的地址空间在什么范围内? ● 内核编译后地址空间在什么范围内? ● 要对外设进行访问,I/O的地址空间又是什么样的?于是就有了这篇文章,从大概上把内存相关知识点介绍一下,减少同学们在驱动课时对内存的困惑先回答第转载 2014-03-20 16:50:55 · 396 阅读 · 0 评论 -
linux驱动之内存与IO
MMU停供虚拟地址和物理地址的映射、内存访问权限保护和Cache缓存控制等硬件支持。操作系统内核借助MMU,可以让用户感觉到好像程序可以使用非常大的内存空间,从而使得编程人员在写程序时不用考虑计算机的物理内存的实际容量 如图,当ARM要访问存储器时,MMU先查找TLB中的虚拟地址表。如果ARM的结构支持分开的数据TLB(DTLB)和指令TLB(ITLB),则除去指令使用的ITLB外,其他的转载 2014-03-20 16:18:56 · 449 阅读 · 0 评论 -
linux 头文件以及库的路径
原来在编译的时候可以指定执行时去哪里找需要的lib文件,长知识了本文详细介绍了linux 下gcc头文件指定方法,以及搜索路径顺序的问题。另外,还总结了,gcc动态链接的方法以及路径指定,同样也讨论了搜索路径的顺序问题。本文包含了很多的例子,具有很强的操作性,希望读者自己去走一遍。一.#include #include #include “”先到源文件所在文件夹去找转载 2014-02-19 16:14:53 · 294 阅读 · 0 评论 -
串口与服务器
作者:Steven YangE-mail:mqyoung@gmail.com 很多场合需要用到串口调试,本文介绍串口配置过程:(沿用惯语,我用的机器ubuntu 9.10称为开发系统[Developer],需要调试的Debian称为目标系统[Target]) 首先是内核支持:一般来说,Debian、Ubuntu等发行版的官方内核都支持,如果自己编译的内核,确保如下选项打转载 2013-12-17 10:26:30 · 288 阅读 · 0 评论 -
APUE之IO
1.open,create,write,close,lseek。fcntl.h、unistd.h中等无缓冲IO函数,打开的文件是在内核中用int类型的文件描述符来标识由open系统调用获得,write,close,lseek等系统调用要用到文件描述符。其中惯例是0为标准输入STDIN_FILENO,1为标准输出STDOUT_FILENO,2为标准错误STDERR_FILENO.格式原创 2013-12-04 15:21:13 · 329 阅读 · 0 评论 -
PCI Stub driver (卸载PCI设备)
内核make menuconfig 里的BUS选项里有 PCI Stub driver 这个配置看Kconfig中的help:Say Y or M here if you want be able to reserve a PCI device when it is going to be assigned to a guest operating system.源代码的注释:* U转载 2013-11-18 14:29:16 · 1053 阅读 · 0 评论 -
KVM启动
1. 确定硬件是否支持iommu这是一个硬件的功能,intel架构上叫vt-d。 从BIOS上可以看出来, 不同版本放的位置不一样。我的是在 Security->Virtualization->VT-d 2. 检查CPU是否支持 #egrep "vmx|svm" /proc/cpuinfo3. 安装软件qemu-1.5.3.tar.bz2(可以在configu原创 2013-11-18 10:02:28 · 591 阅读 · 0 评论 -
Vim:打造Linux C/C++程序员的编辑器
所谓“工欲善其事,必先利其器”,所谓“磨刀不误砍柴工“。在linux下,vim时一种最常见的编辑器,很多linux的发行版就自带了(不过 Ubuntu目前时需要自己安装的,默认只带了vi)。今天搞了半天了Vim,通过几个插件来武装我的vim,使其能向传说中的一样成为C/C++程序员的利器。通过配置和插件,实现的功能有:语法高亮+自动缩进+函数自动补全+变量函数的跟踪+列出源代码中的函数变量转载 2013-11-21 10:46:22 · 474 阅读 · 0 评论 -
手把手教你把Vim改装成一个IDE编程环境(图文)
手把手教你把Vim改装成一个IDE编程环境(图文)By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomepage:http://blog.csdn.net/wooinCopyright:该文章版权由吴垠和他可爱的老婆小包子所有转载 2013-11-27 23:08:47 · 373 阅读 · 0 评论 -
ncurses
以下是UNIX下c语言的图形编程UNIX下c语言的图形编程--curses.h 函式库作者:不详 来源:supcode.com收集整理 发布时间:2005-7-22 19:39:36减小字体 增大字体 相信您在网路上一定用过如 tin,elm 等工具, 这些软体有项共同的特色, 即他们能利用上下左右等方向键来控制游标的位置. 除此之外, 这些程式转载 2013-11-28 13:56:37 · 308 阅读 · 0 评论 -
嵌入式linux学习步骤
首先得把C、C++学好,编程语言没过关那神马都是浮云。一、C语言编程实例全。二、C++编程实例 l 学习嵌入式一般选用Linux+arm,所以得先学习Linux基础知识 一、Linux基础与Shell编程二、Linux_C编程实例 l 想必学嵌入式的人转载 2013-11-29 10:35:32 · 352 阅读 · 0 评论 -
APUE-UNIX高级环境编程
1.重写ls指令,用到了dirent.h头文件,一个目录有关的头文件,可以用man查看有2个结构体DIR与struct dirent,目录结构体与当前目录下文件/目录结构体代码如下#include #include typedef struct dirent dirct;intmain(int argc,char *argv[]){DIR *pdir;d原创 2013-12-02 15:01:26 · 410 阅读 · 0 评论 -
linux 编程书籍
《UNIX环境高级编程》,推荐指数:★★★★★《UNIX环境高级编程》是 Unix/ Linux 程序员案头必备的一本书籍。可以说,Linux 程序员如果没有读过这本书,就好像基督教徒没有读过圣经一样,是很难让人理解的。这本书概括了 Linux 编程所需的一切理论框架、主要系统函数、多进程编程、乃至 Linux 网络通信。对于初学者,如果你能将《操作系统》这门课程结合着这本书来学习,试着用转载 2013-11-29 13:27:17 · 364 阅读 · 0 评论 -
linux设备模型之Kobject与Kset
以《LDD3》的说法:Linux设备模型这部分内容可以认为是高级教材,对于多数程序作者来说是不必要的。但是我个人认为:对于一个嵌入式Linux的底层程序员来说,这部分内容是很重要的。以我学习的ARM9为例,有很多总线(如SPI、IIC、IIS等等)在Linux下已经被编写成了子系统,无需自己写驱动;而这些总线又不像PCI、USB等在《LDD3》上有教程,有时还要自己研究它的子系统构架,甚至要自己添转载 2014-03-25 16:54:41 · 337 阅读 · 0 评论