Linux
文章平均质量分 57
Hens007
一无所有
展开
-
Android核心库
链接:http://blog.chinaunix.net/uid-22028680-id-3178227.htmlAndroid核心库-什么是Android核心库-Android核心库包括哪几部分,有哪些功能?-Android系统API如何实现?-ApiCheck机制的原理-如何使用Android系统自带资源包?Android运行库分为两个部分,分别是Dalvik虚转载 2015-02-02 18:29:10 · 6768 阅读 · 0 评论 -
u-boot配置和编译过程浅析
1 开发环境:Ubuntu 10.4原创 2012-03-10 10:19:38 · 2035 阅读 · 0 评论 -
linux驱动的入口函数module_init的加载和释放
就像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件:#include #include #include 其中,init.h 定义了驱动的初始化和退出相关的函数,kernel.h 定义了经常用到的函数原型及宏定义,module.h 定义了内核模块相关的函数、变量及宏。 几乎每个linu转载 2012-03-02 19:06:54 · 766 阅读 · 0 评论 -
深入理解Linux内核之内存寻址笔记-2
一个逻辑地址由两个部分组成,一个是由段标识符和一个指定段内相对地址的偏移量,而这个段标识符是一个16位长的字段来表示,偏移量是32位的字段描述。操作过程中,为了能够快速地找到所需要的段,处理器提供了段寄存器,这个段的唯一标识形式是段寄存器,分为cs,ss,ds,es,fs与gs。 六个寄存器中有三个是有专门用处: cs 代码段寄存器,指向包含程序指令的段。 ss原创 2012-02-28 22:11:45 · 1044 阅读 · 0 评论 -
Linux下华为3g模块e220上网
作者:任程明,华清远见嵌入式培训中心讲师。1.插入e220,通过lsusb命令查看e220识别情况:(设备id)2.通过id查询文件(查看内核是否支持)3.可以看到内核支持e220(在内核源码包中找到usb的3G驱动文件 drivers/usb/serial/option.c)4.插入相关模块(有依赖关系)5.下载e220驱动程序: http://ooz转载 2012-02-20 16:09:39 · 1154 阅读 · 0 评论 -
S3C2416 +linux驱动移植之DM9000A
首先来看一下DM9000A的框图:这里重要的是物理层PHY receiver,MAC(media access control)层,这里与软件中的协议栈不同,在硬件上MAC是PHY的下一层。DM9000A将MAC和PHY做到一起,也可以像IIS设备那样,SOC内有IIS的控制器,而声卡UDA1341放在片外。网卡当然也有这种设计,它是把PHY的下层MAC放入SOC内,片外的是PHY,当然我转载 2012-02-20 15:57:54 · 4060 阅读 · 2 评论 -
S3C2416支持DM9000驱动(Linux)
Topic:S3C2416支持DM9000驱动(作者:Sturtle)//----------------------------------------------------------------------------------------------------------------------------// 作者:Eleven(eleven@urbetter.com)转载 2012-02-20 15:48:00 · 2762 阅读 · 1 评论 -
SMDK2416 3.5"LCD驱动程序的移植 .
使用S3C2416 ARM 系统平台,使用WINCE6.0操作系统,LCD屏是奇美的LQ035NC111或科万宏的KWH035ST12-F01,其时序入下图。根据S3C2416芯片资料,自己编写的FrameRate计算器软件计算FrameRate,如下图:得到FrameRate=61一、修改的程序文件 1. D:\WINCE600\PLATFORM\SMDK2416\转载 2012-02-20 15:00:20 · 1300 阅读 · 0 评论 -
2416平台,u-boot-1.3.4支持U盘功能问题总结 .
①在include/configs/smdk2416.h中添加定义:#defineCONFIG_USB_OHCI#defineCONFIG_USB_STORAGE#defineCONFIG_DOS_PARTITION#defineCONFIG_SUPPORT_VFAT#defineLITTLEENDIAN以及#defineCONFIG_CMD_USB #defin转载 2012-02-20 14:56:37 · 1347 阅读 · 0 评论 -
ubuntu下安装samba .
ubuntu下安装samba一. Ubuntu samba配置的安装:sudo apt-get install samba smbfs smbclient二. 创建共享目录:mkdir /home/komy/sharesodu chmod 777 /home/komy/share三. 创建Ubuntu Samba配置文件:转载 2012-02-20 10:29:16 · 475 阅读 · 0 评论 -
安装VMware虚拟机和Linux操作系统
作者:蒙洋,华清远见嵌入式学院讲师● 虚拟机简介所谓虚拟计算机(简称虚拟机),实际上就是一种应用软件,例如VMware实际上也只是一种应用软件,其特别之处在于,由它创建的虚拟机与真实的计算机几乎一模一样,不但虚拟有自己的CPU、内存、硬盘、光驱,甚至还有自己的BIOS。在这个虚拟机上,可以安装Windows、Linux等真实的操作系统,及各种应用程序。● 常见虚拟机软件目前流行的虚转载 2012-02-20 18:36:42 · 591 阅读 · 0 评论 -
我的嵌入式学习笔记(1)-- 搭建开发环境 .
作者:曹忠明,华清远见嵌入式学院讲师作为一个嵌入式linux的业内人士(脸红ing,呵呵!),我需要一个我自己的环境,我选择我喜欢,我选择了Ubuntu这个系统,虽然这个系统有些方面不如redhat、fadero这些系统,如软件包不是很全。但是发现问题、解决问题才能学到更多的东西吗!Ubuntu有友好的用户界面和简单易学的软件管理机制、适用于初学linux的人!说了这么多的废话了,来点实的转载 2012-02-20 18:34:11 · 597 阅读 · 0 评论 -
Ubuntu下安装Android Eclipse开发环境
作者:刘洪涛,华清远见嵌入式培训中心讲师。记录了为FS_S5PC100平台在Ubuntu下安装Android Eclipse开发环境的搭建过程。使用Ubuntu版本为10.10。1、安装JDK(1) 安装“Linux-Android\toolchain”目录下的“jdk.bin”,jdk.bin是Jdk1.5。Jdk1.5是编译Android2.1必须的工具,而且只能是1.5,其他版本转载 2012-02-20 16:15:15 · 640 阅读 · 0 评论 -
利用打印法和点灯法追踪UBOOT第二阶段启动流程
打印法:前段用puts(); 后面可以用printf();这个可以试一试。点灯法:找到相应的GPIO寄存器,在文件头加上#include 这个头最好是放在所有头的后面。int i; GPDCON_REG = 0x55555555; GPDDAT_REG = 0x0; for(i=0; i GPDDAT_REG = 0xffffffff; for(i=0; i put转载 2012-02-20 15:05:36 · 2847 阅读 · 0 评论 -
几个 2416 wince问题 .
1.block0img.nb0是怎么来的?C:\WINCE500\PLATFORM\SMDK2416\Src\Bootloader\NBL2\makefile.inc(33): !IF "$(BSP_SMDK2416_CFG)"=="1" copy /b $(_PLATFORMROOT)\$(_TGTPLAT)\target\$(_TGTCPU)\$(WINCEDEBUG)\转载 2012-02-20 10:23:05 · 898 阅读 · 0 评论 -
linux ,Android基础知识总结
来源: ChinaUnix博客 日期: 2009.10.25 08:53 (共有条评论) 我要评论 ===================================================linux ,Android基础知识总结1. Android编译系统分析2. 文件系统分析3. 制作交叉工具链4. 软件编译常识5. 设置模块流转载 2012-04-05 15:02:02 · 2042 阅读 · 0 评论 -
u-boot启动之第2阶段浅析
在第一阶段分析中已经知道,经过一系列板级初始化后最后是调用函数start_armboot (void),这个告诉我们第2阶段应该是从这个函数开始进行分析,这个函数是在/lib_arm/board.c文件中。/* Pointer is writable since we allocated a register for it */ gd = (gd_t*)(_armboot_start -原创 2012-03-19 16:36:22 · 2211 阅读 · 0 评论 -
Linux音频设备驱动
Linux音频编程指南 虽然目前Linux的优势主要体现在网络服务方面,但事实上同样也有着非常丰富的媒体功能,本文就是以多媒体应用中最基本的声音为对象,介绍如何在Linux平台下开发实际的音频应用程序,同时还给出了一些常用的音频编程框架。一、数字音频音频信号是一种连续变化的模拟信号,但计算机只能处理和记录二进制的数字信号,由自然音源得到的音频信号必须经过一定的变换,成为数字音频信转载 2013-01-22 11:18:58 · 2953 阅读 · 0 评论 -
我理解的逻辑地址、线性地址、物理地址和虚拟地址(补充完整了) .
要过年了,发个年终总结贴,只是个人理解,不包正确哈。本贴涉及的硬件平台是X86,如果是其它平台,嘻嘻,不保证能一一对号入座,但是举一反三,我想是完全可行的。一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插在转载 2013-02-01 19:08:10 · 899 阅读 · 0 评论 -
command not found
今天很是郁闷,装一个编译器,在vim /etc/profile中加入路径后,source /etc/profile后竟然出现“command not found ” ,出现这个提示后,想用gedit,vi和vim来编辑什么都不行,都是同样的提示。无意中重新启动Linux,更想不到的是连登陆都不行,这样系统真的算是完蛋了,死活就是不行,真无奈了,只好重新装一次系统。 后面原创 2012-06-07 20:43:40 · 11158 阅读 · 3 评论 -
crosstool-ng自制交叉工具链
手动安装termcap#cd /tmp#wget ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz到这里termcap-1.3.1.tar.gz 已经下载完成。 #tar zxvf termcap-1.3.1.tar.gz#cd termcap-1.3.1#sudo ./configure prefix=/us原创 2012-06-02 00:30:04 · 17357 阅读 · 2 评论 -
linux驱动程序调试常用方法 .
驱动程序开发的一个重大难点就是不易调试。本文目的就是介绍驱动开发中常用的几种直接和间接的调试手段,它们是:利用printk 查看OOP消息 利用strace 利用内核内置的hacking选项 利用ioctl方法 利用/proc 文件系统 使用kgdb 一、利用printk这是驱动开发中最朴实无华,同时也是最常用和有效的手段。scull驱动的main.c第338行如下,就是使用pri转载 2012-05-13 23:42:29 · 4647 阅读 · 0 评论 -
linux sd卡驱动分析
原文地址:linux sd卡驱动分析作者:shark888linux sd卡驱动分析 (2012-01-30 16:48)转载标签: linux class normal color Linux 分类: 驱动系列基于S3C2410的SD卡linux驱动工作原理 Linux MMC/SD/SDIO体系结构linux sd卡驱动分析转载 2012-04-28 18:11:51 · 9414 阅读 · 1 评论 -
嵌入式Linux下3G原理
传统3G上网卡几乎都采用modem形式,支持usb插口。通过usb指令转串口指令发给modem实现modem初始化并实现上网.由此可以考虑在linux下实现usb指令到串口指令转换的驱动以驱动modem实现上网,各个平台的linux内核中都有usbserial模块,该模块是可以驱动modem上网的,因此可以考虑使用usbserial模块驱动3G网卡上网。虽然3G上网卡没有类似windo转载 2012-02-13 16:52:50 · 3578 阅读 · 0 评论 -
如何看SDRAM的容量笔记
这几天一直在看关于内存部分,在S3C2440手册上看到下面的一个图,用这个图来表示内存的容易,还是不同的规格,第一次看还真不知道是什么意思,仔细查了一下,终于有点明白。为以后查找方便,以防止以后自己会忘记,把它给记录下来: 上图表中,Bank Size表示每个BANK的容量大小,计算方法:比如2MByte,Base Component是个体容量,为16Mbit,注意了不是1原创 2012-04-12 15:29:10 · 2489 阅读 · 0 评论 -
lowlevel_init.S学习理解
在我迷迷糊学看了lowlevel_init.S中的代码之后,有一个感觉就是,要想读懂其中的代码首先得看一下你所用的芯片手册,因为里面有比较详细的存储器控制(MemoryController)描述。我用的是s3c2440手册里写得十分清楚,总共有8个块(Banks)(Bank0~Bank7),每个块对应着不同的控制与地址线,其实这些Bank很大一部分是对应着的控制寄存器的地址,这个要看实际的芯片与板转载 2012-04-11 19:06:22 · 1053 阅读 · 0 评论 -
Linux下华为3g模块e220上网
作者:任程明,华清远见嵌入式培训中心讲师。1.插入e220,通过lsusb命令查看e220识别情况:(设备id) 2.通过id查询文件(查看内核是否支持) 3.可以看到内核支持e220 (在内核源码包中找到usb的3G驱动文件 drivers/usb/serial/option.c)4.插入相关模块(有依赖关系) 5.下载e220驱动程序: http:转载 2012-04-11 15:13:37 · 1204 阅读 · 0 评论 -
内核LED驱动程序笔记
内核驱动程序的开发,一直都是比较难。对于初学者来说,要想一步就可以理解是比较难的,所以一般学习都是从最简单的驱动开始学起,这样一步一步来,由浅入深,循序渐进地学习,是比较好方法。特别是当自己发现可以理解一个驱动的程序代码是如何实现,至少是可以理解它的工作过程时,对自己是有多么大的鼓励和信心。对以后更加深入地学习其它的知识是很有帮助的,下面我们就以最简单的LED驱动为例,结合代码看应该比较容易入手,原创 2012-03-22 23:49:57 · 1166 阅读 · 0 评论 -
华为E1750上网卡往嵌入式板子上移植详解
1、配置内核支持(Linux-2.6.21) (1)在设备驱动的网络配置里选择上ppp的支持,因为后面使用到的拨号软件pppd要用到此驱动,如果不配置会报没有此驱动的错误 /dev/ppp驱动,这里选择型号,直接编译进内核Device Drivers ---> Network device support ---> (2)选择上usb转串口驱动,主要转载 2012-02-13 16:52:02 · 2598 阅读 · 0 评论 -
好扯淡的2416 处理器,手册写得好猥琐啊.
拿到2416 机器,于是就开始例行流程,开始看看2416 的bootloader以及手册,熟悉一下整体架构,看了内存映射表,发现内存起始地址是0x30000000 ,可是手册怎么也找不到,真奇怪。g_oalAddressTable ;64M DDR-II DCD 0x80000000, , 64 ; 64 MB DRAM BANK 6转载 2012-02-20 10:21:12 · 1309 阅读 · 0 评论 -
郁闷,俺被S3C2416 狠狠的暗算了一把
昨天想给2416 内存降频,开始一直以2440 的思维去看,2440 的HCLK 就是 内存的频率,所以2416 也应该是是这个吧。可是TMD 2416 居然在框架图以及手册不断的强调DDRCLK 并且煞有其事的拿DDRCLK说事,并且DDRCLK一直都是所谓的266M......并且图示里面DDRCLK和HCLK是并行的,HCLK无法干预DDRCLK,但是DDRCLK 又找不到设置的地方,真是神转载 2012-02-20 10:17:53 · 2053 阅读 · 0 评论 -
嵌入式3G上网
一、需要的源码包: (1) usb库:libusb-0.1.12.tar.gz http://sourceforge.net/projects/libusb/files/libusb-1.0/ chinaunix (2) usb_modeswitch-1.1.9.tar.bz2 http://www.draisberghof.de/us转载 2012-02-13 16:35:48 · 863 阅读 · 0 评论 -
有关DM9000驱动问题
1. #define CONFIG_DM9000_BASE 0x20000000这个地址到底是怎么定义,按我的理解因为是nGCS4控制,因该是0x20000000,但网上很多人说是0x20000300,这个0x300是如何来的,至今没一个人能够清楚的说明如果你看过DM9000的datasheet(http://pdfdata.datasheetsite.com转载 2012-02-13 16:17:52 · 2261 阅读 · 1 评论 -
ubuntu 9.10 QT 4.5.3 QtEmbeded 4.5.3 安装
下面是介绍安装qt 4.5.3 和qt QtEmbeded 4.5.3的方法,感谢erfolgreich他结合网上前辈们安装其他版本的安装过程,亲自成功安装了 QT 4.5.3 和 QtEmbeded 4.5.3,在这里分享一下安装过程 希望能帮助到一些人。一条件:下载以下安装包:1.qt-embedded-linux-opensource-src-4.5.3.tar.gz官网转载 2012-02-21 11:32:16 · 927 阅读 · 0 评论 -
DM9000寄存器功能详细介绍
http://hi.baidu.com/firstm25/blog/item/53eeec238d780b4b92580788.htmlDM9000(A)是一个全集成、功能强大、性价比高的快速以太网MAC控制器,它带有一个通 用处理器接口、EEPROM接口、10/100 PHY和16KB的SRAM(13KB作为接收FIFO,3KB作为发送FIFO)。它采用单电源供电,可兼容3.3V、5V的IO转载 2012-02-14 10:16:42 · 4527 阅读 · 0 评论 -
DM9000网卡ARP 数据包格式分析
1.ARP数据包格式在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,而数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。因此在通讯前必须获得目的主机的硬件地址。ARP协议就起到这个作用。源主机发出ARP请求,询问“IP地址是192.168.0.1的主机的硬件地址是多少”,并将这个请求广播到本地网段(以太网帧转载 2012-02-14 10:11:04 · 1640 阅读 · 2 评论 -
S3C2416之3G s3c2416从NAND FLASH启动
Device Drivers ---> [*] USB support ---> USB Serial Converter support ---> USB Serial Converter support再选中其下的USB driver for GSM and CDMA modems 的选项即可。要注意的是,编译方式一定要选为模块化编译。 1、u-boot从nandflash转载 2012-02-14 09:49:32 · 2078 阅读 · 0 评论 -
让Ubuntu彻底告别中文乱码
一,解决flash乱码在终端输入如下代码:cd /etc/fonts/conf.d/然后再在终端输入代码:sudo gedit ./49-sansserif.conf此时文件显示的内容如下:If the font still has no generic name, add sans-serif-->sans-serif转载 2012-02-14 09:48:21 · 737 阅读 · 0 评论 -
ubuntu10.04启用受限驱动后开机Splash分辨率变低的解决方法
无论是ati显卡还是nvidia显卡,在ubuntu10.04系统上启用受限驱动(或手动安装官方驱动),都会导致开机splash分辨率变低的问题。由于这问题在ubuntu10.04上很普遍,所以也就有很多牛人为我们提供了解决方法,下面是我在ubuntu中文论坛上看到的(参考上面给出的三个帖子),并且亲自试验并成功解决问题的一个整理方案。1、安装v86d和hwinfo包,下面我们要用到。su转载 2012-02-14 09:48:07 · 1907 阅读 · 0 评论 -
Ubuntu Grub Rescue几种修复方法
重启电脑直接进入grub rescue模式重启后的显示是GRUB loadingerror: no such partitiongrub rescue>连XP都进不了了,知道怎么办吗!下面一起来看看grub2几种修复方法 1.Ubuntu Grub Rescue 双系统重装windows造成grub2被改写的修复方法一 grub4dos0.4.4在Windows转载 2012-02-14 09:47:52 · 2267 阅读 · 0 评论