- 博客(9)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
转载 linux常见知识
1) Linux中主要有哪几种内核锁? 2) Linux中的用户模式和内核模式是什么含意? 3) 怎样申请大块内核内存? 4) 用户进程间通信主要哪几种方式? 5) 通过伙伴系统申请内核内存的函数有哪些? 6) 通过slab分配器申请内核内存的函数有? 7) Linux的内核空间和用户空间是如何划分的(以32位系统为例)? 8) vmalloc()申请的内存有什么特点?
2013-10-21 17:58:50 542
转载 作为一个新人,怎样学习嵌入式Linux?(韦东山)
被问过太多次,特写这篇文章来回答一下。 在学习嵌入式Linux之前,肯定要有C语言基础。汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会)。 C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。比如写一个数组排序、输入数字求和什么的。 学C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决;执行出错没关系,自己去分析。以前我是用 VC来练习C语
2013-10-16 14:58:12 724
原创 bootloader
一个嵌入式系统从软件角度来看可以分为三个层次: 1.引导加载程序 包括固化在固件(firmware)中的boot程序,和bootloader两大部分。 2.Linux内核 特定于嵌入式平台的定制内核 3.文件系统 包括了系统命令和应用程序。 软件层次: 同时装有bootloader、内核的启动参数、内核映像和根文件系统映像的固态存储设备的典型空间分配。 Bootloa
2013-10-14 13:59:50 895
原创 并发和竞态
scull的缺陷 在scull内存管理代码中。scull必须判断所请求的内存是否已经分配好。 if( !dptr->data[s_pos]){ dptr->data[s_pos] = kmalloc(quantum, GFP_KERNEL); if(!dptr->data[s_pos]){ goto out; } } 如果有AB两个进程,假设都同时到
2013-10-14 09:22:53 597
原创 字符设备驱动程序
驱动程序的定义:使硬件工作的软件 驱动程序分类: 字符设备驱动(重点),网络接口驱动(重点),块设备驱动 字符设备: 按字节为最小单位来访问的设备。字符驱动则负责驱动字符设备,通常实现open,close,read,write系统调用 块设备: Unix:只能一次传送一个或多个长度是512字节(或更大的2次幂的数)的整块数据。Linux:允许块设备传送热议数目的字节。
2013-10-14 09:16:57 754
原创 中断处理
中断的概念:用于CPU与外设之间信息交互的机制。 为什么需要中断? 1、外设的处理速度一般慢于CPU; 2、CPU不能一直等待外部事件 所以设备必须有一种方法来通知CPU它的工作进度,这种方法就是中断。 中断的实现: 1、向内核注册中断; 2、实现中断处理函数。 中断注册: request_irq用于实现中断的注册功能 : int request_irq(unsig
2013-10-14 09:11:11 974
原创 platform总线
虚拟总线: 由两部分组成: platform_device和platform_driver 工作流程: 通过platform机制开发底层设备驱动的流程图: 定义 platform_device | 注册 platform_device | 定义 platform_driver | 注册 platform_driver platform设备: struct pl
2013-10-14 09:10:30 573
原创 总线/设备/驱动模型
设备元素: 总线, 驱动, 设备 总线:处理器和设备之间的通道,在设备模型中,所有的设备都通过总线相连,甚至是内部的虚拟“platform”总线(定时器,看门狗并没有直接相连)。在linux设备模型中,总线由bus_type结构表示,定义在 总线的注册使用: bus_register(struct bus_type *bus); 若成功,新的总线将被添加进系统,并可以在sys
2013-10-14 09:08:56 594
原创 Kobject/kset的使用
Kobject实现了基本的面向对象管理机制,是构成linux 2.6设备模型的核心结构。它与sysfs文件系统紧密相连,在内核中注册的每个kobject对象对应sysfs文件系统中的一个目录。 作用:用来创建sysfs下面的目录和文件的,属性对应的文件。 file://D:\資料\学习资料\linux相关\演示代码\kobject\kobject.c> kobject操作
2013-10-14 09:06:26 709
linux-3.2 支持 kgdb 吗?需要如何配置kernel?
2014-04-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人