- 博客(18)
- 收藏
- 关注
原创 bootm命令中地址参数,内核加载地址以及内核入口地址
bootm命令用紧随其后的参数来寻找magic number,以此来确认数据的有效性。若有效,则bootm会根据找到的image的头64字节信息建立tag信息供linux kernel使用根据内核加载地址和入口地址的不同,有以下三种情况:1. 内核加载地址和入口地址相同。此时内核存放在ram的地址不能与入口地址相同,否则无法启动。NewSTO平台实验: 内核的入口地址和加
2015-06-01 09:33:01 1488
转载 为什么驱动里要使用copy_to_user和copy_from_user
linux内核中的copy_to_user和copy_from_user(一)Kernel version:2.6.14CPU architecture:ARM920TAuthor:ce123(http://blog.csdn.net/ce123)1.copy_from_user在学习Linux内核驱动的时候,经常会碰到copy_from_u
2015-05-05 09:28:34 5396
转载 缓存一致性(Cache Coherency)入门
本文是RAD Game Tools程序员Fabian “ryg” Giesen在其博客上发表的《Cache coherency primer》一文的翻译,经作者许可分享至InfoQ中文站。该系列共有两篇,本文系第一篇。我计划写一些关于多核场景下数据组织的文章。写了第一篇,但我很快意识到有大量的基础知识我首先需要讲一下。在本文中,我就尝试阐述这些知识。缓存(Cache)本文是
2015-04-22 22:34:31 6322
原创 老版本ubuntu的可用源
改了格式,最后,我的源为:deb-src http://old-releases.ubuntu.com/ubuntu gutsy main restricted universe multiversedeb http://old-releases.ubuntu.com/ubuntu gutsy-backports main restricted universe multi
2015-03-21 22:31:11 618
原创 Linux BBT 结构
NewSTO NAND Flash BBT Specification1. LocationThen whole NAND is partitioned as below table. BlockOffsetDescriptionSizeDecHex0
2015-03-18 15:52:49 1016
转载 Linux线程调度
由于Linux对线程实现的一些特殊性,所以会给我们理解线程及其相关的一些函数带来疑惑,这里做个解答: 1、关于sleep 很多书籍上都说sleep这个系统调用会使整个进程sleep,而不单是sleep一个线程。这样说没错,但我们要是在Linux下写一个多线程 的程序,在一个线程中调用sleep,你会发现其他线程照样运行,这是怎么回事呢?这就是由于Linux下的线程,其实线程的注册、
2015-03-17 22:44:10 621
转载 Linux加载ko出现unknown relocation: 38 的解决办法
Kernel module build with GCOV profiling fails to load with thefollowing error: $ insmod test_module.ko test_module: unknown relocation: 38 insmod: can't insert 'test_module.ko': invalid modul
2015-03-16 16:15:55 2186
转载 mmap的使用
mmap 的使用能让用户态下的程序实现内核态才能访问到的功能。我想读龙芯2F的一个IO口配置寄存器,它的物理地址为 0x1fe00194。在Linux用户态下读取。程序如下:#include errno.h>#include fcntl.h>#include sys/mman.h>#include sys/stat.h>#include sys/types.h>#in
2015-03-11 14:58:20 471
转载 Linux内核地址映射模型
x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。段页式机制如下图。 Linux内核地址空间划分通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间。注意这里是32位内核地址空间划分,64位内核地址空间划分是不同的。 Linux内核高端内
2015-03-08 19:24:49 557
转载 解决TSLIB无法识别触摸屏的问题
今天编译tslib,之后死活认不出touchscreen。通过cat 测试了/dev/input/event2,发现touch有反映。但是tslib死活老说 selected device is not a touchscreen I understand这log。google了半天,也没搞定。于是开始看代码。发现tslib有这么一段if
2015-01-30 17:15:54 3138 1
转载 tslib使用+NewSTO目标板经验
1.准备工作确保以下软件已安装# apt-get install autoconf(或autoconf2.13)# apt-get install automake# apt-get install libtool2.下载http://download.csdn.net/detail/scholar_fish/4167788下载版本为tslib-1.4.tar.gz
2015-01-30 17:06:17 452
原创 qt-embedded-4.5.2移植实验
1、先运行myconf.sh,然后运行qmakemyconf.sh 内容#!/bin/bash./configure -release -shared -fast -pch -no-qt3support -qt-sql-sqlite -no-libtiff -no-libmng -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -xplatfor
2015-01-29 17:08:21 394
转载 Linux应用程序Semophore 操作
semget() 创建一个新的信号量集,或者使用一个已经存在的信号量集。系统调用:semget();原型:int semget(key_t key, int nsems, int semflg);参数:第一个参数是关键字值(一般是由系统调用ftok()返回的)。第二个参数nsems指出一个新的信号量集合中应该创建的信号量的个数。可以将信号量集合理解为数组,长度为nsems。最大
2015-01-26 14:54:13 573
转载 Linux 用户间发命令
wall命令这个命令的功能是对全部已登录的用户发送信息,用户可以先把要发送的信息写好存入一个文件中,然后输入: # wall 这样就能对所有的用户发送信息了。 在上面的例子中符号“# wall ‘Thank you!’ Broadcast message from root (tty1) Fri Nov 26 14:15:07 1999…Thank you! #
2015-01-04 16:29:04 547
转载 部署GIT 服务器仓库
git裸仓库,就是指没有工作目录的仓库。简单点说,裸仓库就是你工作目录下面的 .git 子目录里面的内容。远程仓库,一般不需要工作目录,所以通常都是裸仓库。如何在服务器上创建裸仓库?很简单,跟我来!如果你还没有代码,直接在服务器上创建裸仓库很简单,一个命令就够了:$ git init --bare但是如果在本机,你已经有了一些代码,如何把这些代码部署到服务器上,并且仅仅部署
2014-12-31 09:49:18 422
转载 Linux NAND BBT管理
1、MTD中与bbt相关的结构体 struct nand_chip中的scan_bbt函数指针所指向的函数,即nand_default_bbt函数会首先检查struct nand_chip中options成员变量,如果当前NAND芯片是AG-AND类型的,会强制把bbt存储在NAND芯片中,因为这种类型的NAND 芯片中含有厂家标注的“好块”信息,擦除这些block时会导致丢失坏块信息。
2014-11-21 17:05:57 1274
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人