自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Linux系统调用探究(上)

Linux系统调用探究(上)Linux系统调用探究(上)Linux系统提供了一系列系统调用,用户可以通过这些系统调用与Linux内核进行交互,对于一个典型的C程序来说,调用一次系统调用经历了如下三层C库API,这是由C库提供的对中断向量的wrapper,也是直接面向用户的一层中断向量,中断向量是一个用户态进程进入内核态执行内核代码的途径,通过中断向量中的中断号...

2015-03-31 22:29:00 90

转载 Linux内核启动过程的分析

Linux内核启动过程分析Linux内核启动过程分析这次我们使用gdb跟踪Linux内核的启动来分析其启动过程,内核版本3.18.6Linux内核的启动从src/init/main.c的start_kernel函数开始,因此使用gdb在start_kernel函数下断点并进行跟踪start_kernel的代码比较多,近200行,大多数是各个系统模块的初始化,本...

2015-03-22 20:11:00 169

转载 一个简单进程调度器的实现和分析

主体代码文件有三个,mypcb.h,myinterupt.h, mymain.h,mypcb定义了进程控制块结构,myinterupt实现了中断处理程序,mymain是实际入口点,以下代码省去了头文件部分,并有详细注释,下面的分析中只挑选关键部分进行分析 1 /* A simply process control block */ 2 3 #define MAX_...

2015-03-15 22:01:00 191

转载 简单C程序在IA-32 CPU上运行过程的分析

本文将通过编译器生成的汇编代码分析C程序在IA-32体系PC上的运行流程实验环境: gcc 4.8.2C语言程序的内存结构C代码如下int g(int x){ return x + 1;}int f(int x){ return g(x);}int main(void){ return f(2) + ...

2015-03-08 12:36:00 207

转载 Python实现Const

Python实现constPython实现constpython语言本身没有提供const,但实际开发中经常会遇到需要使用const的情形,由于语言本身没有这种支出,因此需要使用一些技巧来实现这一功能定义const类如下import sysclass Const(object): class ConstError(TypeException): ...

2015-01-27 12:14:00 158

转载 Effective C++读书笔记 Part2

Effective_CPP_Note2Effective C++ Notes Part IIPart II. Constructors, Destructors and Assignment Operators5. Know what functions C++ silently writes and calls. (C++ 03)If any of de...

2015-01-16 12:01:00 170

转载 Effective C++读书笔记 Part1

##Effective C++ Notes### Part I. Accustoming Yourself to C++####1. View C++ as a federation of languages- C++ is a multi-paradigm programming language with paradigms including procedure orien...

2015-01-08 00:53:00 146

转载 通过TCP回射服务器分析TCP协议基本流程(一)

本文将对一个简单的TCP回射服务器和客户端进行抓包,从而分析一次成功而理想TCP会话的基本流程,多次不成功或与预期不一致的抓包结果将在下篇博文进行分析本文程序编译环境为:Linux version 3.16.4-1-ARCHgcc version 4.9.1 20140903 (prerelease)Glibc 2.18服务器代码如下: 1 #inclu...

2014-10-27 16:54:00 109

转载 Direct3D纹理映射

1. 纹理坐标Direct3D使用的纹理坐标由水平的u轴和垂直的v轴组成,并且为了处理不同尺寸的纹理,Direct3D将纹理坐标规范化为[0,1]为了在实体的三角形单元中显示纹理,我们需要在顶点坐标中添加纹理坐标,再加纹理上相应的三角形区域映射到三角形单元上struct Vertex{ float _x, _y, _z; float _nx, _ny, _n...

2014-10-08 17:08:00 143

转载 Direct3D光照系统

光照系统用于增强场景的真实感,描述实体的形状和立体感,启用光照系统后,Direct3D会根据材质,光源属性等信息自动计算每个顶点的颜色值,使绘制结果更加逼真1. 光照的类型Direct3D的光照模型中,光源的光由以下三个分量组成环境光(Ambient),用于模拟未处于光源直射时,照亮物体表面的反射光散射光(Diffuse),这类光到达物体表面后,将沿各方向均匀反射镜面光(S...

2014-10-05 01:08:00 237

转载 Direct3D使用顶点缓存和索引缓存进行绘制

1. 使用顶点缓存绘制静止图形效果图1.0 模型表示本例中只有一个三角形mesh,需要三个顶点来描述。FVF顶点格式如下定义struct Vertex{ float _x, _y, _z, _rhw; DWORD _color; Vertex(float x, float y, float z, float rhw, DWORD color): ...

2014-09-28 02:24:00 392

转载 Direct3D9的绘制流水线

Direct3D的渲染过程大致可以分为以下几步0. 模型表示所有的三维实体都可以由有限的三角形mesh来逼近地表示D3D绘制图形的最小单位(图元)通常为三角形mesh,但D3D也支持点图元和线图元(例如用于粒子系统)为了描述一个三角形mesh,我们需要一个顶点列表,D3D中的顶点和数学上的顶点有所区别,除了数学上顶点所有的位置信息外,D3D的顶点还包含了光照,颜色,法向量等信...

2014-09-24 23:37:00 236

转载 在VS中创建和使用DLL动态链接库

VS中使用动态链接库较GCC略微复杂在VS中新建工程时建立dll工程在dll工程的头文件中加入如下宏#ifdef DLL_IMPLEMENT_#define DLL_APL __declspec(dllexport)#else#define DLL_API __declspec(dllimport)#endif__declspec(dllimport)和__decl...

2014-09-23 20:16:00 98

转载 D3D的初始化

要开始D3D编程,首先是要初始化D3D环境,SDK文档的tutorial将整个过程分为几部创建一个窗体初始化D3D获取IDirect3D9的指针检查设备的性能、对API的支持能力初始化D3DPRESENT_PARAMETERS使用D3DPRESENT_PARAMETER的参数创建IDirectDDevice9处理消息渲染&显示场景关闭D3D,退出程序...

2014-09-21 13:46:00 243

转载 简单的Windows API编程回顾

DirectX3D程序需要将3D场景绘制到一个windows窗口的客户区中,因此复习一下简单的Win32GUI编程是有必要的,对于DirectX3D编程,这些也就足够了1. Windows应用程序的基本机制Windows应用程序采用事件驱动模型,windows会将用户的行为作为事件发送给应用程序,应用程序启动时就维护了一个优先级队列,用于储存windows发来的事件消息,应用程序...

2014-09-20 21:05:00 65

转载 union-find并查集

#Union-Find并查集#简介并查集是用于解决动态连通性类问题的一种数据结构什么是动态连通性(图的连通性)问题涉及两个函数find(p,q)union(p,q)find用于判断图的两个节点是否连通union用于将图的两个节点连接Union-Find的实现将图以数组形式储存,初始状态数组元素的值等于下标连通的节点被称为一个组Quick-Find实现...

2014-09-19 15:59:00 131

空空如也

空空如也

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

TA关注的人

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