自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (26)
  • 问答 (1)
  • 收藏
  • 关注

转载 使用rpcgen构建分布式程序的一个简单例子

使用rpcgen构建分布式程序的一个简单例子一. RPC概念1.1 介绍        在中间件的实现中,引入了远程过程调用RPC(Remote Procedure Call)的概念。同时,许多分布式系统是基于进程间的显式消息交换的,然而消息的发送和接收过程无法隐藏通信的存在,而通信的隐藏对于在分布式系统中实现访问透明性是极为重要的。因此这个问题在很长一段时间内

2013-06-25 23:53:53 1523

原创 Posix共享内存区的基本操作

shmcreate程序#include #include #include #include #include #include /* For mode constants */#define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)int main(int argc, char** argv){ i

2013-06-24 00:25:07 869

原创 程序报错 undefined reference to `shm_open'

添加 -lrt库

2013-06-23 23:58:17 7202

原创 Linux ftruncate函数

NAME truncate, ftruncate - truncate a file to a specified lengthSYNOPSIS #include #include int truncate(const char *path, off_t length); int ftruncate(int fd, o

2013-06-23 23:23:44 2547

原创 理解二维数组

int _tmain(int argc, _TCHAR* argv[]){ char aa[][2] = {'a','b', 'c', 'd', 'e', 'f', 'g', 'h', '\0'}; char (*p)[2] = aa; p++; printf("%c\n", **p); return 0;}输出结果:思考:若将代码中的2改成3呢结果又是怎样?

2013-06-23 21:44:32 880

原创 Linux访问内存映射的对象

#include #include #include #include #include #define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)#define min(a,b) ((a) < (b) ? (a) : (b))#define max(a,b) ((a) > (b) ? (a) : (b))int main(int

2013-06-23 11:29:20 781

原创 Linux sysconf函数

函数原型:NAME sysconf - Get configuration information at runtimeSYNOPSIS #include long sysconf(int name);#include #include #define ONE_MB (1024 * 1024)int main (void){

2013-06-23 10:54:26 1543

原创 Linux下在内存映射文件中给计数器持续加1

#include #include #include /* For O_* constants */#include /* For mode constants */#include #include #include #define SEM_NAME "chansem"#define FILE_MODE (S_IRUSR|S_IWU

2013-06-23 00:58:12 937

转载 二维字符数组与char** 关系

数组和指针联系很紧密,数组名的含义至少有两种含义:      1. 对应数据中的第一个元素的地址,      2. sizeof为数组大小,而不是指针大小注:《c专家编程》中有详细介绍       指针使用经验总结.pdf 中也有相关内容编程中,需要向某个函数传递一个字符串数组。测试代码如下:[cpp] view plaincopy

2013-06-22 00:02:40 3114

原创 多个生产者,多个消费者

#include #include #include #include #include #define NBUFF 10#define MAXNTHREADS 100#define min(a,b) ((a) < (b) ? (a) : (b))#define max(a,b) ((a) > (b) ? (a) : (b))int nitems, nproducers

2013-06-21 00:13:47 1321

原创 Posix有名信号量的基本操作

1. semcreate程序#include #include #include #include /* For O_* constants */#include /* For mode constants */#include #define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)int

2013-06-18 00:26:39 979

原创 加了semaphore.h ,还报错undefined reference to sem_open

加上 -lpthread这个是因为没有连接上库。

2013-06-17 23:43:32 2494

原创 多进程记录加锁

#include #include #include #include #include #define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)#define SEQFILE "seqno"#define MAXLINE 4096void my_lock(int fd);void my_unlock(int fd);int

2013-06-16 23:28:41 1057

转载 一些重要的算法

下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的或是比较生僻的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏。不过了解一下也是好事。也欢迎你留下你觉得有意义的算法。(注:本篇文章并非翻译,其中的算法描述大部份摘自Wikipedia,因为维基百科描述的很专业了)A*搜寻算法俗称A星算法。这是一种在图形平面上,有多个节

2013-06-16 19:01:24 733

转载 编写Makefile

本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 编写Makefile  1. 一个例子 假设我们有下面这样的一个程序,源代码如下: [c-sharp] view pl

2013-06-16 18:42:14 656

原创 sscanf函数的用法

#include int scanf(const char *format, ...); int fscanf(FILE *stream, const char *format, ...); int sscanf(const char *str, const char *format, ...); 函数说明             ssc

2013-06-16 17:59:00 668

原创 生产者与消费者

逐步分析实现:1.等待生产者线程,然后启动消费者线程#include #include #include #include #define MAXNITEMS 1000000#define MAXNTHREADS 5#define min(a,b) ((a) < (b) ? (a) : (b))#define max(a,b) ((a) >

2013-06-14 00:12:42 714

原创 sigemptyset、sigaddset、sigprocmask的用法

#include #include #include #include int main(int argc,char **argv){ double y; sigset_t intmask; int i,repeat_factor; if(argc!=2) { fprintf(stderr,"Usage:%s repeat_fac

2013-06-12 23:22:52 1172

原创 Linux消息队列(简单的信号通知)

#include #include #include #include #include mqd_t mqd;void *buff;struct mq_attr attr;struct sigevent sigev;static void sig_user1(int);int main(int argc, char** argv){ if(

2013-06-12 23:01:28 1586

原创 Posix消息队列——mq_notify函数

Posix消息队列容许 异步事件通知,以告知何时有一个消息放置到某个空消息队列中,这种通知有两种方式可以选择:产生一个信号创建一个线程来执行一个指定的函数这种通知通过调用mq_notify建立#include int mq_notify(mqd_t mqdes, const struct sigevent* notification);该函数为指定队列建立或删除异步事件通知(

2013-06-12 21:46:12 3845

原创 使用多线程的利弊

转自:http://software.intel.com/zh-cn/blogs/2013/04/09/?utm_campaign=CSDN&utm_source=intel.csdn.net&utm_medium=Link&utm_content=%20Multicore%20-duoxiancheng1. Amdahl定律     一个很简单的量化公式,用来计算一个程序中串

2013-06-12 17:50:16 787

原创 Posix消息队列的基本操作——接收消息

#include #include #include #include int main(int argc, char** argv){ int c, flags; mqd_t mqd; size_t prio; ssize_t n; void* buff; struct mq_attr attr; flags =

2013-06-12 17:48:12 731

原创 Posix消息队列的基本操作——发送消息

#include #include #include #include int main(int argc, char** argv){ mqd_t mqd; void *ptr; size_t len; size_t prio; if(argc != 4) { printf("usage: mqsend

2013-06-12 17:47:19 797

原创 Posix消息队列的基本操作——获取消息属性

#include #include #include #include int main(int argc, char** argv){ mqd_t mqd; struct mq_attr attr; if(argc != 2) { printf("usage: mqgetattr "); } mqd = mq_o

2013-06-12 17:46:23 842

原创 linux 下查找文件或者内容常有命令

whereis 查找软件的安装路径-b 只查找二进制文件-m 只查找帮助文件-s 只查找源代码-u 排除指定类型文件-f 只显示文件名-B 在指定目录下查找二进制文件-M 在指定目录下查找帮助文件-S 在指定目录下查找源代码locate 在文件索引数据库中搜索文件-d 搜索指定数据库updatedb更新文件索引数据库f

2013-06-12 16:39:30 747

原创 Posix消息队列的基本操作——创建或打开

#include #include #include #include /* For O_* constants */#include /* For mode constants */#include #define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)struct mq_attr attr;

2013-06-12 14:25:32 755

转载 各大网站架构简单总结[分享]

1、Facebook架构大体层次划分,Facebook的架构可以从不同角度来换分层次。一种是:一边是PHP整的经典的LAMP stack;另外一个是非PHP整的各种service。--Web 前端是由 PHP 写的。Facebook 的HipHop会把PHP转成C++并用g++编译,这样就可以为模板和Web逻贺业务层提供高的性能。--业务逻辑以Service的形式存在,其使用Thrif

2013-06-11 01:12:26 1017

转载 一步步构建大型网站架构

转自:http://www.blogjava.net/BlueDavy/archive/2008/09/03/226749.html之前我简单向大家介绍了各个知名大型网站的架构,亿万用户网站MySpace的成功秘密、Flickr架构、YouTube网站架构、PlentyOfFish 网站架构学习、WikiPedia技术架构学习笔记。这几个都很典型,我们可以从中获取很多有关网站架构方面的

2013-06-11 01:00:14 714

转载 亿万用户网站MySpace的成功秘密

高速增长的访问量给社区网络的技术体系带来了巨大挑战。MySpace的开发者多年来不断重构站点软件、数据库和存储系统,以期与自身的成长同步——目前,该站点月访问量已达400亿。绝大多数网站需要应对的流量都不及MySpace的一小部分,但那些指望迈入庞大在线市场的人,可以从MySpace的成长过程学到知识。MySpace开发人员已经多次重构站点软件、数据库和存储系统,以满足爆炸性的成长需要,但

2013-06-11 00:54:49 836

原创 HTTP协议详解

当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。阅读目录什么是HTTP协议Web服务器,浏览器,代理服务器URL详解HTTP协议是无状态的打开

2013-06-10 13:38:09 547

原创 线程终止的方式

单个线程在不终止整个进程的情况下停止他的控制流(1). 线程从启动例程中返回,返回值是线程的退出码(2). 线程可以被统一进程中的其他线程取消 (3). 线程调用pthread_exit.获取线程退出状态:#include #include void* thr_fn1(void* arg){ printf("thread 1 returning\n"

2013-06-02 22:22:08 735

原创 打印线程ID

#include #include pthread_t ntid; void printids(const char* s){ pid_t pid; pthread_t tid; pid = getpid(); tid = pthread_self(); printf("%s pid %u tid %u (0

2013-06-02 22:03:59 3008

毕业答辩ppt模板(答辩必备,效果很炫)

毕业答辩ppt模板,答辩必备,效果很炫,给人耳目一新的感觉。

2011-06-12

流程图生成软件(适合初学者学习流程图)

流程图生成软件(适合初学者学习流程图),非常实用,简单

2011-05-28

二进制编辑器(查看.exe文件的内存中的具体二进制存储)

二进制编辑器,用于查看.exe文件的内存中的具体二进制存储。

2011-05-28

.dll文件查看器,直接阅读dll文件

.dll文件查看器,可直接阅读dll文件,非常实用的工具软件

2011-05-27

ACM题解,著名院校oj解题代码

ACM题解,著名院校oj解题代码,对ACmer非常有用

2011-05-27

数据结构代码(严蔚敏版C实现)

数据结构代码,用于深入理解数据结构和算法

2011-05-27

经典数学函数程序(C语言实现)

经典数学函数程序,可用于相关的数学方面的研究

2011-05-27

空空如也

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

TA关注的人

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