自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (8)
  • 收藏
  • 关注

原创 CentOS 6.3下安装KVM虚拟机

在我决定自己动手安装kvm虚拟机的时候,我最先去的官网找安装的步骤,没花多大力气就找到了《Getting KVM to run on your machine》这篇文章,按照上面的步骤开始安装。根据这篇文章,安装kvm虚拟机并运行,只需要以下三个步骤: 1. /usr/local/kvm/bin/qemu-img create -f qcow2 vdisk.img 10G

2013-05-26 21:49:52 5633 2

原创 __do_strncpy_from_user()源码分析

在用户层发起系统调用时,有时需要向内核传递字符串。内核通常不会直接操作用户传入的字符串,而是先拷贝到内核缓冲区中。因为是用户态传入的指针,并不能保证在拷贝的过程中不会发生异常,所以内核必须保证这种异常不会影响到内核的运行。内核通常会使用copy_from_user()或者strncpy_from_user()等类似的函数来执行拷贝操作。我们这里以strncpy_from_user()(64位系统)

2013-05-25 10:27:37 2835

原创 决定彻底放弃对MooseFS的研究

虽然对分布式也有一些了解,但是一直没有深入到代码去研究具体的实现。在群里咨询了一下,自己也google了一些资料,最终决定从MooseFS入手来深入研究分布式系统。第一步,就是从网上找文档,自己动手安装部署一番。官方网站上有一个中文的安装手册,非常nice,整个安装配置过程也非常顺利,感觉还不错,就是看它的代码实现。看完之后有些失望,在main函数中的第一个函数strerr_init()中看到了这

2013-05-21 23:14:40 3245 1

原创 MooseFS源码分析----master服务器初始化过程

Moose File System 是一个具备容错功能的网络分布式文件系统,它将数据分布在网络中的不同服务器上,MooseFS 通过FUSE 使之看起来就是一个 Unix 的文件系统。MooseFS主要由主服务器、备份服务器、存储服务器和客户端组成。这篇文章主要介绍主服务器,也就是master服务器的初始化过程,不会涉及具体的与其他服务器的通信,这些留在后面介绍。  MooseFS是群里一个哥

2013-05-19 19:33:08 3420

原创 MooseFS中的APPNAME宏

在MooseFS的main函数(mfscommon/main.c)中看到下面的语句:cfgfile=strdup(ETC_PATH "/" STR(APPNAME) ".cfg");这个APPNAME的宏在代码中查找了所有引用(source insight)都没有找到定义的地方,但是编译的时候没有报错,并且用gdb调试的时候可以看到cfgfile的输出为“/usr/local/mfs-1.

2013-05-17 23:06:11 1634

原创 找到11的n次方十进制表示中1的个数

这个题目是群里贴出来的的,只有图片,题目如下:解题思路:很明显,这个题目如果直接计算11的n次方的值的话肯定不行,因为n的取值范围是0到1000,在C语言中即使用unsigned long也存储不了这么大的结果。要解决这个问题,还是要从11这个数本身的特点入手。我最开始的想法是展开(10+1)^n,然后从这个展开的式子中找到解题方法,但是展开的结果表示这个路子走不通

2013-05-15 18:15:14 4497

原创 Find the first covering prefix of array

这是在codility上看到的一个题目:A non-empty zero-indexed array A consisting of N integers is given. The first covering prefix of array A is the smallest integer P such that 0≤PFor example, the first cov

2013-05-13 17:36:30 2297

原创 进程地址空间的布局(整理)

虚拟地址空间中包含了若干区域。其分布方式是特定于体系结构的,但所有方法都有下列共同成分。 1)当前运行的二进制代码。该代码通常称之为text,所处的虚拟内存区域称之为text段。 2)程序使用的动态库的代码 3)用于保存全局变量和动态产生的数据的堆(应该还包括静态变量) 4)用于保存局部变量和实现函数/过程调用的栈。 5)环境变量和命令行参数的段 6)将文件内容映射到虚拟地

2013-05-11 15:08:36 5424

原创 为什么linux kernel默认的页面大小是4K,而不是4M或8M?

相信很多人在看内核内存管理部分的时候,都有这样一个疑问,为什么物理页面的大小选择4K,而不是大一些或者小一些呢?这个问题没有固定的答案,仁者见仁智者见智,每个人的关注点不一样。所以这篇文章不是说给出一个固定的答案,更多的只是一篇讨论性的文章。内核的页面大小首先跟CPU有关,不同的架构支持的页面大小也不相同,但有一个共同点,那就是肯定支持4K的页面大小。为什么处理器在设计的时候会选择4K,而

2013-05-10 11:58:54 11378 1

深入理解计算机系统

国外经典教程, 经典的讲解操作系统底层原理的好书!

2013-01-15

SQL语句经典大全SQL语句经典大全SQL语句经典大全

SQL语句经典大全 SQL语句经典大全 SQL语句经典大全

2011-04-22

Linux_C高级程序员指南.pdfLinux_C高级程序员指南.pdf

Linux_C高级程序员指南.pdf Linux_C高级程序员指南.pdf Linux_C高级程序员指南.pdf

2011-04-19

经典算法大全,学习算法的好东东

经典的算法大全,对于初学者很好哦。经典的算法大全,对于初学者很好哦。经典的算法大全,对于初学者很好哦。

2011-04-14

C#读取配置文件详细教程

用C#读取配置文件,很详细的哦,而且使用的方法也是比较优化的

2011-04-14

进程线程的概念,讲的很详细

介绍进程线程很详细的资料哦,对学习编程语言很有帮助。面试的时候也会经常被问到这样的问题

2011-04-14

用C#操作数据库用C#操作数据库,很多很全哦

用C#操作数据库,很多很全哦 用C#操作数据库,很多很全哦 用C#操作数据库,很多很全哦

2011-04-06

空空如也

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

TA关注的人

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