面对不断升级的内核,我们该如何学习LINUX设备驱动! 面对不断升级的linux内核、GNU开发工具、linux环境下的各种图形库,很多linux应用程序开发人员和linux设备驱动开发人员即兴奋,又烦躁。兴奋的是新的软件软件、工具给我提供了更强大的功能,烦躁的是适应新软件的特性、搭建新环境是一项非常繁琐的事情。本文想从以下3个方面探... 2023-06-13 不断升级内核学习LINUX设备驱动文章软件开发Linux
使用 GDB 调试 uCLinux 内核 慢慢的大家的 uClinux 都可以跑起来了,也能够自己编译一个内核出来了。但是,如果自己要写驱动、或者修改内核的一些代码、或者像 nickmit 一样要自己写一个内核的移植,那么调试就是不可或缺的了。在这里我摸索了一个使用我们廉价的 Wiggler + GDB + OCDLibremote 来调试内核... 2023-06-13 gdb调试uClinux内核文章软件开发Linux
linux驱动之内核定时器驱动设计 我的环境:Fedora 14 内核版本为2.6.38.1开发板:ARM9 TQ2440移植内核版本:linux-2.6.30.4这个驱动主要实现内核定时器的基本操作。内核定时器主要是是通过下面的结构体struct timer_list实现。需要的头文件包括#include,但是在实际开发过程中不需要包含该头文件,因为在sched.... 2023-06-13 Linux驱动内核定时器驱动设计文章软件开发
linux新内核编写设备驱动出错的地方 1.注释掉#include 这个文件。2.出现错误unknown field 'ioctl' specified in initializer。出现原因:2.6.36后的file_operations结构发生了重大变化。取消了原有的ioctl成员,添加来新的成员 long (*unlocked_ioctl) (struct file *, unsigned int,... 2023-06-13 Linux内核设备驱动经验分享Linux内核文章软件开发
Linux内核中读写文件数据的方法 1. 打开文件filp_open()在kernel中可以打开文件,其原形如下:strcut file* filp_open(const char* filename, int open_mode, int mode);该函数返回strcut file*结构指针,供后继函数操作使用,该返回值用IS_ERR()来检验其有效性。参数说明filename: 表明要打开或创建文件的名称(... 2023-06-13 Linux内核读写文件方法文章软件开发
如何使用dtb方式启动内核 老式的u-boot使用ATAGS的方式启动linux内核,本文使用新式的dtb方式启动内核。我使用的内核是linux-3.17.2版本,下面开始编译内核。(1) 解压内核tar jxf linux-3.17.2.tar.bz2复制代码(2)配置linux内核,由于am335x在内核中都归为omap2系列,故可以使用如下命令:make ARCH=arm om... 2023-06-13 Linuxdtb内核文章软件开发
作为一个新人,怎样学习嵌入式Linux 作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下。在学习嵌入式Linux之前,肯定要有C语言基础。汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会)。C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。比如写一个数组排序、输入数字... 2023-06-13 嵌入式Linux内核驱动文章软件开发
内核线程和进程的区别 前言:从内核的角度来说,它并没有线程这个概念。Linux把所有线程都当做进程来实现。内核并没有准备特别的调度算法或者定义特别的数据结构来表示线程。相反,线程仅仅被视为一个与其他进程共享某些资源的进程。每个线程都拥有唯一属于自己的task_struct,所以在内核中,它看起来就... 2023-06-13 内核线程进程Linux文章软件开发
linux内核的三种调度方法 linux内核的三种调度方法:1,SCHED_OTHER 分时调度策略,2,SCHED_FIFO实时调度策略,先到先服务3,SCHED_RR实时调度策略,时间片轮转实时进程将得到优先调用,实时进程根据实时优先级决定调度权值,分时进程则通过nice和counter值决定权值,nice越小,counter越大,被调度的概率越大,也就是曾经... 2023-06-13 Linux内核调度方法文章软件开发
理解 linux 内核的软中断 软中断介绍把可以延迟的处理从硬中断处理程序独立出来,这样这个处理可以在开中断的情况下运行,这个处理就是软中断。可见,软中断的这种脱离可以大大缩短硬中断的响应时间,对于很多实时应用来说及其重要。我们本文只谈软中断,至于tasklet、workqueue等我们以后再谈。我们在讲述... 2023-06-13 Linux内核软中断文章软件开发
ARM7内核的中断屏蔽方法 引言CPU在执行程序的过程中,由于外部的某种原因,有必要尽快地中止当前程序的执行,而去执行相应的处理程序,待处理结束后再回来继续执行被中止了的原程序,这种情况称为“中断”。从事嵌入式开发的工程师对中断的概念都很熟悉,在x86系列CPU体系中,软件设计人员会调用ena... 2023-06-13 单片机ARM内核文章