自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (24)
  • 收藏
  • 关注

原创 KMP算法详解

字符串查找子串是计算机程序设计经常会遇到的难题。举个例子来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?    完成这个任务有很多算法,KMP是最常用的算法之一,下面通过一个例子来详细描述一下这个算法:1.    首先将子串与搜索串的第一个字符进行比较,因为不匹配,所以将子串向后移动直到2.

2015-08-07 21:35:36 734 1

转载 CRC循环冗余校验码

环冗余校验码     在串行传送(磁盘、通讯)中,广泛采用循环冗余校验码(CRC)。CRC也是给信息码加上几位校验码,以增加整个编码系统的码距和查错纠错能力。CRC的理论很复杂,一般书上只介绍已有生成多项式后计算校验码的方法。检错能力与生成多项式有关,只能根据书上的结论死记。     循环冗余校验码(CRC)的基本原理是:在K位信息码后再拼接R位的校验码,整个编码长度为N位,因此,这种编码

2015-07-30 21:14:31 4188

原创 检错码之海明码

海明码(Hamming Code)是一个可以有多个校验位,具有检测并纠正一位错误代码的纠错码,所以它也仅用于信道特性比较好的环境中,如以太局域网中,因为如果信道特性不好的情况下,出现的错误通常不是一位。 海明码的检错、纠错基本思想是将有效信息按某种规律分成若干组,每组安排一个校验位进行奇偶性测试,然后产生多位检测信息,并从中得出具体的出错位置,最后通过对错误位取反(也是原来是1就变成0,原来是0就

2015-07-30 20:05:45 2294

原创 C与C++的区别与相互调用

一:两者的区别从语言本身的角度:全面兼容C语言;支持面向对象编程;C++的可重用性、可扩充性以及可维护性较好。是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过

2015-07-30 09:18:07 981

原创 Linux内存管理

X86下,Linux虚拟地址空间分为0-3G的用户空间和3G-4G的内核空间,其中用户空间的地址映射采用多级页表机制,而内核态空间采用线性偏移量(0Xc0000000)。内核空间分为三部分,其中,ZONE_DMA为开始的16M,ZONE_NORMAL为16-896M,ZONE_HIGH_MEM为896M-1G。

2015-07-14 20:44:21 371

原创 磁盘管理之逻辑卷管理(Logical Volume Manager)

LVM的基本简介

2015-01-18 15:36:25 1753

原创 每天一个linux命令4-tar

tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。首先要弄清两个概念:打包和压缩。打包是指将

2015-01-13 15:22:18 485

原创 每天一个linux命令3-more

more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。1.命令格式:more [-dlfpcsu ] [-num ] [+/ p

2015-01-12 15:26:03 467

原创 每天一个Linux命令2-sort

linux sort 命令详解sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始!1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。[rocrocket@rocrocket programming]$ cat seq.txtbanan

2015-01-12 15:19:34 497

原创 每天一个Linux命令1-wc

Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。1.命令格式:wc [选项]文件...2.命令功能:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。3.命令参数:

2015-01-12 11:22:35 512

原创 DRAM内存原理(五)内存管理单元MMU

0、前言  CPU和内存之间有三根总线,地址,数据,和控制总线。这是在说地址之间的问题。cpu和内存之间用地址来查找数据,但是两者的地址并不总是一样的,cpu产生的是逻辑地址,而内存的就是物理地址。通常都是不一样的,所以需要地址映射。正好是从编程人员的角度看,(不考虑解释执行)程序总是经过源程序编译,连接,运行三个阶段。在这个过程中,指令和数据就要调到内存。地址捆绑的三种形式:编译时:

2014-12-12 22:57:19 2469

原创 DRAM内存原理(四)同步内存和异步内存技术

现在你已经掌握了内存的基本知识,所以你应该能理解下面讲述的为什么BX芯片组的主板超频到133 MHz性能会比别的比如VIA Apollo 133等芯片组好;为什么133外频的KX133并不比100外频的AMD750芯片组有明显的性能提高。因为BX/AMD750芯片组运行在同系统FSB同样的时钟频率下,而VIA芯片组是异步的,因为它可以支持PC66、PC100、PC133 SDRAM。我们来

2014-12-08 09:41:13 5411

原创 DRAM内存原理(三)带宽问题

要理解延迟时间和带宽之间的联系,我们以PC100 SDRAM-222为例来说明。第一个2代表CAS延迟时间是2个时钟周期,第二个2表示RAS到CAS延迟时间,第三个2代表预转换时间。我们假设不同类型的延迟。在这个例子中我们假设发生了缓存页面失效,CPU等待调入新的需要的数据。也就是,我们要研究从读取内存到填充缓存的这一个过程。回写内存的过程很简单。写入的数据可以首先调入缓存待用。举例来说,KX-1

2014-12-08 09:31:03 5700

原创 DRAM内存原理(二)结构和功能

内存最基本的单位是内存“细胞”——也就是我们前面展示给大家DRAM基本单元示意图所示的部分,下面我们对这个部分通称为DRAM基本单元。每个DRAM基本单元代表一个“位”——Bit(也就是一个比特),并且有一个由列地址和行地址定义的唯一地址。8个比特组成一个字节,它可代表256种组合(即2的八次幂),字节是内存中最小的可寻址单元。DRAM基本单元不能被单独寻址——否则现在的内存将会更加复杂,而且也没

2014-12-08 09:03:22 14339

原创 DRAM内存原理(一)内存基础

DRAM 即动态内存,其基本单位是由一个晶体管和一个电容器组成。请看下图: 图只是DRAM一个基本单位的结构示意图:电容器的状态决定了这个DRAM单位的逻辑状态是1还是0,但是电容的被利用的这个特性也是它的缺点。一个电容器可以存储一定量的电子或者是电荷。一个充电的电容器在数字电子中被认为是逻辑上的1,而“空”的电容器则是0。电容器不能持久的保持储存的电荷,所以内存需要不断定时刷新,才能

2014-12-08 08:38:49 13393 1

原创 一天掌握HTML

一,基础入门

2014-05-24 20:34:37 631

原创 Linux学习之socket编程

int select(int maxfdp,fd_set *readfds,fd_set *writefds,fd_set *errorfds,struct timeval *timeout); /*参数列表int maxfdp是一个整数值,是指集合中所有文件描述符的范围,即所有文件描述符的最大值加1,不能错!在Windows中这个参数的值无所谓,可以设置不正确。   fd_s

2014-04-13 20:05:56 399

原创 GoAhead学习之GoForms

GoAhead WebServer 提供一个标准的普通网管接口作为内存表格处理,我们称之为GoForms.。老版本的CGI处理会导致在对于每一个CGIURL的请求产生一个新的进程。因为CGI通常作为执行用户输入的首要方式,同时它也是缓慢和额繁琐的。嵌入式系统需要一个结构紧凑高性能的的解决方案,而GoForms 就是一个最佳选择。

2014-04-12 21:48:08 1933

原创 Linux学习之Makefile和Configure文件说明

一、概述和基础知识  在Linux下得到一个以源代码形式发布的包(一般为.tar.gz或.tar.bz2格式),我们可以用 ./confiugure、make、make install来编译安装,其中在运行./configure的时候还可以根据自己的需要加入不同的参数(可用./configure --help来查看参数表)。  先说说执行./configure后会生成什么东西?运行

2014-04-11 21:58:57 983

原创 C语言学习之main函数解析

argc是命令行总的参数个数     argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数     命令行后面跟的用户输入的参数,比如:     int   main(int   argc,   char*   argv[])     {     int   i;     for   (i   =   0;   i  i++)     cout   

2014-04-11 09:56:48 714

原创 C语言学习之extern "C"

extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。     这个功能十分有

2014-04-11 09:29:08 536

原创 嵌入式Web服务器学习之HTTP协议

1 HTTP协议HTTP协议是一种让Web服务器与浏览器(客户端)通过Internet发送与接收数据的协议。它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。它是一个请求、响应协议。当客户端发送出一个请求,服务器响应这个请求。HTTP运用可靠的TCP连接,通常用的80端口。1.1  HTTP协议特点(1)  HTTP协议是无状态的,同一个客户端的这次请求和上次请

2014-04-10 22:42:25 3619

原创 嵌入式Web服务器学习之非阻塞I/O实现

IO模式设置网络编程常见问题总结—IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响—O_NONBLOCK(open使用)、IPC_NOWAIT(msgrcv)、MSG_DONTWAIT(recv使用)非阻塞IO 和阻塞IO:       在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明:       基本概念

2014-04-09 10:45:10 665

原创 嵌入式Web服务器学习之阻塞IO/非阻塞IO

Reactor

2014-04-09 10:00:26 1374

原创 网络存储学习之关键技术(网络存储系统管理)

虚拟化存储是提高网络存储系统可管理性的核心技术之一,也是目前研究的热点。虚拟化存储技术包括三种具体的技术:基于主机的虚拟化技术,基于存储设备的虚拟化技术和基于网络的虚拟化技术。

2014-04-08 22:54:45 615

原创 网络存储学习之关键技术(网络存储系统的I/O性能)

1 概述关于网络存储系统I/O性能的研究I/O性能是衡量存储系统的传统指标。关于提升存储系统性能的研究是国内外的研究热点。就研究方向可以分为对存储系统体系结构的研究以及对网络存储设备I/O优化的研究。

2014-04-08 22:42:47 984

原创 网络存储学习之SAN

SAN是一种类似于LAN的高速网络,用来在存储单元与客户端之间建立直接的高速数据连接。与LAN不同的是SAN针对存储进行了优化,通常使用专用的存储协议,比如SCSI,而不是LAN使用的各种通信协议。这个网络可以把各种不同平台的服务器、工作站、客户机以及各种存储设备连接在一起,改变了传统的附属于特定服务器的存储中存储设备为某一个服务器专用的模式(见图3)。这使存储设备从特定的服务器解脱出来成为自由的

2014-04-08 19:22:34 726

原创 网络存储学习之NAS

基于传统的附属于服务器存储(DAS)的缺点,网络存储应向直接与网络相连、单一功能服务器的方向发展。存储设备与网络设备直接相连,有利于客户机与存储器之间直接传送数据,这里把所有单

2014-04-08 19:05:22 1206

原创 网络存储学习之网络存储技术的发展现状及趋势

1 概述

2014-04-08 15:51:31 5795

原创 RS232串口和RS485串口的区别

RS232和RS485都定义了电压,阻抗等.但不对软件协议给予定义。1、RS-485的电气特性:逻辑“1”以两线间的电压差为+(2—6) V表示;逻辑“0”以两线间的电压差为-(2—6)V表示。接口信号电平比RS -232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。2、RS-485的数据最高传输速率:10Mbps3、RS-485接口是采用平

2014-02-17 16:12:27 4365

NoSQL学习之路

NoSQL学习很不错的资料,介绍了目前主流的NoSQL数据库实现原理,希望对大家有帮助。

2015-07-14

软件工程设计报告

文档中包含一个软件工程开发过程中所需要的各种文档以及每个文档的具体要求,希望对大家有帮助。

2014-08-22

Word、Excel快捷键

比较详细的列出了Word和excel中的全部快捷键,希望对大家有帮助

2014-08-22

C语言中printf格式

C语言中printf格式详细介绍了该函数的使用方式,希望对大家有帮助

2014-08-20

C__Socket编程实例

C__Socket编程实例详细描述了该函数的各种使用方式,并给予了详细的举例,希望对大家有帮助。

2014-08-20

C _Format函数_使用大全

C _Format函数_使用大全介绍了该函数的各种使用方法,并进行详细举例,希望对大家有帮助

2014-08-20

C语言的窗口式图形界面

C语言的窗口式图形界面详细介绍了利用C语言开发一个窗口所用的资源,其中WINDOWS开发占很多一部分,希望对大角有帮助

2014-08-20

Visual C++MFC编程实例

Visual C++MFC编程实例,里面汇集MFC构造C++窗口程序的各种实例,能够满足目前大多数C/S软件的编写请求

2014-08-20

Ubuntu 12.04 菜鸟完全使用教程

这是Ubuntu 12一个很好的入门教程,我就是从这教程开始接触linux, 开始了解这个操作系统的思维方式

2014-08-20

SQLite数据库帮助文档

详细描述了sqlite数据库的接口函数,是使用该数据库必选帮助文档

2014-07-22

MFC类库详解中文版

详细的列出了MFC类库中的所有函数和使用方式,是进行VC开发的必备之物

2014-07-22

NoSQL深入分析

针对NoSQL做了详细的分析,包括实现的原理,关键,主要问题等。

2014-07-20

HTML5帮助手册

是目前HTML5标准API,是进行网页开发必选指导书

2014-07-18

中国计算机学会推荐国际刊物会议列表

中国计算机学会推荐国际刊物会议列表比较详细的列出了计算机领域有哪些期刊和会议及对其进行分类

2014-07-18

SSD写入放大详解

详细描述了SSD中存在的写入放大问题以及存在的优化方法

2014-07-11

Windows API大全

Windows_API大全,里面涉及到微软MSDN的主要内容,调理清楚。

2014-07-01

windows_命令行操作大全

windows_命令行操作基础知识,很全面,适合初学者.

2014-07-01

Modelsim的下载及安装

Modelsim的下载及安装很不错的指导书

2014-07-01

一个带异步清零端的同步可逆模10计数器

一个带异步清零端的同步可逆模10计数器。同时提供1位LED数码管计数显示。M为 控制端,M=0,增1计数器,M=1,减1计数器;clr为清零端,高电平有效。Start:启动信号,高电平有效。

2014-07-01

Hadoop:分布式大数据处理架构

由于具备低成本和前所未有的高扩展性,Hadoop已被公认为是新一代的大数据处理平台。就像30年前SQL(Structured Query Language)出现一样,Hadoop正带来了新一轮的数据革命。如今Hadoop已从初出茅庐的小象变成了行业的巨人,但Hadoop仍需继续完善。

2014-07-01

在没有串口的机器上虚拟出串口的工具

现在一般电脑上都没有串口,但是在项目开发过程中恰恰需要串口,用该工具可以在没有串口的电脑上虚拟出串口。

2013-03-16

操作系统第七版标准答案

操作系统,原书第七版标准答案,适合于计算机专业,软件工程专业

2011-05-20

空空如也

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

TA关注的人

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