移植2.6.16内核到at91rm9200 1、下载、安装从 www.kernel.org 上下载Linux2.6.16版的kernel,解压到 /usr/src/arm/linux-2.6.16从http://maxim.org.za/AT91RM9200/2.6/ 上下载针对rm9200的补丁,文件名:2.6.16-at91.patch.gz,复制到 /usr/src/arm/linux-2.6.16,然后在命令行界面中执行 zca... 2023-06-13 移植内核AT91RM9200文章技术应用嵌入式开发
极高集成度音频编解码器 日前,德州仪器 (TI)推出一款具有嵌入式 miniDSP 内核的业界最高集成度音频编解码器,可在宽带语音采样率高达 16 kHz 的应用中抵消回声及噪声。该 TLV320AIC3262 高度集成 5 个放大器与 2 个 miniDSP 内核,可帮助设计人员同时连接3 个器件,如应用、蓝牙 (Bluetooth) 以及基带处理... 2023-06-13 音频编解码器TLV320AIC3262miniDSP内核文章技术应用嵌入式开发
Cortex-M3扫盲 Q1: Cortex-M3是什么?A: 它是ARM在重视MCU市场后,设计的一个用于32位单片机的处理器内核。Cortex-M3一经推出就得到整个业界的追捧,其先进的架构和很多突破性的特性更是促使MCU业界迎来“新生代”。Cortex-M3对应的ARM架构版本号是ARMv7M(注意,不要与ARM7混淆,ARM7... 2023-06-13 Cortex-M3单片机内核文章其他
建立一个属于自己的AVR的RTOS(第四篇:延时服务) 第四篇:只有延时服务的协作式的内核 CooperativeMultitasking前后台系统,协作式内核系统,与占先式内核系统,有什么不同呢?记得在以前看过这样的比喻,“你(小工)在用厕所,经理在外面排第一,老板在外面排第二。如果是前后台,不管是谁,都必须按排队的次序使用厕所;如果是协作式,那... 2023-06-13 AVRRTOS延时服务协作式内核文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第五篇: 内核) 第五篇:完善的协作式的内核现在为上面的协作式内核添加一些OS中所必须的服务:1挂起和重新运行任务2信号量(在必要时候,可以扩展成邮箱和信息队列)3延时#include#include#includeunsignedcharStack[400];registerunsignedcharOSRdyTblasm("r2")... 2023-06-13 AVRRTOS协作式内核文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第六篇:调度法) 第六篇:时间片轮番调度法的内核 时间片轮调法是非常有趣的。本篇中的例子,建立了3个任务,任务没有优先级,在时间中断的调度下,每个任务都轮流运行相同的时间。如果在内核中没有加入其它服务,感觉上就好像是有三个大循环在同时运行。本例只是提供了一个用时间中断进... 2023-06-13 AVRRTOS时间片轮番调度法内核文章单片机AVR单片机
linux内核工作队列讲解和源码详细注释 1. 前言工作队列(workqueue)的Linux内核中的定义的用来处理不是很紧急事件的回调方式处理方法。以下代码的linux内核版本为2.6.19.2, 源代码文件主要为kernel/workqueue.c.2. 数据结构/* include/linux/workqueue.h */ // 工作节点结构struct work_struct { // 等待时间un... 2023-06-13 Linux内核队列文章软件开发
什么是Linux内核模块 什么是模块?从代码的特征上来看,模块就是可完成一项独立功能的一组函数的集合。从使用特征上来看,它在被需要时可以随时被安装,而在不需要时又可以随时被卸载。总之,模块是一个为内核(从某种意义上来说,内核也是一个模块)或其他内核模块提供使用功能的代码块。准确地说,模块就... 2023-06-13 Linux内核文章软件开发
Linux Iptables内核2.6.18添加time模块 系统:CentOS 5.1 内核:2.6.18-53.1.19.el5iptables 版本 1.3.5(系统自带的)下载一个内核:linux-2.6.18 解压到/usr/src/linux#cd linux#make mrproper#make menuconfig什么也不做,退出.vi Makefile把EXTRAVERSION = 更改为EXTRAVERSION = -53... 2023-06-13 LinuxIptables内核2.6.18添加time模块文章软件开发
关于Linux操作系统内核中的指针和错误值 在内核的代码和驱动程序中经常见到ERR_PTR, IS_ERR, PTR_ERR这三个内联函数。许多的内核函数需要返回一个指针,但是函数的调用可能失败,一般我们处理这样的情形都是返回一个NULL指针,就像malloc或kmalloc在没有获得指定的空间申请时的返回值一样。但是有时我们想知道导致函... 2023-06-13 Linux操作系统内核指针错误值文章软件开发Linux
linux-2.6.26内核中ARM中断实现详解(1) 看了一些网络上关于linux中断实现的文章,感觉有一些写的非常好,在这里首先感谢他们的无私付出,然后也想再补充自己对一些问题的理解。先从函数注册引出问题吧。一、中断注册方法在linux内核中用于申请中断的函数是requeST_IRq(),函数原型在Kernel/irq/manage.c中定义:int requ... 2023-06-13 linux-2.6.26内核ARM中断文章软件开发Linux
linux-2.6.26内核中ARM中断实现详解(2) 三、中断处理过程这一节将以S3C2410为例,描述linux-2.6.26内核中,从中断开始,中断是如何一步一步执行到我们注册函数的。3.1 中断向量表 archarmkernelentry-armv.S__vectors_STart:swi SYS_ERROR0b vector_und + stubs_offsetldr pc, .LCvswi + stubs_offsetb ve... 2023-06-13 linux-2.6.26内核ARM中断文章软件开发Linux
Linux内核编码风格 Linux内核编码风格这是一份简短的,描述linux内核首选编码风格的文档。编码风格是很个人化的东西,而且我也不愿意把我的观点强加给任何人,不过这里所讲述的是我必须要维护的代码所遵守的风格,并且我也希望绝大多数其他代码也能遵守这个风格。所以请至少考虑一下本文所述的观点... 2023-06-13 Linux内核文章软件开发
linux内核中一些常用的数据结构和操作 1. 前言 本文介绍linux内核中一些常用的数据结构和操作。2. 双向链表(liST)linux内核中的双向链表通过结构 struct list_head来将各个节点连接起来,此结构会作为链表元素结构中的一个参数:struct list_head {struct list_head *next, *prev;};链表头的初始化,注意,结构中的指... 2023-06-13 Linux内核数据结构文章软件开发
kbuild系统-编译到内核和编译成模块的区别 代码编译到内核和编译成模块在代码中有什么区别呢?从模块的代码中看是一样的。入口函数都是MODULE_init(fun),但是代码中的条件编译会使宏module_init()在编译到内核和编译成模块的情况下替换成不同的代码。include/linux/init.h中可知#ifndef MODULE...#define module_in... 2023-06-13 kbuild编译内核文章软件开发Linux
嵌入式Linux内核调试技术 近年处理器技术发展速度加快,嵌入式领域发生了翻天覆地的变化。特别是网络的普及,消费电子异军突起,嵌入式与互联网成为最热门的技术。在所有操作系统中,Linux是发展很快、应用很广泛的一种操作系统。Linux的开放性以及其他优秀特性使其成为嵌入式系统开发的首选。嵌入式系统... 2023-06-13 嵌入式内核调试文章软件开发嵌入式OS
Scull在2.6.35-30内核中的编译解决方案 LDD3作为从事驱动开发工作人员的必要参考资料,认真研究书中的附带源码具有很高的参考价值,但由于代码基于2.6.10内核,部分内核API较老,导致在2.6.35-30等较新内核上编译不能通过,由于工作需要,特花了一段时间进行整理,本篇文章对示例源码中的第一个驱动程序SCULL进行整理,供各位... 2023-06-13 Scull2.6.35-30内核编译文章软件开发Linux
Linux内核高手炼成记 我曾经问别人如何开始内核编程的学习,他们基本上都说:①如果你不需要了解内核是如何为你工作的,你为何要尝试呢?②你应该订阅Linux内核邮件列表,然后努力去理解。③如果你不去编写针对Linux内核的代码,你就是在浪费时间。这些对我一点儿帮助都没有。所以我在这里列举了一些可行... 2023-06-13 Linux内核炼成记文章软件开发
Linux内核完全支持Xen是否晚了点? 距离Xen首次发布快有八年了,它终于获得了Linux的完全支持。但这来得有点晚。据甲骨文公司的Linux工程师Wim Coekaerts在其博客中写道:Linux内核版本2.6.39及以上版本包含直接能作为管理域内核(Dom0)和子机(DomU)运行的Linux所需的每个组件。不过在过去几年,基于Xen的hypervi... 2023-06-13 Linux内核支持Xen文章软件开发
Linux 2.6 内核中的电源管理技术 前言本系列文章将结合近年来不断在各种硬件(包括 CPU、芯片组、PCI Express 等各种最新总线标准以及外设)上新增的节能技术.从 Linux? 2.6内核及整个 software stack (包括 kernel、middleware 以及各种用户态 utility)如何添加对这些创新的节能技术的支持这一角度,为读... 2023-06-13 Linux2.6内核电源管理技术文章软件开发
Linux 2.6 内核中的最新电源管理技术综述 前言本系列文章将结合近年来不断在各种硬件(包括 CPU、芯片组、PCI Express 等各种最新总线标准以及外设)上新增的节能技术。从 Linux® 2.6内核及整个 software stack (包括 kernel、middleware 以及各种用户态 utility)如何添加对这些创新的节能技术的支持这一角度,为... 2023-06-13 Linux2.6内核电源管理文章软件开发
嵌入式 Linux 开发大致涉及三个层次 嵌入式 Linux 开发大致涉及三个层次:引导装载程序、Linux 内核和图形用户界面。在本文中,我们将集中讨论涉及这三层的一些基本概念;深入了解引导装载程序、内核和文件系统是如何交互的;并将研究可用于文件系统、GUI 和引导装载程序的众多选项中的一部分。Linux 社区正积极地... 2023-06-13 嵌入式Linux开发内核文章软件开发
Linux 内核的定制、安装 Linux内核是Ubuntu操作系统的心脏。Ubuntu自带的内核通常包含你所需要的所有驱动程序,但有时你希望调整你的内核或如果由于某些特别原因你需要重新编译,本手册将帮助你。象这个不太详尽的文档事实上可以在KernelCompileHowto找到。准备要创建内核,你需要 build-essential fa... 2023-06-13 Linux内核定制安装文章软件开发
编译Linux操作系统内核的步骤 很多朋友一听到说编译内核,就觉得很高深莫测,非常头大。其实,通常其它操作系统的内核编译是比较繁琐的。然而,由于Debian强大的dpkg软件包管理系统,使得内核的升级、编译也变得容易很多。如果下面的步骤都注意并执行了,编译内核不是很复杂的事情,我在基于debian的ubuntu系统上第... 2023-06-13 编译Linux操作系统内核文章软件开发Linux
linux内核裁剪的具体过程和方法 在menuconfig中配置:详细介绍内核配置选项及删改情况第一部分:全部删除Code maturity level options ---> 代码成熟等级选项[]Prompt for development and/or incomplete code/drivers 默认情况下是选择的,这将会在设置界面中显示还在开发或者还没有完成的代码与驱动.不选。... 2023-06-13 Linux内核文章软件开发