自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

转载 以太网帧格式

<br />一、Ethernet帧格式的发展 <br />1980 DEC,Intel,Xerox制订了Ethernet I的标准 <br />1982 DEC,Intel,Xerox又制订了Ehternet II的标准 <br />1982 IEEE开始研究Ethernet的国际标准802.3 <br />1983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式 <br />1985 IEEE推出IEEE 802.3规范,后来为解决EthernetII与802.3

2011-04-11 22:16:00 1012

转载 linux /dev目录

 linux /dev目录linux /dev目录  dev 是设备(device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。这一点和我们常用的windows, dos操作系统不一样。它实际上是一个访问这些外部设备的端口。我们可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。  例如:我们在系统中键入:cd /dev/cdrom 我们就可以看到光驱中的文件了。同样道理,我们键入:cd /d

2011-04-10 20:15:00 889

转载 linux下tty,控制台,虚拟终端,串口,console(控制台终端)详解

<br />首先:<br />1。终端和控制台都不是个人电脑的概念,而是多人共用的小型中型大型计算机上的概念.<br />一台主机,连很多终端,终端为主机提供了人机接口,每个人都通过终端使用主机的资源. 终端有字符哑终端和图形终端两种.<br />控制台是另一种人机接口, 不通过终端与主机相连, 而是通过显示卡-显示器和键盘接口分别与主机相连, 这是人控制主机的第一人机接口.<br />话回到个人计算机上,个人计算机只有控制台,没有终端. 当然愿意的话, 可以在串口上连一两台字符哑终端. 但是linux偏要

2011-04-10 19:20:00 637

转载 OEM与ODM

<br />OEM一词在电脑硬件产品中简直实在是太普遍了,像OEM光驱、OEM显示器、OEM鼠标什么的。有些人甚至以为它是一个有质量保证的品牌。那么,你对OEM又有多少认识呢?说一件产品是OEM产品是否就代表信得过呢?<br />  其实,OEM与现代工业社会有着密切的关系。一些著名的品牌商品制造商,常常因为自己的厂房不能达到大批量生产的要求,又或者需要某些特定的零件,因此向其他厂商求助。 这些伸出援手的厂商就被称为OEM(Original Equipment Manufacturer,原始设备生产

2011-04-09 21:01:00 568

转载 BSP、BIOS、Bootloader介绍

<br />BSP是板级支持包,是介于主板硬件和操作系统之间的一层,应该说是属于操作系统的一部分,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。 BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说尽管实现的功能一样,可是写法和接口定义是完全不同的,所以写BSP一定要按照该系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改)。这样才能与上层OS保持正确的接口,良好的支持上层OS

2011-04-09 20:40:00 737

转载 android为何要流行了?

进行了一次详细的利益分析<br /><br />分析这个事件,首先列举一下涉及到的人物:<br />国内外手机生产商<br />国外技术/芯片提供商<br />google(android)<br />国内外消费者<br />国内外软件开发人员<br />国内外硬件工程师<br /><br />然后我们首先分析一下android对手机产业的影响,然后对比下开放硬件这个思路。<br /><br />android的故事:<br />某日,涉及到手机产业的所有人物代表一起开会。<br />google先起来发言

2011-04-09 20:18:00 545

转载 手机CPU之各型号CPU比较

1、德州仪器 优点:低频高能且耗电量较少,高端智能机必备CPU 缺点:价格不菲,对应的手机价格也很高 2、INTEL 优点:CPU主频高,速度快 缺点:耗电、每频率性能较低 3、高通 优点:主频高,性能表现出色,功能定位明确 缺点:对功能切换处理能力一般 4、三星 优点:耗电量低、价格便宜 缺点:性能低 5、Marvell 优点:很好继承和发挥了PXA的性能 缺点:功耗大

2011-03-25 00:07:00 4519

转载 走进Linux 操作系统

<br />走进Linux 操作系统<br />摘要:本期涉猎了操作系统的来龙去脉后与大家携手步入Linux世界。我们力图展示给大家一幅Linux系统的全景图,并为了加深对linux系统的全面认知,亲手搭建了一个能运行在内存中的试验系统。同时为大家提供了几个shell脚本帮助建立试验系统。<br /> <br />最熟悉的陌生人<br />用萧亚轩的一首歌形容操作系统给我们的感觉再合适不过了,“最熟悉的陌生人”。<br />说熟悉,因为几乎每天我们都在有意无意和它打着交道。无论是日常办公,还是畅游网际,我们

2011-02-26 19:18:00 1638

原创 UDP网络编程例程1

<br />服务器端:server_udp.c<br /> <br />#include <stdio.h><br />#include <stdlib.h><br />#include <unistd.h><br />#include <errno.h><br />#include <string.h><br />#include <sys/types.h><br />#include <sys/socket.h><br />#include <netinet/in.h><br />#include <n

2011-02-21 00:12:00 605

原创 Qt实验一

<br />在一个对话框实现账号,密码输入和验证,若正确则跳转到另一个提示登陆成功对话框,若错误则跳转到另一个提示错误并带有返回按键的对话框。<br /> <br />首先在Qt Designer中新建一个工程。<br /> <br />新建三个对话框,在里面添加各种窗口元件,按钮,行输入框等。结果如下:<br /> <br />第一个为初始界面:<br /><br /> <br />第二个为显示输入正确界面:<br /><br /> <br />第三个为显示输入错误界面:<br /><br /> <br

2011-02-14 23:20:00 1239

转载 各种视频编码标准的比较(转)

<br />      h.261输出码率是p*64kbit/s(p>0&&p<31),当p<=6时只能传清晰度不太高的图象,适合于面对面的电视电话等应用,当p>6时,可以传输清晰度较好的图象,适合于电视会议等应用,采用的算法结合了减少时间冗余的帧间预测和可减少空间冗余的DCT的混合编码方法。<br />      H.263支持码率小于64kbit/s的应用, 在H,261建议的基础上做了重要改进:采用了半像素精度的运动矢量取消了H.261建议中的环路滤波器,增加了非限制运动矢量、基于语法的算术编

2011-02-14 21:54:00 1834

原创 fork函数创建一个新进程

在linux中创建一个新进程的唯一方法是使用fork函数,fork()执行一次但有两个返回值。在父进程中,返回值是子进程的进程号;在子进程中,返回值为0。因此可通过返回值来判断当前进程是父进程还是子进程。使用fork函数得到的子进程是父进程的一个复制品,它从父进程处复制了整个进程的地址空间,包括进程上下文,进程堆栈,内存信息,打开的文件描述符,信号控制设定,进程优先级,进程组号,当前工作目录,根目录,资源限制,控制终端等。而子进程所独有的只是它的进程号,资源使用和计时器等。可以看出,使用fork函数的代价是

2011-02-12 22:31:00 3425

原创 C语言内存分布图(转)

<br />图一张。<br /> <br />

2011-02-12 21:08:00 1413

原创 通过fcntl函数给文件上锁

当多个进程共同使用,操作一个文件的时候,可以通过采用给文件上锁的的方法,来避免共享的资源产生竞争的状态。在linux中,实现文件上锁的函数有lock和fcntl。fcntl可以对文件施加建议性锁,强制锁和记录锁。1.建议锁又称协同锁。对于这种类型的锁,内核只是提供加减锁以及检测是否加锁的操作,但是不提供锁的控制与协调工作。也就是说,如果应用程序对某个文件进行操作时,没有检测是否加锁或者无视加锁而直接向文件写入数据,内核是不会加以阻拦控制的。因此,建议锁,不能阻止进程对文件的操作,而只能依赖于大家自觉的去检测

2011-02-11 16:44:00 1950

原创 一个最简单的hello_qt程序

<br />在linux下安装好Qt后,就可以进行Qt编程了。<br /> <br />于是开始向Qt say hello了。<br /> <br />这是一个简单的hello程序。<br /> <br />/mnt/hgfs/source/qt_Projects/hello_qt/hello.cpp<br /> <br /> <br />#include <qapplication.h> //包含QApplication类:管理,调度窗口<br />#include <qpushbutton.h>  //

2011-02-11 16:17:00 645

原创 什么是Qt?

Qt是一个多平台的C++图形用户界面应用程序框架。自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。Qt支持下述平台: MS/Windows - 95、98、NT 4.0、ME、和2000 Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台

2011-01-28 13:42:00 1096

原创 用ADS编译ARM程序后生成镜像Image的信息分析

用ADS编译ARM程序成功后会生成可烧录的镜像Image文件,Image是一个可执行文件,可能的格式有:*.axf, *.bin, *.hex等。编译成功后会有列出Image组成的输出信息,如下图:Image的组成包括:1.code:属性是R0,内容是编译连接后的代码。2.RO Data:属性是R0,内容是只读的数据,常量。3.RW Data:属性是RW,内容是可读写的数据,已经初始化的全局变量。4.ZI Data:属性是RW,内容是未初始化的数据,未初始化的全局变量。其中存储的状态(就是要烧入芯片中的):

2011-01-27 22:39:00 1148

原创 ARM的MCU pk MPU

<br />首先说明一个,CPU发展得到MCU, MPU, DSP。(DSP主要用于数字信号处理,比如音频视频的处理等等)<br /> <br />对ARM来说,也有MCU和MPU的区分。<br /> <br />1.ARM中的MCU:<br />1)MCU主要应用做控制功能。<br />2)功能不是很丰富,稳定性比较好。(比如可在医疗,汽车等一些可能发生紧急事件的应用)<br />3)主频比较低,一般在100MHz。<br />4)一般内置存储器,不需要外部扩展。NOR FLASH(ROM):16KB~5

2011-01-23 21:59:00 1628

原创 嵌入式微处理器的种类

<br />X86         —— Intel公司(工控机)<br />ColdFire  —— Motorola(工业控制)<br />PowerPC   ——   IBM & Motorola & Apple(交换设备)<br />Mips          ——   只设计内核的一家美国公司(高性能)<br />ARM           ——   只设计内核的一家英国公司(一般应用)<br />Dsp            ——  TI(运动控制、算术运算)<br /> 

2011-01-23 21:37:00 717

原创 什么是ARM?

1.ARM是英文Advanced RISC Machine的缩写。2.ARM是英国一家电子公司的名字,设计高效的IP内核,授权给半导体公司使用。ARM公司是一家既不生产芯片(fabless)也不销售芯片(chipless)的公司,它通过出售芯片技术授权,建立起新型的微处理器设计、生产和销售商业模式。3.ARM提供一系列内核,体系扩展,微处理器和系统芯片方案。1)ARM是一种通用的32位RISC处理器。2)ARM是一种低功耗,高性能的处理器。

2011-01-23 21:24:00 1134

转载 冯诺依曼结构和哈佛结构的区别(转)

<br />冯诺依曼架构: 把代码当作一种特殊的数据 来操作;指令总线和数据总线及其存储区域是统一的;<br />哈佛结构:指令总线和数据总线及其存储区域是分开的,独立的;<br /> <br /> <br />关于这个问题,有人说51地址线复用,就是冯诺依曼结构。 <br />  <br />很多入门的书上基本上都说:由运算器、控制器、存储器、输入设备、输出设备组成的系统 <br />都叫冯氏结构。 <br />也有的说:“程序存储器的数据线地址线”与“数据存储器的数据线地址线”共用的话,就 <br />

2011-01-22 20:45:00 2967

转载 软中断和硬中断的区别(转)

<br />①硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无面外部施加中断请求信号,因此中断的发生不是随机的而是由程序安排好的。<br />②硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要),软中断的中断响应周期,CPU不需发中断回合信号。<br />③硬中断的中断号是由中断控制器提供的(NMI硬中断中断号系统指定为02H);软中断的中断号由指令直接给出,无需使用中断控制器。<br />④硬中断是可屏蔽的(NMI硬中断不可屏蔽),软中断不可屏蔽。

2011-01-22 20:44:00 708

转载 c++中char * 和 char []的区别(转)

<br />在实习过程中发现了一个以前一直默认的错误,同样char *c = "abc"和char c[]="abc",前者改变其内<br />    容程序是会崩溃的,而后者完全正确。<br />    程序演示:<br />    测试环境Devc++<br />    代码<br /> #include <br />using namespace std;<br />main()<br />{<br />   char *c1 = "abc";<br />   char c2[] = "abc";<b

2011-01-22 20:33:00 365

转载 sizeof和strlen的区别

<br />sizeof是一个一元运算符,输出变量或者别的什么数组的占用内存空间大小的 <br />而strlen是以一个库函数,使用时需要需要包含库文件“string.h”结果返回字符串长度,不包含字符串结束符'/0'<br />例子:<br />#include "stdio.h"<br />#include <assert.h><br />void main()<br />{<br /> char* a = "abcdefg";<br /> printf("%d/n",sizeof(a));<br /

2011-01-22 20:31:00 290

转载 const int *a, int const *a,int * const a,区别,指针数组,数组指针,声明与定义(转)

几个容易混淆的概念,记在这里一、=====C语言声明的方法,对理解下面的两个都有帮助===========================(http://bbs.chinaunix.net/viewthread.php?tid=683372&extra=page%3D1)-------------------英文版----------------The Precedence Rule for Understanding C DeclarationsStep A : Declarations are read

2011-01-22 20:29:00 787

转载 new和malloc的区别(转)

<br />1、new 是c++中的操作符,malloc是c 中的一个函数<br />2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数<br />3、内存泄漏对于malloc或者new都可以检查出来的,区别在于new可以指明是那个文件的那一行,而malloc没有这些信息。<br />4、new 和 malloc效率比较<br />new 有三个字母, malloc有六个字母<br /

2011-01-22 20:27:00 310

转载 C语言:内存字节对齐详解(转)

<br />一、什么是对齐,以及为什么要对齐:<br />1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。<br />2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。其他平台可能没有这种情况, 但是最常见的是如果不按照适合其平台的要

2011-01-22 20:26:00 499

原创 C++引用&和指针在作为形参时的区别

int n;int &m = n;在C++中,多了一个C语言没有的引用声明符&,如上,m就是n的引用,简单的说m就是n的别名,两者在内存中占同样的位置,不对m开辟新的内存空间,对m的任何操作,对n来说是一样的。对于引用,有以下三条规则:(1)引用被创建的同时必须被初始化(指针则可以在任何时候被初始化)。 (2)不能有NULL 引用,引用必须与合法的存储单元关联(指针则可以是NULL)。 (3)一旦引用被初始化,就不能改变引用的关系(指针则可以随时改变所指的对象)。假如在一个函数中动态申请内存空间,用指针和用

2011-01-22 20:24:00 6450 1

51驱动USB模块实现U盘功能

用51单片机驱动 USB模块,实现对U盘读写功能

2010-10-24

空空如也

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

TA关注的人

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