自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(592)
  • 资源 (37)
  • 收藏
  • 关注

转载 Linux diff 与 git diff

diff是Unix系统的一个很重要的工具程序。它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入:  $ diff diff就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂diff。一、diff的三种格式由于历史原因,diff有三种格式:  * 正常格式(normal dif

2016-01-07 21:15:37 1856

转载 深入理解 x86/x64 的中断体系

实模式下的中断机制中断向量表(IVT)改变中断向量表地址设置自己的中断服务例程保护模式下的中断机制查找 interrupt handler 入口IDT 表中 descriptor 类型的检查使用 16-bit gate descriptorIDT 表的 limit 检查请求访问 interrupt handler 时的权限检查gate 的权限设置interrupt ha

2016-01-03 15:41:06 9133 2

转载 深入理解Linux内核(4)---中断和异常(x86平台)

本文是ULK中断和异常这一章的笔记,讲的是Intel 80x86的中断,与硬件紧密相关,ARM与其有很大不同。中断通常分为同步中断(synchronous)和异步中断(asynchronous):同步中断:是当指令执行时,由CPU控制单元产生的,只有在一条指令终止执行后CPU才会发生中断。异步中断:是由其他硬件设备依照CPU时钟信号随机产生的。Intel微处理器手册中,把同步和异步

2016-01-03 15:26:27 3457

转载 S3C2440系统中断

++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556186++++++++++++++++++++++++++++++++++++++++++1.1   S3C2440系统中断CPU和外设构成了计算

2016-01-03 15:04:22 516

转载 arm的中断体系结构

arm体系结构:arm920tCPU一上电就处于 ARM 状态。    如果对于arm的CPU的工作模式和状态有疑惑: ** ARM处理器的寄存器,ARM与Thumb状态,7中运行模式     如果对arm刚上电的工作模式和状态有疑惑:**arm 上电或复位时的状态,模式 ARM异常中断处理概述    1、中断的概念             中断是一个过程,

2016-01-03 01:56:21 687

转载 浅析Arm Linux中断Vector向量表的建立流程

Linux混入了mmu内存管理之后,ARM的中断是怎么样的呢?和我们在裸板上的中断有没有区别?让我们从源代码入手,做一个粗略的分析:init/main.c->start_kernel()->trap_init()//-----------------------------------------------1.trap_init()//gliethttp函数

2016-01-03 01:19:30 2398

转载 ARM Linux Oops使用小结

出现Oops消息的大部分错误时因为对NULL指针取值或者因为用了其他不正确的指针值。Oops如何产生的解释如下:    由于处理器使用的地址几乎都是虚拟地址,这些地址通过一个被称为“页表”的结构被映射为物理地址。当引入一个非法指针的时候,分页机制无法将该地址映射到物理地址,此时处理器就会向操作系统发出一个“页面失效(page fault)”的信号。如果地址非法“换入(page in)”缺失

2016-01-02 01:19:29 1981

转载 基本的ATPCS规则

基本ATPCS规定了在子程序调用时的一些基本规则,包括下面四方面的内容。各寄存器的使用规则及其相应的名称。数据栈的使用规则。参数传递的规则。子程序结果的返回规则。1. 寄存器的使用规则及其相应的名称寄存器的使用必须满足下面的规则。子程序间通过寄存器R0~R3来传递参数,被调用的子程序在返回前无需恢复寄存器R0~R3的内容。在子程序中,

2016-01-02 01:03:06 711

转载 ARM汇编子程序参数传递

ATPCS规则体现了一种模块化设计的思想,其基本内容是C模块(函数)和汇编模块(函数)相互调用的一套规则(C51中也有类似的一套规则)。我感觉比在线汇编功能强大(不用有很多忌讳),条理更清楚(很简单的几条规则)。规则内容一.被调用模块的寄存器使用   1.调用模块和被调用模块通过R0-R3传递参数,因此参数少于四个时可以随意     使用剩余的而不必保存和恢复

2016-01-02 00:54:56 9523

转载 嵌入式STMFD SP!,{R0-R7,LR}分析

STMFD SP!,{R0-R7,LR} 的伪代码如下SP = SP - 9×4;address = SP; for i = 0 to 7Memory[address] = Ri;address  = address + 4;Memory[address] = LR;注意:ARM规定,sp始终是指向栈顶位置的,STM指令把寄存器列表中索引最小的寄存器存在最低

2016-01-02 00:40:36 6633

转载 ARM LR寄存器

异常的发生会导致程序正常运行的被打断, 并将控制流转移到相应的异常处理(异常响应),有些异常(fiq、irq)事件处理后,系统还希望能回 到当初异常发生时被打断的源程序断点处继续完成源程序的执行(异常返回),这就需要一种解决方案, 用于记录源程序的断点位置,以便正确的异常返回。     类似的还有子程序的调用和 返回。在主程序中(通过子程序调用指令)调用子程序时,也需要记录下主程序中的调用

2016-01-02 00:25:25 9546

转载 ARM汇编指令集

ARM处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令6大指令。一、跳转指令跳转指令用于实现程序流程的跳转,在ARM程序中有以下两种方法可以实现程序流程的跳转。Ⅰ.使用专门的跳转指令;Ⅱ.直接向程序计数器PC写入跳转地址值,通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间中的任意跳转,在跳转之前

2016-01-01 00:58:59 487

转载 ARM指令集详解

1  指令格式        (1)基本格式        {}{S} ,{,}        其中,        opcode  指令助记符,如LDR,STR 等        cond  执行条件,如EQ,NE 等        S  是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响        Rd  目标寄存器        Rn  第一个操

2016-01-01 00:46:14 1496

转载 linux进程管理与调度

[日期:2014-08-10]来源:Linux社区  作者:walkerkalr[字体:大 中 小]进程的管理与调度进程管理 进程描述符及任务结构进程存放在叫做任务队列(tasklist)的双向循环链表中。链表中的每一项包含一个具体进程的所有信息,类型为task_struct,称为进程描述符(process descriptor),该

2015-12-25 11:03:15 2041

转载 单片机多任务的时间片方式实现

引言    由于单片机具有价格低、运行要求低、易于开发、稳定可靠等优点,广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域。但是,单片机的位数少、频率低、内存小、I/O口少等缺点限制了其加载操作系统的可能。因此,单片机不能像ARM等较高性能的处理器一样,利用加载的操作系统实现管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系

2015-12-24 17:11:01 8204

转载 交换机access trunk hybrid模式详解

VLAN帧格式的相关知识点:这四个字节的802.1Q标签头包含了2个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI)。TPID(Tag Protocol Identifier)是IEEE定义的新的类型,表明这是一个加了802.1Q标签的帧。TPID包含了一个固定的值0x8100。TCI是包含的是帧的控制信息,它包含了下面的一些元素:Priority:这3 位

2015-12-21 15:05:19 12647 2

转载 802.1Q VLAN技术原理

文章出处:http://hi.baidu.com/x278384/item/d56b0edfd4f56a4eddf9be79      在数据通信和宽带接入设备里,只要涉及到二层技术的,就会遇到VLAN。而且,通常情况下,VLAN在这些设备中是基本功能。所以不管是刚迈进这个行业的新生,还是已经在这个行业打拼了很多年的前辈,都要熟悉这个技术。在论坛上经常看到讨论各种各样的关于VLAN的问题,

2015-12-21 14:51:15 1741

转载 关于VLAN-tag

VLAN-tag   VLAN技术要点主要有两点:1.支持VLAN的交换机的内部交换原理;2.设备之间(交换机之间,交换机与路由器之间,交换机与主机之间)交互时,VLAN TAG的添加和移除。  802.1Q VLAN只定义了数据帧的封装格式,即,在以太网帧头中插入了4个字节的VLAN字段。其主要内容为VLAN TAG,紧随其后的数据类型和802.1p报文优先级的标识。 以太网

2015-12-21 14:48:45 26483 1

转载 Ethernet的帧格式 (转)

Ethernet的帧格式一。Ethernet帧格式的发展 1980 DEC,Intel,Xerox制订了Ethernet I的标准 1982 DEC,Intel,Xerox又制订了Ehternet II的标准 1982 IEEE开始研究Ethernet的国际标准802.3 1983 迫不及待的Novell基于IEEE的

2015-12-21 10:56:14 1871

转载 例解 autoconf 和 automake 生成 Makefile 文件

本文介绍了在 linux 系统中,通过 Gnu autoconf 和 automake 生成 Makefile 的方法。主要探讨了生成 Makefile 的来龙去脉及其机理,接着详细介绍了配置 Configure.in 的方法及其规则。3 评论:杨 小华, Linux 内核开发工程师, 自由撰稿人2006 年 9 月 21 日内容

2015-12-20 15:24:31 474

转载 以太网芯片MAC和PHY的关系

问:如何实现单片以太网微控制器?答:诀窍是将微控制器、以太网媒体接入控制器(MAC)和物理接口收发器(PHY)整合进同一芯片,这样能去掉许多外接元器件.这种方案可使MAC和PHY实现很好的匹配,同时还可减小引脚数、缩小芯片面积.单片以太网微控制器还降低了功耗,特别是在采用掉电模式的情况下.问:以太网MAC是什么?答:MAC即Media Access Control,即媒体访

2015-12-17 14:23:42 939

转载 Mac与Phy组成原理的简单分析

本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接。内容可任意使用,但对因使用该内容引起的后果不做任何保证。作者:[email protected]博客:fireaxe.blog.chinaunix.netMac与Phy组成原理的简单分析1  1. general下图是网口结构简图。网口由CPU、MAC和PHY

2015-12-17 13:54:27 686

转载 网卡初步认识

网络适配器又称网卡或网络接口卡(NIC),英文名Network Interface Card.它是使计算机联网的设备.平常所说的网卡就是将PC机和LAN连接的网络适配器.网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输.数据在计算机总线中传输是并行方式即数据是肩并肩传输的,而在网络的物理缆线中说数据以串行的比特流方式传输的,网卡承担串

2015-12-17 13:51:48 859

转载 I2C和SPI总线对比

最近2周一直在调试IIC和SPI总线设备,这里记录一下2种总线,以备后忘。一 IIC总线I2C--INTER-IC串行总线的缩写,是PHILIPS公司推出的芯片间串行传输总线。它以1根串行数据线(SDA)和1根串行时钟线(SCL)实 现了双工的同步数据传输。具有接口线少,控制方式简化,器件封装形式小,通信速率较高等优点。在主从通信中,可以有多个I2C总线器件同时接到I2C总线 上,

2015-12-17 13:25:59 823

转载 运行不息的内核线程kthread

要创建一个内核线程有许多种方法,我们这里要学的是最简单的一种。打开include/linux/kthread.h,你就看到了它全部的API,一共三个函数。 struct task_struct kthread_run(int (*threadfn)(void *data),      void *data, const char namefmt[],...)

2015-12-15 15:01:57 560

转载 kthread_stop引起的OOP

1 使用kthread_create创建线程:    struct task_struct *kthread_create(int (*threadfn)(void *data),                                                                  void *data,                         

2015-12-15 14:58:23 1881

转载 主板芯片组与内存映射

原文标题:Motherboard Chipsets and the Memory Map原文地址:http://duartes.org/gustavo/blog/   [注:本人水平有限,只好挑一些国外高手的精彩文章翻译一下。一来自己复习,二来与大家分享。]   我打算写一组讲述计算机内幕的文章,旨在揭示现代操作系统内核的工作原理。我希望这些文章能对电脑爱好者和程序员有所帮

2015-12-14 19:34:11 1922

转载 CPU与内存的那些事

下面是网上看到的一些关于内存和CPU方面的一些很不错的文章. 整理如下:转: CPU的等待有多久?原文标题:What Your Computer Does While You Wait原文地址:http://duartes.org/gustavo/blog/[注:本人水平有限,只好挑一些国外高手的精彩文章翻译一下。一来自己复习,二来与大家分享。]   本文以

2015-12-14 19:32:59 4280

转载 Intel CPU 地址空间总结

一、地址空间映射        这里要说的是Intel构架下的CPU地址空间布局,注意这里没有说是内存地址空间布局。       我们说的内存通常是指DRAM,DRAM相对于CPU也可以算是外部设备,CPU地址空间是CPU访问外部设备过程中的一个概念,CPU除了访问DRAM外还会访问许多其他的设备。可以粗略的认为CPU地址空间包含DRAM地址空间,但两者却是不同的概念。而且

2015-12-14 17:55:01 2379

转载 MMU的作用及工作过程

原文  http://blog.csdn.net/leishangwen/article/details/27088305 以下内容摘自《步步惊芯——软核处理器内部设计分析》一书的第10章 MMU剖析MMU 的作用及工作过程      MMU ( Memory Management Unit )是内存管理单元的简称,读者朋友在学习嵌入式的时候应该听说过 µC

2015-12-14 11:16:09 4335

转载 MMU和TLB

MMU和TLB记得那家芯片公司给我电话面试的时候,别的都还好,可是他问我什么是MMU,我只能干瞪眼。今天在看《Linux内核源码(陈莉君)》的时候,无意中看到第二章内存地址这一节,学习如下:在任何一台计算机上,都存在一个程序能产生的内存地址的集合。当程序执行这样一条指令时:MOVE REG,ADDR它把地址为ADDR(假设为10000)的内存单元的内容复制到REG中,地址A

2015-12-14 11:04:50 1735 1

转载 硬件篇之MMU

MMU即内存管理单元(Memory Manage Unit),是一个与软件密切相关的硬件部件,也是理解linux等操作系统内核机制的最大障碍之一。可以说,不懂MMU使很多人一直停滞在单片机与无OS的时代。博主之前对MMU也一直是雾里看花,似懂非懂。最近终于自认为云开雾散后,回头总结,感觉有几个概念是阻碍人们理解MMU的元凶。1)虚拟地址/物理地址    如果处理器没有MMU,C

2015-12-14 10:53:44 1705

转载 linux下DMA驱动测试代码

DMA传输可以是内存到内存、内存到外设和外设到内存。这里的代码通过dma驱动实现了内存到内存的数据传输。/*Function description:When we call dmatest_read(),it will transmit src memory datato dst memory,then print dst memory data by dma_callback_

2015-12-09 15:42:54 4858 2

转载 DMA驱动框架流程编写

本文主要是针对Xilinx DMA驱动流程框架编写DMA驱动一致性和流式的基本认识一致性DMA与流式DMA主要是内存的申请方式和访问控制权限不一样一致性DMA内存申请:void *dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp);流式DMA内存申请:d

2015-12-09 15:24:50 2689 1

转载 linux总线驱动之DMA传输

最早接触DMA的时候是大三的微机原理,当时不是很理解,什么DMA模式啊,只知道是传输速度快,不经过CPU,但是到底是怎么样的不经过CPU呢?还是不理解。这次I2C控制器里面带了DMA的模式,所以有机会去接触下了。       而具体的DMA的意思是什么http://baike.baidu.com/view/32471.htm,百度百科里还是不错的。 DMA的工作过程:

2015-12-09 15:15:53 2696

转载 总线概述及常见总线

一. 总线概念所谓总线(Bus),是指计算机设备和设备之间传输信息的公共数据通道。总线是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,可以将计算机系统内的多种设备连接到总线上。如果是某两个设备或设备之间专用的信号连线,就不能称之为总线。系统总线架构图如下所示:     微机中的总线分为数据总线、地址总线和控制总线3类。不同型号的C

2015-12-07 18:07:40 30205 2

转载 ethtool 在 Linux 中的实现框架和应用

Linux 的一个显著特点就是其强大的网络功能,Linux 几乎支持所有的网络协议,并在这些协议基础上提供了丰富的应用。对 Linux 网络管理的重要性不言而喻,这些管理依赖于网络工具,比如最常用的 ifconfig,route,ip,ethtool 等,其中 ethtool 提供了强大的网卡及网卡驱动管理能力,其具体的实现框架和网络驱动程序及网络硬件关系紧密,容易修改和扩展,能够为 Linux

2015-12-02 10:21:01 1080

转载 浅谈 NCSI 及其在 Linux 上的实现

NCSI(Network Controller Sideband Interface)是一个由分布式管理任务组(Distributed Management Task Force, DMTF)定义的用于支持服务器带外管理的边带接口网络控制器的工业标准,由一个管理控制器和多个网络控制器组成。DMTF 为 NCSI 定义了完整的基于以太网的控制命令请求和应答标准,此外,NCSI 还具备单线程,超时重传

2015-11-27 17:35:33 12216

转载 Linux kernel多线程的几种实现

驱动开发中常常会启动几个内核线程,在整个驱动生命周期期间执行某些操作,比如USB驱动的控制线程,一直等待SCSI命令,没有命令的话睡眠,有命令的话就唤醒线程,解析执行相关的命令。还有USB驱动中的扫描线程,如果有新的设备连接到USB总线,则会启动扫描过程,平时时候让出CPU资源休眠。常用的内核线程创建方法有3个,kernel_thread, kthread_create和kthread_r

2015-11-23 19:47:48 1509

转载 What are the meaning of the items in the “alignment trap” error message?

During my debugging, I got the following error message.Alignment trap: my_main (29858) PC=0x00170ad8 Instr=0xe5960008 Address=0x00f28daa FSR 0x0f3I've looked around a bit and found a lot

2015-11-18 17:08:54 725

ipmitool 源码包

ipmitool 源码包

2012-04-18

算法导论 第三版 英文版

《算法导论》原书名——《Introduction to Algorithms》,是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(《The Art Of Computer Programming》)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编著(其中Clifford Stein是第二版开始参与的合著者)。本书的最大特点就是将严谨性和全面性融入在了一起。

2012-04-10

算法导论 中文版 第二版

算法导论》原书名——《Introduction to Algorithms》,是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(《The Art Of Computer Programming》)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编著(其中Clifford Stein是第二版开始参与的合著者)。本书的最大特点就是将严谨性和全面性融入在了一起。

2012-04-10

算法导论 第二版 英文版

算法导论》原书名——《Introduction to Algorithms》,是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(《The Art Of Computer Programming》)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编著(其中Clifford Stein是第二版开始参与的合著者)。本书的最大特点就是将严谨性和全面性融入在了一起。

2012-04-10

VI自带的补全功能

VI自带的补全功能

2012-02-23

写一个块设备驱动-共15章

写一个块设备驱动-共15章

2012-02-23

LINUX与UNIX_Shell编程指南

LINUX与UNIX_Shell编程指南

2011-12-02

Linux设备驱动(Edition 3)

Linux设备驱动(Edition 3)

2011-12-02

linux内核模块编程

linux内核模块编程

2011-12-01

kbuild实现分析

kbuild实现分析

2011-12-01

linux_Shell(脚本)编程入门_实例讲解详解

linux_Shell(脚本)编程入门_实例讲解详解

2011-11-23

Linux命令及Shell脚本使用

Linux命令及Shell脚本使用

2011-11-23

Linux下Shell编程

Linux下Shell编程

2011-11-23

MFC通过ADO操作Access数据库

MFC通过ADO操作Access数据库 MFC通过ADO操作Access数据库 MFC通过ADO操作Access数据库MFC通过ADO操作Access数据库 MFC通过ADO操作Access数据库

2011-11-21

MFC类库详解

MFC类库详解 MFC类库详解 MFC类库详解 MFC类库详解 MFC类库详解 MFC类库详解

2011-11-05

SVN目录结构说明

SVN目录结构说明 SVN目录结构说明 SVN目录结构说明 SVN目录结构说明

2011-09-20

IPMI数据手册

IPMI数据手册 IPMI数据手册 IPMI数据手册

2011-09-20

函数式编程思维 高清完整PDF版

函数式编程思维 高清完整PDF版 函数式编程思维 高清完整PDF版

2018-03-14

Designing Data-Intensive Applications

Designing Data-Intensive Applications。英文原版,完整高清,带书签。本书概括和总结了数据系统,分布式或非分布式环境下面临的本质问题,和解决方案的分类。

2018-03-14

ARM Linux中断源码分析(2)——中断处理流程

ARM Linux中断源码分析(2)——中断处理流程

2017-01-11

PCIe规范详细解析

PCIe规范介绍的文档,很详细。

2016-12-31

嵌入式开发_北航PPT教案

嵌入式开发

2016-01-29

以太网交换芯片资料

以太网交换芯片资料 本文以 broadcom56504/56300 交换芯片为重点,介绍一下交换芯片的工作原理。

2014-05-16

APUE 中文版

APUE advanced programming unix environment

2014-03-15

APUE-3rd advanced programming in the unix environment

APUE第三版! advanced programming in the unix environment 3 edition

2014-03-15

深入分析Linux内核源码

深入分析Linux内核源码

2014-03-15

HyperTerminaEnglishANSI+超级终端中文版

HyperTerminaEnglishANSI+超级终端中文版

2013-12-27

SPECPower2008使用说明

SPECPower2008使用说明

2013-10-09

最新的TPCH benchmark数据包

TPC全称为“事务处理性能委员会”(Transaction Processing Performance Council),主页(http://www.tpc.org/),是由数10家会员公司创建的非盈利组织,总部设在美国。TPC的成员主要是计算机软硬件厂家,而非计算机用户,它的功能是制定商务应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测试结果的发布。 “TPCH”就是用来进行数据库测试的一个基准(benchmark)。说通俗一点,就是一堆数据的集合,用来进行数据库学习和测试。

2013-10-08

DOS98.IMG DOS镜像

纯DOS98镜像,包含command.com、io.sys、msdos.sys三个文件。

2012-12-13

MySQL经典教程

MySQL经典教程

2012-11-15

PHY和MAC MII RMII

PHY和MAC

2012-10-31

myeclipse 10 破解(注册机+详细操作步骤)

里面包含myeclipse 10 以及10.0版本以下注册机,下载后请先阅读压缩包中的操作过程,来进行。

2012-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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