
嵌入式技术
文章平均质量分 94
yel617
这个作者很懒,什么都没留下…
展开
-
linux-2.6.14内核移植
下载linux-2.6.14.1.tar.bz2 tar -zxvf linux-2.6.14.1.tar.bz2 下载arm-linux-3.4.1.tar.jz tar -jxvf arm-linux-3.4.1.tar.jz 修改内核目录树根下的的 Makefile,指明交叉编译器 [arm@localhost linux-2.6.14]# vi Makefile 找原创 2009-07-15 11:52:00 · 2238 阅读 · 1 评论 -
tftp-server配置
TFTP是用来下载远程文件的最简单网络协议,它基于UDP协议而实现。嵌入式linux的tftp开发 环境包括两个方面:一是嵌入式linux宿主机的 tftp-server支持,二是嵌入式linux目标机的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入 式目标机就不用配置了。下面就详细介绍一下linux宿主机tftp-server的安装配置。在FC6光盘转载 2010-05-26 15:31:00 · 1429 阅读 · 0 评论 -
配置文件/etc/inittab详解
二、运行initinit的进程号是1,从这一点就能看出,init进程是系统所有进程的起点,Linux在完成核内引导以后,就开始运行init程序,。init程序需要读取配置文件/etc/inittab。inittab是一个不可执行的文本文件,它有若干行指令所组成。在Redhat系统中,inittab的内容如下所示(以“###"开始的中注释为笔者增加的): # # inittab This file describes how the INIT process should set up #转载 2010-09-08 16:12:00 · 850 阅读 · 0 评论 -
linux内核中Kconfig文档的作用
linux内核中Kconfig文档的作用2.6内核的源码树目录下一般都会有两个文文:Kconfig和Makefile。分布在各目录下的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文件相关的内核配置菜单。在内核配置make menuconfig(或xconfig等)时,从Kconfig中读出配置菜单,用户配置完后保存到.config(在顶层目录下生成转载 2011-12-29 11:15:31 · 683 阅读 · 0 评论 -
Linux内核Makefile文件
=== 1 概述 === 2 角色分工 === 3 内核编译文件 --- 3.1 目标定义 --- 3.2 内嵌对象 - obj-y --- 3.3 可加载模块 - obj-m --- 3.4 导出符号 --- 3.5 库文件 - lib-y --- 3.6 目录递归转载 2011-12-29 11:11:52 · 257 阅读 · 0 评论 -
swap分区的知识
swap分区到底有什么用呢? Swap,即交换区,除了安装Linux的时候,有多少人关心过它呢?其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。 Swap的原理是一个较复杂的问题,需要大量的篇幅来说明。在这里只作简单的介绍,在以后的文章中将和大家详细讨论Swap实现的细节。 众所周转载 2010-07-21 11:30:00 · 693 阅读 · 0 评论 -
内核函数 copy_to_user
835 /** 836 * copy_to_user: - Copy a block of data into user space. 837 * @to: Destination address, in user space. 838 * @from: Source address, in kernel space. 839 * @n: Number of bytes to原创 2010-06-06 10:27:00 · 2702 阅读 · 0 评论 -
linux内核register_chrdev_region()系列函数
内核中所有已分配的字符设备编号都记录在一个名为 chrdevs散列表里。该散列表中的每一个元素是一个 char_device_struct结构,它的定义如下: static struct char_device_struct { struct char_device_struct *next; // 指向散列冲突链表中的下一个元素的指针 u原创 2010-05-27 11:06:00 · 1301 阅读 · 0 评论 -
Linux下configure命令参数的详细说明
Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。与一些技巧相比,Configure显得基础一些,当然使用和学习起来就显得枯燥乏味一些,当然要成为高手,对基础转载 2010-05-04 14:05:00 · 1173 阅读 · 0 评论 -
Linux命令:lsmod 显示已载入系统的模块
lsmod(list modules) 功能说明:显示已载入系统的模块。语 法:lsmod补充说明:执行lsmod指令,会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。范例:[root@linux ~]#原创 2010-03-03 09:27:00 · 3134 阅读 · 0 评论 -
Linux串口编程
串口概述常见数据通信方式:并行通信,串行通信UART的主要操作: >数据发送及接受 >产生中断 >产生波特率 >Loopback模式 >红外模式 >自动流控模式串口参数的配置主要包括:波特率、数据位、停止位、流控协议。 linux中的串口设备文件放于/de/目录下,串口一,串口二分别为"/dev/ttyS0","/dev/ttyS转载 2012-06-30 09:54:24 · 941 阅读 · 3 评论 -
Linux命令:modinfo显示kernel模块信息
modinfo(module infomation)功能说明:显示kernel模块的信息。语 法:modinfo [-adhpV][模块文件]补充说明:modinfo会显示kernel模块的对象文件,以显示该模块的相关信息。参 数: -a或--author 显示模块开发人员。 -d或--description 显示模块的说明。 -h或--h原创 2010-03-03 09:15:00 · 4684 阅读 · 0 评论 -
华为E1750在DM6446上的移植
一、环境1、 开发板内核:linux kernel 2.6.102、 3G卡片:华为E1750二、相关工具1、 usb-modeswitch-1.1.2.tar.bz2Usb_modeswitch是对USB设备的工作模式进行转换一种万能工具,当然这种工具,只有在linux下才能体现其巨大的作用。随着移动通信,无线通信的发展,越来越多的设备被制作成USB接口,像一些无线网卡原创 2010-05-18 09:57:00 · 11062 阅读 · 48 评论 -
ld.so.conf 文件与PKG_CONFIG_PATH变量
一、编译和连接 一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I 参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库的路径的不同,造成了用 -I 参数指定的头文件的路径也可能不同,其结果就是造成了编译命令界面的不统一。如果使用 -L 参数,也会造成连接转载 2010-05-17 10:07:00 · 608 阅读 · 0 评论 -
ViVi的分区
1、vivi(bootloader)启动后可使用命令:part show查看mtdpart信息;bon part info查看bon分区信息。 2、vivi中的bon分区相关:vivi启动linux时会将linux_cmd_line(其在vivi内核的位置为: vivi/arch/s3c2410/smdk.c中的:char linux_cmd[] = "noi转载 2009-07-21 18:56:00 · 913 阅读 · 0 评论 -
linux-2.6.20内核移植 busybox1.9.2 并移植USB驱动
内核版本: linux2.6.20 buxybox版本: busybox1.9.2 交叉编译器: arm-gcc-3.4.1************************************************************************************* linux2.6.20内核配置原创 2009-09-29 19:38:00 · 1641 阅读 · 0 评论 -
linux-2.6.20内核移植 AX88697 驱动
1、修改arch/arm/目录下的Kconfig文件,增加ISA总线支持,使其在make menuconfig 时出现NE2000的网卡配置选项。 config ARCH_S3C2410 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" select GENERIC_G原创 2009-09-29 20:28:00 · 822 阅读 · 1 评论 -
7279键盘驱动程序
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2010-01-18 13:16:00 · 1610 阅读 · 0 评论 -
yaffs2文件系统的制作
在S3C2410上移植yaffs2文件系统(1)下载YAFFS文件系统代码,下载网址:http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/ (2)在要移植的内核目录下建立yaffs2文件夹# cd fs# mkdir yaffs2# cd yaffs2 # cp /yaffs2/*.h .# cp /yaffs2/*.c .# cp /ya原创 2009-11-25 23:01:00 · 674 阅读 · 0 评论 -
hello word 模块
最简单的内核模块 hello.c #include #include MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void){ printk(KERN_ALERT "Hello, Techshine !/n"); return 0;} static void hello_exit原创 2009-11-26 19:54:00 · 500 阅读 · 1 评论 -
linux文家系统启动分析
一、内核启动完后,首先运行/linuxrc /linuxrc 内容: #!/bin/sh echo "mount /etc as ramfs" /*挂载/etc为ramfs */ #/bin/mount -n -t ramfs ramfs /etc /* 加载原创 2010-02-04 13:58:00 · 817 阅读 · 0 评论 -
2410 IO端口驱动程序
TECHV-2410开发板,通过IO口 GPG8 与GPG9 两个口控制两个LED灯驱动程序:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2009-12-12 11:11:00 · 1340 阅读 · 0 评论 -
嵌入式linux启动信息完全注释
摘要我们在这里讨论的是对嵌入式linux系统的启动过程的输出信息的注释,通过我们的讨论,大家会对嵌入式linux启动过程中出现的、以前感觉熟悉的、但却又似是而非的东西有一个确切的了解,并且能了解到这些输出信息的来龙去脉。嵌入式linux的启动信息是一个很值得我们去好好研究的东西,它能将一幅缩影图呈现在我们面前,来指导我们更加深入地理解linux内核。 关键字:linux,嵌入式,启转载 2010-02-26 09:33:00 · 531 阅读 · 0 评论 -
交叉编译的基本概念
在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说, 就是在一个平台上生成另一个平台上的可执行代码。这里需要注意的是所谓平台,实际上包含两个概念:体系结构(Architecture)、操作系统 (Operating System)。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上转载 2010-02-26 10:00:00 · 1438 阅读 · 0 评论 -
嵌入式Linux文件系统及其存储机制分析
嵌入式系统与通用PC机不同,一般没有硬盘这样的存储设备而是使用Flash闪存芯片、小型闪存卡等专为嵌入式系统设计的存储装置,本文分析了嵌入式系统中常用的存储设备及其管理机制,介绍了常用的基于FLASH的文件系统类型。 1.嵌入式系统存储设备及其管理机制分析 构建适用于嵌入式系统的Linux文件系统,必然会涉及到两个关键点,一是文件系统类型的选择,它关系到文件系统的读写性能、尺寸大转载 2010-03-18 10:07:00 · 472 阅读 · 0 评论 -
vivi常用命令
vivi就象DOS一样可以配置板子的硬件资源 1.part命令·part show 显示分区信息·part add partname part_start_addr part_leng 0 添加分区·part del partname 删除分区·part save 保存part 分区信息 2.net 命令·net set ipaddr xx.xx.xx.原创 2010-02-07 14:09:00 · 553 阅读 · 0 评论