ARM & Linux
文章平均质量分 81
flowerui
这个作者很懒,什么都没留下…
展开
-
tftpserver调试ADS地址设置
在2410上板子上做个简单的tftp server已经好多天了眼看就要成功了,可是运行时老是不对头,程序里是一点问题也没有的,问题是我一旦在程序里的某个地方加一条语句(无关紧要)编译make都能通过,但就是利用板子BIOS的USBdownload功能下载到RAM里再按提示敲入"y" 开始运行时结果就什么也没有了,好像程序就不运行了,彻底死了一样,郁闷抓狂了N久,一直研究程序也没研究出原创 2007-07-02 22:08:00 · 766 阅读 · 0 评论 -
linux命令历史和 Tab 自动补全
用不了多久,你就会感觉到一遍遍地重复键入相同命令并不是那么激动人心。一个小小的键入错误会破坏整个命令行。 解决办法之一是使用命令行历史。通过使用 [向上箭头] 和 [向下箭头] 键来上下滚动,你会发现许多前面已经键入过的命令。 我们可以再在 sneakers.txt (在 第 13.9.1 节 中创建的)文件中试验一下。不过,第一次,让我们在 shell 提示下键入: cat s转载 2007-08-07 16:20:00 · 8610 阅读 · 1 评论 -
嵌入式Linux内核的块设备驱动
对于linux 的根文件系统,目前有三种块设备的驱动可以选择,它们都可以用来包含根文件系统。分别是:a) Blkmem 驱动b) MTD 驱动c) RAM disk 驱动 Blkmem 驱动是专门为嵌入式linux 开发的一种块设备驱动,它是嵌入式linux系统中最为古老和通用的块设备驱动。它原理相对简单但是配置比较复杂,需要根据你即的Flash的分区使用情况来修改代码。当然修改的结果转载 2007-08-25 16:47:00 · 1534 阅读 · 0 评论 -
弄清楚各种linux文件系统
今天经过一顿狂研,终于对linux的文件系统这个东西有了更深入层次的认识,稍微捋清了一点他们的关系! 在Linux系统中,每个分区都是一个文件系统,都有自己的目录层次结构。Linux的最重要特征之一就是支持多种文件系统,这样它更加灵活,并可以和许多其它种操作系统共存。由于系统已将Linux文件系统的所有细节进行了转换,所以Linux核心的其它部分及系统中运行的程序将看到统一的原创 2007-08-25 19:47:00 · 869 阅读 · 0 评论 -
理解ramdisk
linux下的ramfs 最近写bash脚本的时候,老担心产生的临时文件伤害硬盘,所以不停的修改脚本,通过使用管道和变量,临时文件数量是不停的减少,而且技术也在提高,但仍然会产生7到8个的临时文件,以每5个小时产生的速度不停地写硬盘,怕把硬盘给写出坏道来,记得以前看到过使用内存当硬盘的工具,不知道在linux下有没,google一下,发现,原来系统本身就有这种功能,就是使用/dev/ram*文件原创 2007-08-25 16:50:00 · 1214 阅读 · 2 评论 -
从 2.4 到 2.6:Linux 内核可装载模块机制的改变对设备驱动的影响
从 2.4 到 2.6,Linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初始化与退出、转载 2007-09-07 17:25:00 · 395 阅读 · 0 评论 -
Linux2.6内核CS8900驱动移植
1.下载用于2.6内核的cs8900.c,cs8900.h两个文件,并拷贝到drivers/net目录下2.修改Drivers/net/Kconfig,增加以下内容: config ARM_CS8900 tristate "CS8900 support" depends on NET_ETHERNET && ARM && ARCH_SMDK2410 help转载 2007-09-30 22:30:00 · 1432 阅读 · 0 评论 -
Linux2.6内核LCD驱动移植
参考: http://www.cnitblog.com/zouzheng/articles/14578.htmllinux2.6.14 已经包含了 lcd 的驱动程序,驱动程序位于 /linux-2.6.14/drivers/video/ 目录下,文件名是 s3c2410fb.c, 头文件是 s3c2410fb.h. 在这里可以不研究这个文件。只要对 lcd 进行以下初始化就可以了。 打开原创 2007-09-30 22:32:00 · 3102 阅读 · 1 评论 -
Linux2.6内核TouchScreen驱动移植
在 linux2.6.14.1 中没有提供 s3c2410 的驱动,所以我们要新建驱动文件,从网上下载s3c2410_ts.c与s3c2410_ts.h两个文件,将s3c2410_ts.c 文件拷到 linux2.6.14.1/drivers/input/touchscreen 目录下,头文件则拷到源码包的include/asm/arch下, 首先:我们需要修改 linux2.6.14/dri原创 2007-09-30 22:34:00 · 3248 阅读 · 1 评论 -
如何去理解Linux中进程,线程等概念
1 基本概念 1.1. 进程和线程 可执行文件由指令和数据组成。进程就是在计算机上运行的可执行文件针对特定的输入数据的一个实例,同一个可执行程序文件如果操作不同的输入数据就是两个不同的进程。 线程是进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享其所附属的进程的所有的资源,包括打开的文件、页表(因此也就共享整个用户态地址空间)、信号标识及动态分配的内存等等。线转载 2007-08-04 21:31:00 · 892 阅读 · 0 评论 -
抢占,实时
(WinCE) 提问抢占式内核和非抢占式内核的区别是不是抢占式内核的系统核心服务函数可以被中断? 但这种情况下,怎样保证系统的全局数据结构不被多任务破坏?网上的一篇文章好象说 系统(RTOS)不仅可以按任务是否可以抢占,而分为抢占式多任务和非抢占式任务;而且可以按内核是否可以被抢占,而分为抢占式多核心和非抢占式核心。不知这种说法对不对? 我看过uCos,我感觉它只是一个非抢占式核转载 2007-08-04 10:13:00 · 801 阅读 · 0 评论 -
Linux下软件安装方法
对于Linux初学者来说,安装一个很小的软件恐怕都是一件很让人头疼的事,因为在Linux下安装软件不像在 Windows中那样简单。在Linux中大多数软件提供的是源代码,而不是现成的可执行文件,这就要求用户根据自己系统的实际情况和自身的需要来配置、编译源程序后,软件才能使用。多数初学者往往不知道该如何进行配置和编译就盲目地运行一些有执行属性的文件或者机械地运行“make”、“make insta转载 2007-07-07 15:04:00 · 381 阅读 · 0 评论 -
physionet软件安装
这几天帮Doctor安装一个访问麻省理工学院MIT--HIT心电数据库的软件。由于这个软件是MIT以linux下开源软件形式提供的,因此有三种方法来用这个软件:一是在windows下安装cygwin,模拟unix的运行环境,再运行WAVE这个基于XView的linux软件;二是直接在linux系统下安装运行;三是自己在windows下用编程工具做个类似WAVE的软件,对MIT的网络数原创 2007-07-07 16:21:00 · 1280 阅读 · 0 评论 -
Windows和Unix文件的格式互换
linux的文件在每一行结束时只有一个换行符,而在windows中的文件在每一行结束时有一个换行符还有一个回车符,因此在linux下面创建的文件在windows中用记事本打开的时候是没有换行的,每个换行符被表示成了一个黑色的方块,下面的命令可以进行文件格式的转换,便于在不同的系统中查看。linux文件转成dos文件: sed s/$//r/g linux.txt > do转载 2007-07-11 17:39:00 · 319 阅读 · 0 评论 -
operators (>, >>, <, and |) ,pipe
摘自http://www.physionet.org/faq.shtml,有助于理解输入、输出、pipe等概念What is a "standard input" or a "standard output"?These concepts are common to all text mode applications (see the previous question). A prog转载 2007-07-11 09:39:00 · 350 阅读 · 0 评论 -
回车和换行
转载:回车和换行今天总算搞清楚“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别了。在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个转载 2007-07-11 17:52:00 · 323 阅读 · 0 评论 -
基于S3C2410 的时钟频率小结
其中pll 包含两种: MPLL 主要应用于各种设备时钟的提供,将重点讨论UPLL 应用于USB时钟频率应用,为48M其中MPLL的设置主要依靠使用各种锁相环和分频器来改变输入原始的频率,经过锁相环之后可以提升频率,关于频率的选择主要依靠改变CPU寄存器实现,MPLLCON通过改变其中的参数设置即可Mpll = (m * Fin) / (p * 2s)m = (MDIV + 8), p = (转载 2007-07-29 12:42:00 · 1102 阅读 · 1 评论 -
嵌入式linux
uC/OS操作系统内核很小,特别适合初学,而且它是占先式内核,是一个实时的操作系统,特别适合实时性要求较高的场合,其内核很小当然其功能当然也就没有linux强大,而且uC/OS的图形用户界面(GUI)还是刚有雏形,没有linux的GUI好,而它的GUI是收费的。这样的话只是linux是最好了,但是linux本身不是实时的操作系统,不适合实时性高的场合,于是有一种rt-Linux产生了,原创 2007-07-27 11:06:00 · 311 阅读 · 0 评论 -
调度
调度 ----操作系统的基本功能,几乎所有的计算机资源在使用前都要被调度。 任务调度主要是协调任务对计算机系统资源(如内存、I/O设备、CPU)的争夺使用。进程调度又称为CPU调度,其根本任务是按照某种原理为处于就绪状态的进程分配CPU。由于嵌入式系统中内存和I/O设备一般都和CPU同时归属于某进程,所以任务调度和进程调度概念相近,很多场合不加区分。原创 2007-08-05 11:20:00 · 555 阅读 · 0 评论 -
ARM中的MIPS和MHz联系
最近看嵌入式系统方面的文章,经常看到MIPS这个简称,后来查了一下是什么意思。MIPS即Million Instruction Per Second 的简写--计算机每秒种执行的百万指令数。是衡量计算机速度的指标。现如今CPU的频率越来越高,又是流水线又是超标量计算又是双核多核的,单纯以时钟频率来衡量计算机的速度已经不再科学,用MIPS来衡量相对比较合理。以ARM7为内核的S3C44B转载 2007-10-12 16:40:00 · 1370 阅读 · 0 评论