自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

转载 内存地址对齐

内存地址对齐,是一种在计算机内存中排列数据、访问数据的一种方式,包含了两种相互独立又相互关联的部分:基本数据对齐和结构体数据对齐。当今的计算机在计算机内存中读写数据时都是按字(word)大小块来进行操作的(在32位系统中,数据总线宽度为32,每次能读取4字节,地址总线宽度为32,因此最大的寻址空间为2^32=4GB,但是最低2位A[0],A[1]是不用于寻址,A[2-31]才能存储器相连,

2014-06-27 17:47:38 624

转载 结构体字节对齐

在用sizeof运算符求算某结构体所占空间时,并不是简单地将结构体中所有元素各自占的空间相加,这里涉及到内存字节对齐的问题。从理论上讲,对于任何 变量的访问都可以从任何地址开始访问,但是事实上不是如此,实际上访问特定类型的变量只能在特定的地址访问,这就需要各个变量在空间上按一定的规则排列, 而不是简单地顺序排列,这就是内存对齐。      内存对齐的原因:      1)某些平台只

2014-06-27 17:46:51 543

转载 怎样花两年时间去面试一个人

Joel Spolsky曾经感叹:招聘难,难于上青天(此处笔者稍加演绎:))。他有两个辛辣但不乏洞察力的断言:真正的牛人也许一辈子就投大概4次简历,这些家伙一毕业就被好公司抢走了,并且他们的雇主会给他们不赖的待遇,所以他们也不想挪窝。(刚刚去世的Dennis Ritchie就是这样一个人)而“人才”市场上能找到的大多都不是什么人才。招到这帮人轻则费钱重则把你公司搞挂。(当我把这篇文

2014-06-24 11:46:33 916 1

原创 虚拟地址和虚拟内存区别

程序访问存储器所使用的逻辑地址称为虚拟地址,虚拟地址 (virtual address): 4G虚拟地址空间中的地址,程序中使用的都是虚拟地址。每一个进程都分配有一个4G的虚拟地址。通过虚拟地址访问内存的形式称为保护模式,因为它不允许直接访问内核空间,而对应的直接访问物理内存的方式称为实模式,现在已经很少使用。  比如 mov eax,004227b8h ,这是把地址00422

2014-06-20 20:48:37 3313

转载 进程地址空间与虚拟存储空间的理解

在进入正题前先来谈谈操作系统内存管理机制的发展历程,了解这些有利于我们更好的理解目前操作系统的内存管理机制。一早期的内存分配机制在 早期的计算机中,要运行一个程序,会把这些程序全都装入内存,程序都是直接运行在内存上的,也就是说程序中访问的内存地址都是实际的物理内存地址。当计算 机同时运行多个程序时,必须保证这些程序用到的内存总量要小于计算机实际物理内存的大小。那当程序同

2014-06-20 20:47:34 926 3

转载 进程的虚拟地址空间

虚拟内存与虚拟地址空间检举|2013-03-28 16:45 匿名 | 分类:硬盘| 浏览15次请问 虚拟内存跟虚拟地址空间有没有联系。2个是不同的概念还是有相关的联系。还有帮忙介绍哈怎么做到每个进程都是4GB的地址空间。对于物理内存的地址空间 虚拟地址空间跟物理地址的空间的关系又什么···谢谢了我有更好的答案网友采纳检举|2013-03-29

2014-06-20 20:44:18 944

原创 C++中容易被忽略,也没多少人能彻底搞懂的..

字符串的长度通常是指字符串中包含字符的数目,但有的时候人们需要的是字符串所占字节的数目。常见的获取字符串长度的方法包括如下几种。    1.使用sizeof获取字符串长度sizeof的含义很明确,它用以获取字符数组的字节数(当然包括结束符\0)。对于ANSI字符串和UNICODE字符串,形式如下:    sizeof(cs)/sizeof(char)    sizeof(ws)

2014-06-17 17:25:23 686

转载 利用共享内存来恢复玩家数据

听上去共享内存和游戏不太沾边,但在游戏服务器上利用共享内存这个技术已经不是一个新鲜的事了,畅游和像素早在天龙八部和寻仙就实现了这一应用(但不一定都像下面提到的这么用)。较早之前和同事讨论过如何在现有框架里利用共享内存这种进程间访问统一数据的特点,最理想的应用方案是切合目前以场景为单位的逻辑进程分割方式,能访问同一个内存数据就意味着场景间的物体进出进程间完全可以不用传递数据就能完成,怪物

2014-06-10 21:29:05 840

原创 Dragon之BillingServer

从字面上看,Billing是计费的,应该处理玩家在线时间或者包月之类。但是天龙八部是免费游戏,不需要算时间来计费。从代码中看,BillingServer也比较简单,它有一个连接到Web服务器,并监听一个端口,接受一些客户端的连接。从该服务器处理的协议包上看,BillingServer接受LoginServer和WorldServer的连接。

2014-06-10 16:40:34 848

原创 Dragon之LoginServer

在分析dragon的登录服务器结构时,本人喜欢从组成这个LoginServer功能的众多对象入手,研究这些对象的功能和对象之间如何组织关系来达到数据处理和数据存储的井然有序,就能很好的看清楚他的思维,从别人的代码中领悟出为自己所用的经验出来.而dragon的代码很好的做到了这一点,让程序结构非常清晰,这点带来的好处就是不容易出错,服务器很稳定,而且他的结构就是我们服务器编程中常

2014-06-10 11:22:11 1481

转载 Rational Rose 把C++代码逆向转换成UML(安装篇)

  然后点击      选择同意后点击next    可以点击change更改安装目

2014-06-05 16:11:36 1276

转载 Rational Rose 2003 逆向工程转换C++源代码成UML类图 (使用篇)

1.安装&破解Rational Rose 20031.1安装Rose 2003(1)在网上下载Rational Rose Enterprise Edition 2003(2)网上下载Rose 2003的破解包rose2003crack(3)安装Rational Rose Enterprise Edition 2003点击exe安装包,按照向导一步一步走。

2014-06-05 15:45:23 1758

转载 主宰全球的10大算法

【编者按】Reddit有篇帖子介绍了算法对我们现在生活的重要性,以及哪些算法对现代文明所做贡献最大。这个表单并不完整,很多与我们密切相关的算法都没有提到,如机器学习和矩阵乘法,欢迎你继续补充。如果对算法有所了解,读这篇文章时你可能会问“作者知道算法为何物吗?”,或是“Facebook的‘信息流’(News Feed)算是一种算法吗?”,如果“信息流”是算法,那就可以把所

2014-06-05 15:37:41 590

空空如也

空空如也

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

TA关注的人

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