张小贱

Make things work

MPI 中的点对点通信

使用MPI作为集群通信的工具已经有一段时间,一开始只是粗略的了解了一下它提供的消息传递接口,虽然可以解决大部分问题,但是使用不便,效率较低。这几天仔细看了看官方的文档,在MPI中提供了很多有用的函数接口,使用者完全可以在其上建立灵活的通信层。本文主要介绍集群点对点的通信。 首先看一个简单的例子,从一个节点发送一条message到另一个节点: #include <mpi.h> ...

基于Berkeley DB的数据库备份系统

趁着五一,劳动一下,把这篇酝酿已久的博客写了。这是去年做的东西,完成了一段时间,经过测试使用还可以,基本可以保证数据库的Durability,无论是突然断电还是磁盘坏了等等。文章的大部分内容都是之前完成的(为了交高级数据库这门课的课程报告….)。适合需要使用Berkeley DB或者其它存储引擎建立自己的备份系统的人阅读和参考。或者是想看看设计思路的~ 摘要 本文所述内容基于实验室的IN...

平凡的世界

前年寒假的时候,买了一套平凡的世界,买之前一点都不了解,仅仅是听了别人的推荐。为了省邮费,还要加一本,就买了effective c++,现在来看这两本书一样那么好看和精彩。 现在刚刚看完电视剧版的,重温了一遍平凡的感动,可能是因为两年之间生活也发生了改变,又有了一些不同的感受。看完书的时候是这样写的: 终于在临走的一天晚上看完了平凡的世界,要不还要把它带到学校去,三本大书,估计要累...

Ten C++11 Features Every C++ Developer Should Use

本文转载自 这里 ,是英文版的,有一份中文版在 这里,中文的不让转载,只好转英文的了。介绍了C++ 11的几个特性,写的超好,不转不快 ! This article discusses a series of features new to C++11 that all developers should learn and use. There are lots of new addit...

PostgreSQL 中的 Json —从使用到源码

都不好意思开头了,又是选的课要提交报告,自我约束写文章确实不行。。希望文章不差就好。上课选分析的模块,拼了老命选上了存储部分,以为可以深入底层,变成高手,找到好工作,迎娶白富美,一看代码才发现,和存储没有半毛钱关系,虽然如此,源码写的确实很好,也是受益不少。PostgreSQL从9.2开始支持Json类型,把它当成标准类型一种,渐渐地提供了12个SQL函数。这篇文章先简单介绍一下Json,然...

C++面向对象特性实现剖析 Data Member篇

这一段时间写博客的频率少了很多,一直在给实验室数据库写备份和恢复的功能,积攒了很多值得深入学习的点,之后会一一总结。这篇文章是选的课需要交一篇分析语言特性如何实现的结题报告,正好看完Inside the c++ object model 之后,就一直想总结一下c++是怎么实现面向对象的继承,多态等等特性的。这是上篇,主要分析类中的数据成员,也是主要部分,下篇介绍虚函数的实现情况。 c++ ...

PostgreSQL 昨天,今天和明天

本文原作者为何伟平(laser),文章转载来自 www.pgsqldb.org PostgreSQL 简介 摘要 PostgreSQL 是一种非常先进的对象-关系型数据库管理系统(ORDBMS),目前功能最强大,特性最丰富和最先进的自由软件数据库系统。有些特性甚至连商业数据库都不具备。这个起源于伯克利(BSD)的数据库研究计划目前已经衍生成一项国际开发项目,并且有非常广泛的用户。本文是...

Berkeley DB 简简介

完成了关于Berkeley DB 整体介绍的PPT,弄懂了其中product的区别,仅用于大概了解,没有具体说怎么用。 发展历史 1991年,Berkeley DB的第一个版本发行(Linux系统也在这一年诞生),其最初的开发目的是以新的HASH访问算法来代替旧的hsearch函数和大量的Dbm库。 1992年,BSD UNIX第4.4发行版中包含了B...

该不该用外键?

作业第二弹,讲了四节课的经验型软件工程,要求随便找一个问题,用经验型软件工程的办法研究一下。于是想到实习的时候,老大经常说,现在在项目中基本上不用数据库的外键了。因为改起来太麻烦,费事。就借此复习一下外键内容。此处略去为了交作业强加上去的经验型软件工程流程。 外键简介: 参照完整性 我们常常希望保证一个关系中给定属性集上的取值也在另一个关系的某一属性集的取值中出现,这一条件称为参照完整性...

面向对象之后增加的开销

这半个月作业爆表,很多作业无甚意思,不做不行,做了浪费时间。于是尽量将作业写的有点内容,不至于应付差事,也不至于浪费时间。本文就是作业之一,要求写程序对比面向对象语言在增加了面向对象的特性之后,在时间上和空间上有什么变化。正好借此整理Inside the C++ object  model中的一些内容。 前言: 面向对象设计思想对于软件工程的意义非同一般,从结构化程序设计到面向对象,使得...