linux内核相关
文章平均质量分 90
Tayi2012
xxxxxxxxxxxxxx
展开
-
ubuntu qt安装
1.到官网http://qt-project.org/downloads或者ftp://ftp.qt-project.org/上下载Qt的源码包,要安装当然要先有源码咯,我下载的是qt-everywhere-opensource-src-4.8.1.tar.gz。当然可以下载X11版的。这里我是方便在windows也搭建环境。linux下有自带的gcc,不像windows那么麻烦,还得安装minG原创 2014-05-23 14:10:56 · 660 阅读 · 0 评论 -
linux启动时挂载rootfs的几种方式分析
1.linux启动时,经过一系列初始化之后,需要mount 根文件系统,为最后运行init进程等做预备,mount 根文件系统有这么几种方式: 1)文件系统已经存在于硬盘(或者类似的设备)的某个分区上了,kernel根据启动的命令行参数(root=/dev/xxx),直接进行mount。 这里有一个问题,在root文件系统本身还不存在的情况下,kernel如 何根据/dev/xxx来找到对应的转载 2014-01-17 13:59:06 · 930 阅读 · 0 评论 -
Linux下TI omap芯片 MUX 配置分析(以AM335X芯片为例)
原文地址:Linux下TI omap芯片 MUX 配置分析(以AM335X芯片为例) 作者:tekkamanninja 在移植内核的时候,通常会遇到引脚复用(MUX)的配置问题。在现在的Linux内核中,对于TI的ARM芯片,早已经有了比较通用的MUX配置框架。这对于许多TI的芯片都是通用的,这次看AM335X的代码顺手写一下分析,以备后用。一、硬件原创 2014-08-05 21:32:15 · 623 阅读 · 0 评论 -
busybox制作rootfs
###平台AM335X实验成功###1 获取源码解压从busybox的官方主页http://www.busybox.net ,下载busybox的源码,目前最新的版本为busybox-1.13.3.tar.bz2#tar –jvxf busybox-1.13.3.tar.bz2进入解压后的busybox源码目录#cd busybox-1.13.3原创 2014-01-28 13:55:05 · 867 阅读 · 0 评论 -
Linux设备驱动开发
经过两周的摸索,终于对Linux设备驱动开发有了个初步的认识,下面对Linux设备驱动开发环境的搭建做个小结,以方便自己以后查询,同时也能给同道的初学者一点帮助。刚接触Linux设备驱动时,初学者往往连如何编译驱动程序都不懂,更别说编译进内核或加载测试了。一般都是在网上找个最简单的 helloworld驱动程序,然后严格按照网上所说的步骤编译,结果却得到一大堆见都没见过的错误,更不要说根据错误转载 2014-01-21 08:46:25 · 698 阅读 · 0 评论 -
Linux设备驱动剖析之SPI(一)
专注于嵌入式 & Linux以Kernel为中心,坚持学习各种资源建设。博客园闪存首页新随笔联系管理订阅随笔- 94 文章- 0 评论- 158 Linux设备驱动剖析之SPI(一)写在前面 初次接触SPI是因为几年前玩单片机的时候,由于普通的51单片机没有SPI控制器,所以只好用IO口去模转载 2014-08-06 11:02:31 · 475 阅读 · 0 评论 -
Linux设备驱动剖析之SPI(二)
957至962行,一个SPI控制器用一个master来描述。这里使用SPI核心的spi_alloc_master函数请求分配master。它在drivers/spi/spi.c文件中定义:00000471 struct spi_master *spi_alloc_master(struct device *dev, unsigned size)00000472 {00000转载 2014-08-06 11:07:54 · 631 阅读 · 0 评论 -
mini2440 SPI驱动移植
mini2440 SPI驱动移植 2013-07-12 15:30:17分类: 嵌入式 最近项目需要,需要在mini2440上移植SPI驱动,板子需要驱动SPI设备,上网找了很多资源,但是很多都是有问题,最终在基本理解驱动结构的前提下,将SPI驱动顺利移植到mini2440。 我使用的内核版本是2.6.32.2,这转载 2014-08-06 11:20:13 · 498 阅读 · 0 评论 -
用户空间的spi驱动
1.1 重要的数据结构1. spi_device虽然用户空间不需要直接用到spi_device结构体,但是这个结构体和用户空间的程序有密切的关系,理解它的成员有助于理解SPI设备节点的IOCTL命令,所以首先来介绍它。在内核中,每个spi_device代表一个物理的SPI设备。它的成员如程序清单 1.1所示。程序清单 1.1 spi_device转载 2014-08-06 15:42:49 · 511 阅读 · 0 评论 -
McBsp接口使用和概念
McBSP包括一个数据通道和一个控制通道,通过7个引脚与外部设备连接。数据发送引脚DX负责数据的发送,数据接收引脚DR负责数据的接收,发送时钟引脚CLKX,接收时钟引脚CLKR,发送帧同步引脚FSX和接收帧同步引脚FSR提供串行时钟和控制信号。McBSP 是英文Multichannel Buffered Serial Port (多通道缓冲串行口)的缩写McBSP是TI公司生产的数字信号处转载 2014-08-22 15:15:16 · 2562 阅读 · 0 评论 -
SPI总线驱动分析
1 SPI概述 SPI是英语Serial Peripheralinterface的缩写,顾名思义就是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为转载 2014-08-19 18:05:57 · 727 阅读 · 0 评论 -
【原创】ubuntu 中文输入法\交叉编译器\smb\tftp\ssh 安装方法
ubuntu10.04在ibus中安装中文输入法软件版本: 操作系统:ubuntu10.04 内核版本:Linux version 2.6.32-36-generic目录: 1. 介绍 2. 为 ibus 安装一个新的中文输入法 3. 把新安装的中文输入法添加到 ibus 中 4. 使用 5. 参考资料1. 介绍 在 ubun原创 2014-03-01 11:42:30 · 1268 阅读 · 0 评论 -
Linux 从虚拟地址到物理地址
转至:http://blog.chinaunix.net/uid-24774106-id-3427836.html我们都知道,动态共享库里面的函数的共享的,这也是动态库的优势所在,就是节省内存。C 编译出来的可执行文件几乎都会用到libc的库,假如没有这个共享的技术,每个可执行文件都要占一份libc库的内存,这将是极大的内存浪费。 可是一直没搞明白,怎么样才能证明共享库里面函数的地转载 2015-01-08 20:53:51 · 448 阅读 · 0 评论 -
【原创】linux sh脚本整理
一、开始二、注释三、#对变量赋值四、 whlie read LINE 的特殊性五、条件语句六、脚本关系运算符(相等、大于、小于等)七、文件应用命令(读行、读行数、)附件一:处女作一、开始程序必须以下面的行开始(必须放在文件的第一行): #!/bin/sh 或者 #!/bin/bash 符号#!用来告诉系统它后面的参数是用来原创 2014-03-22 11:05:34 · 681 阅读 · 0 评论 -
Linux oops信息的分析
Andrew Huang 转载请注明作者及网址oops是英语口语"糟糕"的意思,当LINUX 内核发生严重错误时,比如内存段错误时,将会提示一大段信息。就提示 Oops,因此得名,Oops提示信息相当多,包括出问题时的,各个常用寄存器的值,调用的堆栈,以及出错的可能原因1.oops 的格式内核的文档里的详细的Oops的说明,的名字是Documentation/转载 2015-10-23 08:48:05 · 969 阅读 · 0 评论 -
linux内核中读写文件
1. 序曲在用户态,读写文件可以通过read和write这两个系统调用来完成(C库函数实际上是对系统调用的封装)。 但是,在内核态没有这样的系统调用,我们又该如何读写文件呢?阅读linux内核源码,可以知道陷入内核执行的是实际执行的是sys_read和sys_write这两个函数,但是这两个函数没有使用EXPORT_SYMBOL导出,也就是说其他模块不能使用。在fs/open.c中系统原创 2015-12-14 16:34:59 · 582 阅读 · 0 评论 -
ubuntu sudo自动切换root 无需输入密码
个人PC 用ubuntu12.04 lts版 在终端操作的时候切换root 每次都需要输入密码, 这个是个很烦人的事情, 在网上找发现了一个更好的方法 通过执行脚本 自动切换root.这个使用的软件是expect.sudo apt-get install expect然后开始写我们的代码.vi changeRoot.sh#!/usr/bin/expect -f转载 2014-03-03 16:30:50 · 1906 阅读 · 0 评论 -
ubuntu 手动挂载U盘 [已亲自实验过]
有时候只有Ubuntu server,有时候Ubuntu Desktop不能自动挂载U盘。这个时候需要一些命令:1.在插入U盘前和插入U盘后,都输入同一个命令,检查多了哪个盘cat /proc/partitions这里我发现多了 8 16 7827424 sdb 8 17 7825423 sdb1sdb是统称,所以新插入的U盘就是原创 2014-04-17 20:55:12 · 783 阅读 · 0 评论 -
uboot/linux/busybox/yaffs2源代码下载地址
uboot:[cpp] view plaincopyprint?http://ftp.denx.de/pub/u-boot/ linux:[cpp] view plaincopyprint?http://www.kernel.org/ busybox:原创 2014-08-05 20:36:16 · 680 阅读 · 0 评论 -
Ubuntu如何备份和恢复系统
文章来自:http://blog.163.com/sg_liao/blog/static/29577083200911752514269/在 使用Ubuntu之前,相信很多人都有过使用Windows系统的经历。如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工 具(通常都是私有软件),然后重启电脑进入备份工具提供的软件环境,在这里备份或者恢复Windows系原创 2014-03-13 20:30:41 · 506 阅读 · 0 评论 -
rootfs的挂载过程
一:前言前段时间在编译kernel的时候发现rootfs挂载不上。相同的root选项设置旧版的image却可以。为了彻底解决这个问题。研究了一下rootfs的挂载过程。特总结如下,希望能给这部份知识点比较迷茫的朋友一点帮助。二:rootfs的种类总的来说,rootfs分为两种:虚拟rootfs和真实rootfs.现在kernel的发展趋势是将更多的功能放到用户空间完成。以保持内核的转载 2014-01-17 11:28:21 · 588 阅读 · 0 评论 -
yaffs2移植
昆明理工大学嵌入式实验室(szarm@21cn.comszarm@tom.com)(转载请注明出处)====================================================================一、简介:Yaffs(Yet Another Flash File System)文件系统是专门针对NAND 闪存设计的嵌入式文件系统,目前转载 2014-01-17 10:34:58 · 1237 阅读 · 0 评论 -
YAFFS 文件系统详细介绍
YAFFS 文件系统详细介绍 全文(PDF文件)见链接:http://download.csdn.net/detail/taiyi2012/6857619一、 摘要在现在 Embedded System 的广泛应用下,其硬件及软件的建置及设计则需要相当大的考虑,亦因为其所需要的效率考虑下,挑选适用的内部储存装置则相当的重要,一般常见的内部储存装置为硬盘及闪存(Flash M转载 2014-01-17 10:10:06 · 2146 阅读 · 0 评论 -
用busybox制作rootfs && yaffs文件系统
我们知道一个linux的启动过程,包括BIOS的加电自检POST,拷贝MBR的信息(启动BootLoader),加载内核,挂载根文件安系统这几大步,在嵌入式系统的移植方面我们也要自己动手制作内核映像,根文件系统等。概要: 1.busybox(busybox-1.9.1) 下载一个版本的busybox。下载地址。 busybox是主要用来提供一些转载 2014-01-26 19:51:28 · 896 阅读 · 0 评论 -
【原创】bash安装配置
目标板中没有bash,只有sh,如果想将shell脚本在目标机中运行,则需要把脚本第一行的#!/bin/bash改为#!/bin/sh.但这样虽然可以执行脚本,但是脚本中的许多语法是不支持的,例如:判断 if [ -d /usr ] ; if [ -b /dev/sda1 ]等等,脚本运行时会报错,解决方法就是将bash移植到目标板.bash移植流程:1 下载最新版bash原创 2014-03-28 08:52:46 · 791 阅读 · 0 评论 -
【原创】linux内核移植过程--ramdisk的制作
#####为了方便阅读,将把ramdisk的作用放在文章后面。我使用的是TI公司am335x;前面缺省文件系统的制作,可以见网上blog,使用busybox制作。这里提供我实验过的文件系统链接:#####以下均在ubuntu10.041.目的:产生ramdisk文件(”ramdisk“可用其他名字代替) 操作:genext2fs -b原创 2014-01-15 11:27:40 · 3344 阅读 · 0 评论 -
常用UBoot命令 && Uboot环境变量说明 && Linux开机常见错误
(1)基础命令dnw:在进入系统之前进入指令行,输入该指令可下载烧录文件。re:重新启动嵌入式系统。printenv:打印当前系统环境变量。setenv:设置环境变量,格式:setenv name value ...,表示将name 变量设置成value 值;如果没有这个参数,表示删除该变量。saveenv:保存环境变量到NAND中。sleep:延迟执行,格式:sleep原创 2014-07-31 19:55:15 · 700 阅读 · 0 评论 -
[转] linux rtc驱动
Linux的RTC驱动相对还是比较简单的,可以将它作为一个普通的字符型设备,或者一个misc设备,也可以是一个平台设备,这都没有关系,主要还是对rtc_ops这个文件操作结构体中的成员填充,这里主要涉及到两个方面比较重要: 1. 在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linu转载 2014-02-11 10:35:56 · 589 阅读 · 0 评论 -
Linux设备驱动剖析之SPI(三)
572至574行,分配内存,注意对象的类型是struct spidev_data,看下它在drivers/spi/spidev.c中的定义:00000075 struct spidev_data {00000076 dev_t devt;00000077 spinlock_t spi_lock;00000078 stru转载 2014-08-06 11:07:45 · 702 阅读 · 0 评论 -
Linux设备驱动剖析之SPI(四)
781行之前没什么好说的,直接看783行,将work投入到工作队列里,然后就返回,在这里就可以回答之前为什么是异步的问题。以后在某个合适的时间里CPU会执行这个work指定的函数,这里是s3c64xx_spi_work函数,看它的定义:00000723 static void s3c64xx_spi_work(struct work_struct *work)00000724 {0转载 2014-08-06 11:10:34 · 587 阅读 · 0 评论 -
【原创】busybox 制作rootfs
busybox 制作rootfs试验平台:TI 公司 AM335X原创 2014-04-04 15:26:46 · 1799 阅读 · 0 评论 -
【原创】ubuntu dhcp-server 安装、配置
一、DHCP服务器提供以下两种配置方法1、地址池: 这种方法指定了一个用来动态的提供给第一个访问网络的DHCP客户端的IP地址池(有时也称作区域或范围)。当DHCP客户端离开网络超过一定时间后,IP地址就会被回收到地址池以供其它DHCP客户端使用。2、MAC地址这种方法强制使用DHCP来区别每一块连接上网络的网卡的硬件地址,之后这块网卡每次连上网络请求DHCP服务时都为它提供这个原创 2014-03-03 14:54:44 · 2549 阅读 · 0 评论 -
【原创】SPI 入门测试问题
linux 内核已经存在SPI驱动(drivers/spidev.c)以及测试文件(linux+v3.2.6/Documentation/spi/spidev_test.c)LOG:如果将内核烧到开发板并利用此测试文件出现:can't open device: No such device or addressAborted分析: 这是由于在/de原创 2014-02-13 15:33:37 · 1343 阅读 · 0 评论 -
[原创]Yaffs2移植全过程
/*YAFFS2的作用*/ 简单理解,Yaffs2文件系统是Yaffs的第二版本;是专门为nand flash设计的一款文件系统。 由于RAMDISK为只读的文件系统,如果要保存用户数据就需要增加一个可写的文件系统,由于用的是NAND FLASH,所以准备选用YAFFS2。还句话说,RAMDISK是在内存建立的文件系统,掉电数据就会丢失,那么就需要建原创 2014-01-20 17:27:10 · 4829 阅读 · 2 评论 -
内核中断,异常,抢占总结篇
一、基本概念中断分为同步中断和异步中断。同步中断是由CPU控制单元产生的,“同步”是指只有在一条指令执行完毕后,CPU才会发出中断,而不是发生在代码指令执行期间,比如系统调用。而异步中断是由其他硬件设备依照CPU时钟信号产生的,即意味着中断能够在指令之间发生,例如键盘中断。按照Intel的微处理器手册,同步中断和异步中断也分别称为异常(或者软件中断)和中断。中断大家都比较熟悉,是由硬件设备转载 2015-12-15 10:14:08 · 700 阅读 · 0 评论