日志列表

  • 基于2.6.19内核小型Linux系统制作与移植(二)

    绝对郁闷 (上海) 发表于 2008-02-11

    内核   修改内核   首先,修改内核源码linux-2.6.19下的Makefile文件,指定目标代码类型与编译器:SUBARCH :=arm;CROSS_COMPILE:=/usr/local/arm/3.4.1/bin/arm-linux-。   然后,在linux-2.6.19/arch/arm/mach-s3c2410/common-smdk.c中根据表1修改内核中的Flash分区信息。这里提醒读者,2.6.16(含)以前内核的源码中没有Flash分... ...全文

  • 基于2.6.19内核小型Linux系统制作与移植(一)

    绝对郁闷 (上海) 发表于 2008-02-11

     ARM9 S3C2410微处理器与Linux的结合越来越紧密,逐渐在嵌入式领域得到广范的应用。目前,在便携式消费类电子产品、无线设备、汽车、网络、存储产品等都可以看到S3C2410与Linux相结合的身影。   S3C2410微处理器是一款由Samsung公司为手持终端设计的低价格、低功耗、高性能,基于ARM920T核的微处理器。它带有内存管理单元(MMU... ...全文

  • 嵌入式系统 Boot Loader 技术内幕

    腾龙 (吉林) 发表于 2008-02-01

    本文详细地介绍了基于嵌入式系统中的 OS 启动加载程序 ―― Boot Loader 的概念、软件设计的主要任务以及结构框架等内容。 1. 引言 在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次: 1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和... ...全文

  • 嵌入式操作系统的两种远程调试方案

    腾龙 (吉林) 发表于 2008-01-31

    一 插桩(stub) 第一种方案是在目标操作系统和调试器内分别加入某些功能模块,二者互通信息来进行调试。上述问题可通过以下途径解决: 调试器与被调试程序的通信 调试器与目标操作系统通过指定通信端口(串口、网卡、并口)遵循远程调试协议进行通信(远程调试协议详见http://rtos.ict.ac.cn/rtos/debugger/)。 被调试程序产生异常及... ...全文

  • 教你一种实现嵌入式Linux系统新方法

    腾龙 (吉林) 发表于 2008-01-31

    摘要 在Linux中会遇到由于文件系统损坏,需要人工修复而导致系统无法正常启动的现象。本文采用Linux初始化内存盘(INITRD)技术,并把内存的一部分作为Linux的根目录,每次启动把完整的文件系统解压到这里,避免了系统从损坏的文件系统启动。这不仅使系统能正常启动,而且提高了系统性能。 引言 在Linux操作系统中,有一项特殊的功能——... ...全文

  • Linux嵌入式系统开发平台选型探讨

    腾龙 (吉林) 发表于 2008-01-29

    摘要:使用Linux进行嵌入式产品开发有一个很大的优势,就是开发资源丰富,且成本低廉;但是,技术路线复杂多样,专业人才相对匮乏是Linux嵌入式系统开发面临的一个难题。本文从实际应用的角度,探讨和研究Linux嵌入式系统开发中的平台选型问题,以期望对各位Linux开发研究者有些许裨益。 关键词:嵌入式系统 Linux开发平台 选型 1 嵌入式系... ...全文

  • 嵌入式系统编程中的代码优化

    kalersop (北京) 发表于 2008-01-28

    在当前计算机技术高度发展的今天,嵌入式系统已经广泛地应用于工业控制、信息家电、办公自动化、移动通信、仪器仪表、医疗电子以及国防等领域。随着国内外各种嵌入式产品的进一步开发和推广,嵌入式技术越来越和人们的生活紧密结合。   嵌入式系统一般指非PC系统,通常完成一种或多种特定的计算机功能。它是以应用为中心,软硬件... ...全文

  • 虚拟机Linux系统下连接ARM开发板的方法

    kalersop (北京) 发表于 2008-01-28

      基本环境: 主机OS:Windows XP 虚拟机:VMware Workstation 6.0 虚拟OS:fedora 7.0 ARM型号:华恒HHARM2410 步骤: 1.在虚拟机中增加串口: 点击Edit virtue machine settings,点击添加,添加一个串行端口(com1); 2.修改网络连接: 右键点击虚拟机上网卡图标,选择“Edit”,将“系统”网络连接改为桥接网络(第一个选项)。 3.设... ...全文

  • 用NFS服务开发ARM Linux程序的方法介绍

    kalersop (北京) 发表于 2008-01-28

      NFS简单配置 NFS是实现两机间进行通讯访问的一种简单方法。在嵌入式Linux实验过程中,我们通过配置NFS实现PC机和实验箱ARM-Linux平台之间的访问。 原理是在PC机Linux中开启LFS服务,设置一个共享目录(这里是/arm2410),所有的源码编辑改动都可以在PC机中进行方便的修改,在ARM-Linux实验环境中,将PC-Linux的/arm2410目录... ...全文

  • 使用虚拟机嵌入式Linux开发前的必要准备

    kalersop (北京) 发表于 2008-01-28

      1、准备安装文件,一般是一个安装可执行文件和一个破解key生成器,安装后一路next到最后,生成一个能用的key复制进去就完成了VMware软件安装; 2、运行软件,建立一个新的虚拟机,起个名字,或者直接选择Red Hat Linux,然后选择虚拟机存放位置,一般在一个区空出8-10G就可以了,注意:存放的区必须是Fat32格式,否则在安装系统格式化硬盘的... ...全文

  • 嵌入式Linux系统下的网页浏览器 WebKit

    kalersop (北京) 发表于 2008-01-28

    WebKit,很多都是用的这个  http://webkit.org/  Ubuntu下编译,基于QT。   http://mondaybynoon.com/2007/04/23/installing-and-running-webkit-in-linux-using-qt/  Google的Android以及Openmoko的浏览器都是基于WebKit的。  Openmoko是使用的WebKit的Gtk+支援  Android是使用的  OWB是另外的一个基于WebKit的... ...全文

  • 嵌入式基础:ARM下GCC交叉编译器的制作

    kalersop (北京) 发表于 2008-01-28

      1.下载所需文件 以下是我在Cygwin环境下制作arm-gcc(uclibc)交叉编译器中所需要的文件: binutils-2.14.90.0.8 uClibc-0.9.27 gcc-3.4.2 linux-libc-headers-2.4.29 PS:一般来说这里还需要下一些patch,因为我对编译器的理解还不够,加上这个事情是工作内容,还有些其他的特殊需求,为了省麻烦,我用了一个很龌龊的方法... ...全文

  • Linux下PCI设备驱动程序开发基本框架

    kalersop (北京) 发表于 2008-01-28

    Linux下PCI设备驱动程序开发基本框架 PCI是一种广泛采用的总线标准,它提供了许多优于其它总线标准(如EISA)的新特性,目前已经成为计算机系统中应用最为广泛,并且最为通用的总线标准。Linux的内核能较好地支持PCI总线,本文以Intel 386体系结构为主,探讨了在Linux下开发PCI设备驱动程序的基本框架。 一、PCI总线系统体系结构 PCI是外... ...全文

  • Linux系统对ISA总线DMA的实现(下)

    kalersop (北京) 发表于 2008-01-28

    3.3 对DMAC的保护 DMAC是一种全局的共享资源,为了保证设备驱动程序对它的独占访问,Linux在kernel/dma.c文件中定义了自旋锁dma_spin_lock来保护它(实际上是保护DMAC的I/O端口资源)。任何想要访问DMAC的设备驱动程序都首先必须先持有自旋锁dma_spin_lock。如下: static __inline__ unsigned long claim_dma_lock(void) { unsi... ...全文

  • Linux系统对ISA总线DMA的实现(中)

    kalersop (北京) 发表于 2008-01-28

    3 Linux对读写操作8237 DMAC的实现 由于DMAC的各寄存器是在I/O端口空间中编址的,因此读写8237 DMAC是平台相关的。对于x86平台来说,Linux在include/asm-i386/Dma.h头文件中实现了对两个8237 DMAC的读写操作。 3.1 端口地址和寄存器值的宏定义 Linux用宏MAX_DMA_CHANNELS来表示系统当前的DMA通道个数,如下: #define MAX_DMA... ...全文

  • Linux系统对ISA总线DMA的实现(上)

    kalersop (北京) 发表于 2008-01-28

    申明:这份文档是按照自由软件开放源代码的精神发布的,任何人可以免费获得、使用和重新发布,但是你没有限制别人重新发布你发布内容的权利。发布本文的目的是希望它能对读者有用,但没有任何担保,甚至没有适合特定目的的隐含的担保。更详细的情况请参阅GNU通用公共许可证(GPL),以及GNU自由文档协议(GFDL)。 欢迎各位指出文档中的错... ...全文

  • 嵌入式linux启动信息完全注释(3)

    绝对郁闷 (上海) 发表于 2008-01-26

    第三节:加载linux内核完毕,转入cpu_idle进程 系统启动过程中进程情况:①init进程一般来说, 系统在跑完 kernel bootstrapping 内核引导自举后(被装入内存、已经开始运行、已经初始化了所有的设备驱动程序和数据结构等等), 就去运行 init『万process之父』, 有了它, 才能开始跑其他的进程,因此,init进程,它是内核启动的第一个用户级... ...全文

  • 嵌入式linux启动信息完全注释(2)

    绝对郁闷 (上海) 发表于 2008-01-26

    第二部分 : linux内核初始化以及启动第一节:start_kernelLinux的源代码可以从www.kernel.org得到,或者你可以查看linux代码交叉引用网站:http://lxr.linux.no/ 进行在线的代码查看,这是一个很好的工具网站。在start_kernel中将调用到大量的init函数,来完成内核的各种初始化。如:page_address_init();sched_init();page_alloc_init(... ...全文

  • 嵌入式linux启动信息完全注释(1)

    绝对郁闷 (上海) 发表于 2008-01-26

    嵌入式linux启动信息完全注释摘要我们在这里讨论的是对嵌入式linux系统的启动过程的输出信息的注释,通过我们的讨论,大家会对嵌入式linux启动过程中出现的、以前感觉熟悉的、但却又似是而非的东西有一个确切的了解,并且能了解到这些输出信息的来龙去脉。嵌入式linux的启动信息是一个很值得我们去好好研究的东西,它能将一幅缩影图... ...全文

  • 16M的Linux系统

    绝对郁闷 (上海) 发表于 2008-01-25

    本文将带领大家构建一个迷你型的 Linux 系统。它占用的硬盘空间远小于 16M 字节,但是却包括了 XFree86 的 X Window 窗口系统。目标 本文要构建的这个迷你型的 Linux 系统只能在一台特定的单机上运行,如果读者朋友们有兴趣的话,在这个系统的基础上加以改进,是可以构建出通用的、可以在大多数常规 PC 机上即插即用的系统来的。但... ...全文

231/212>

嵌入应用

嵌入应用