自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿发的博客

——————Welcome to my blog!——————

原创 关于hello world驱动的解析

<br />obj-m+=hello.o<br />all:<br />        make -C /opt/EmbedSky/linux-2.6.30.4 M=$(pwd) modules<br />clean:<br />    ...

2011-05-09 15:40:00

阅读数 509

评论数 0

原创 送给IT工程师实用的东西

<br />    一般来说我们做IT的文采都欠佳,特别是不太会赞美女孩子,所以女人缘都不是太好。见天在网上看到这些华丽的词汇觉得应该有用,就发上来给大家分享。愿我们IT一族都能早日修成正果。。。。<br /> <br />天生丽质 慧质兰心 秀外慧中 暗香盈袖...

2011-03-11 09:00:00

阅读数 744

评论数 0

原创 S3C2440的存储器管理

以前不知道S3C2440的每个BANK都要设置位宽,也不知道为什么要设置,今天弄懂了。在使用BANK之前要设置每个BANK所接的外设时多少位的?由BWSCON寄存器设置,默认情况为8位。由于BANK0位启动区,所以有硬件指示,通过读OM[1:0]引脚来设置。 当宽度为8位的时候,"Mem...

2011-03-04 17:42:00

阅读数 1056

评论数 0

原创 路由器、二层/三层交换机、集线器的详细工作原理

<br />层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下: <br />(1) 当交换机从某个端口收到一个数据包,它先读取包头中...

2011-02-22 09:13:00

阅读数 1462

评论数 0

转载 C语言测试是招聘嵌入式系统程序员

C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。<br />        从被面试者的角度来讲,你能了解许多关于出题者或监...

2011-02-22 09:11:00

阅读数 748

评论数 0

转载 嵌入式工程师笔试题目汇总

C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。<br />        从被面试者的角度来讲,你能了解许多关于出题者或监...

2011-01-14 13:18:00

阅读数 1079

评论数 0

转载 create_mapping如何创建内存映射表

1 ARM920T的MMU工作原理<br />下图显示了MMU地址转化关系<br /><br />一级表项的地址(pmd) = ( (TLB) & (0xFFFFC000) ) + ( (Table Index)<<2 );<br /&...

2011-01-13 19:39:00

阅读数 2315

评论数 1

转载 Linux如何映射物理内存到内核空间

在setup_arch()中: 1. parse_cmdline(): 根据uboot传递的mem信息,调用early_mem()通过arm_add_memory()把物理内存信息添加到meminfo结构体中。 2. paging_init(): 这个就是关键的初始化页表的函数,在里面会调用boo...

2011-01-13 19:22:00

阅读数 1743

评论数 0

转载 基于S3C2410-ARM-Linux静态映射分析

在华清远见上课过程中,发现静态映射方面初学者比较难于掌握和理解,下面分析一下静态映射机制的原理并通过GPIO和USB、LCD等的静态映射作为例子来说明如何通过这种静态映射的方式访问外设资源。   内核提供了一个重要的结构体struct machine_desc ,这个结构体在内核移植中起到相...

2011-01-13 19:08:00

阅读数 897

评论数 0

原创 U-boot 传递 RAM 和 Linux kernel 读取 RAM 参数

<br />U-boot 会给 Linux Kernel 传递很多参数,如:串口, RAM , videofb 等。而 Linux kernel 也会读取和处理这些参数。两者之间通过 struct tag 来传递参数。 U-boot 把要传递给 kernel 的东西保存在 struct...

2011-01-13 19:02:00

阅读数 1083

评论数 0

转载 Linux中的物理和虚拟存储空间布局

<br />在支持MMU的32位处理器平台上,Linux系统中的物理存储空间和虚拟存储空间的地址范围分别都是从0x00000000到0xFFFFFFFF,共4GB,但物理存储空间与虚拟存储空间布局完全不同。Linux运行在虚拟存储空间,并负责把系统中实际存在的远小于4GB的物理内存根据...

2011-01-13 18:55:00

阅读数 1028

评论数 0

原创 U_BOOT_CMD命令的实现

在UBOOT当中,各个命令是通过U_BOOT_CMD这个宏来定义出来的,其本质其实理解起来也很简单,不过今天也从中学到了一点东西先来看UBOOT当中关于U_BOOT_CMD这个宏的定义:/* 这是定义一个结构的属性,将其放在.u_boot_cmd这个段当中,相当于.data/.bss这些段 */#...

2011-01-13 14:50:00

阅读数 5324

评论数 2

转载 关于嵌入式系统的启动

嵌入式Linux启动分为两个部分,系统引导与Linux启动。系统引导将完成Linux装入内存前,初始化CPU和相关IO设备,并将Linux调入内存的工作。系统引导主要由BootLoader实现。在BootLoader将Linux内核调入内存之后,将权力交给LinuxKernel,进入Linux的启...

2011-01-12 12:22:00

阅读数 583

评论数 0

转载 MACHINE_START宏

MACHINE_START宏 linux2.6.18内核,在Mach-s3c2410.c文件中,有如下的宏定义: <br />MACHINE_START(SMDK2410,"SMDK2410")/* @TODO: request a new identifier a...

2011-01-12 12:20:00

阅读数 672

评论数 0

转载 Linux内核访问外设I/O资源的方式

<br />我们知道默认外设I/O资源是不在Linux内核空间中的(如sram或硬件接口寄存器等),若需要访问该外设I/O资源,必须先将其地址映射到内核空间中来,然后才能在内核空间中访问它。<br /> <br />Linux内核访问外设I/O内存资源的方式有两...

2011-01-12 11:11:00

阅读数 667

评论数 0

原创 Linux 下 stdin stdout stderr 的由来

<br />现在就从linux kernel的源代码的角度来分析该。<br />二:fork()与execve()中stderr,stdio.stdout的继承关系 <br />其实用继承这个词好像不太准确,要准确一点,可能复制更适合. <br />...

2011-01-09 17:31:00

阅读数 2248

评论数 0

原创 Beautiful English Sentences

<br />记住该记住的,忘记该忘记的。改变能改变的,接受不能改变的<br />Remember what should be remembered, and forget what should be forgotten.Alter what is changeable,...

2011-01-05 21:42:00

阅读数 2833

评论数 2

原创 linux虚拟地址与物理地址的关系

<br />以前花了很长时间才弄懂的东西,今天看到一本书上面一幅图就搞定了。哎,还是应该踩在前人的肩膀上容易点。自己重新画了一遍。

2011-01-05 20:19:00

阅读数 1042

评论数 0

原创 linux内核进程切换代码分析

<br /><br />#define switch_to(prev,next,last) do{<br />       asm volatile {"pushl %%esi/n/t"<br />                ...

2011-01-05 09:43:00

阅读数 2070

评论数 1

转载 linux内核学习笔记-struct vm_area_struct

<br />Linux内核中,关于虚存管理的最基本的管理单元应该是struct vm_area_struct了,它描述的是一段连续的、具有相同访问属性的虚存空间,该虚存空间的大小为物理内存页面的整数倍。 <br />  下面是struct vm_area_struct结构体...

2011-01-04 09:43:00

阅读数 5548

评论数 0

提示
确定要删除当前文章?
取消 删除