自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

博观约取

人的一切痛苦,本质上都是对自己的无能的愤怒!

  • 博客(11)
  • 资源 (14)
  • 收藏
  • 关注

原创 Lua 中栈操作的C API示例

这是《Lua程序设计》中的例子,做个简单记录。#include #include #include static void stackDump(lua_State *L){ int i; int top = lua_gettop(L); for(i = 1; i <= top; i++){ int t = lua_type(L, i);

2014-08-30 17:56:52 1403

原创 在C中调用Lua代码

这个程序从终端读入内容,而后按照lua块执行。#include #include #include "lua.h"#include "lauxlib.h"#include "lualib.h"int main(){ char buff[1024]; int error; memset(buff, 0, sizeof(buff)); lua_Stat

2014-08-29 16:47:53 1874

原创 skynet源码学习 - logger服务的工作原理

当skynet启动的时候,会根据配置文件制定的日志文件来创建一个logger context,具体过程就是找到logger.so动态链接文件,而后调用其logger_create函数(参数是配置的日志文件),而后构建这个服务对应的context(重要的是里面注册了该服务的回调函数_logger())和消息队列,最后执行logger_init函数,把logger的消息队列放入global que

2014-08-27 21:36:50 4092

原创 错误: 您选择的 CPU 不支持 x86-64 指令集

在运行Makefile的时候出现这个错误表示指定的类型无法满足当前的CPU,需要修改编译选项比如   gcc -g -Wall -march=x86-64 -o   ......gcc编译器选项 -march表示为特定的cpu类型编译二进制代码(不能在更低级别的cpu上运行)

2014-08-27 19:54:52 9164

原创 skynet源码学习 - 读写锁实现

skynet 利用内置的原子操作来实现的一个读写锁,重点是理解 ”full  memory barrier“ ,UNPv2 中利用互斥和条件变量实现的读写锁。前者是在硬件支持的情况下,显得简单明了,站的层次不一样。源码贴出来:struct rwlock { int write; int read;};static inline voidrwlock_in

2014-08-26 10:35:31 3087 1

原创 skynet源码学习 - 从全局队列中弹出/压入一个消息队列过程

学习云风的skynet源码,简单记录下。void skynet_globalmq_push(struct message_queue * queue) { struct global_queue *q= Q; uint32_t tail = GP(__sync_fetch_and_add(&q->tail,1)); // only one thread can set the sl

2014-08-25 20:55:05 1894

原创 为线程绑定CPU

// learn gcc atomic variable#define _GNU_SOURCE#include #include #include #include #include #include #include #include #define INC_TO 1000000 // every thread adds 1 million timesint glob

2014-08-24 12:13:02 1413

原创 OVS 发送OFPT_PORT_STATUS 过程

根据openflow协议,当一个物理端口从ovs datapath 增加,修改或者删除的时候,都会通过ofp_port_status异步消息告知Controller,比如当我们执行 ovs-vsctl add-port br0 eth0 之类的命令后,就会更新ovsdb数据库,而后全局变量 reconfiguring 变为true,从而会重新配置这个ovs。if (reconfig

2014-08-24 10:09:57 4622

原创 OVS中对于用户层和datapath层的多个通道利用epoll进行控制

这里先暂时记录下代码流程,有待完善。static intconstruct(struct ofproto *ofproto_){ struct ofproto_dpif *ofproto = ofproto_dpif_cast(ofproto_); const char *name = ofproto->up.name; int max_ports;

2014-08-18 20:56:39 1875

原创 对 dpif_class 结构体的一点认识

类 dpif_class 抽象的是OVS交换机用户空间和内核层datapath的通信接口(通过netlink),分层是出于性能和生产效率的考虑,通过接口dpif_class,用户层ovs-vswitchd会把发送各种端口,流表,查询等动作到内核层进行实际的执行,比如说我们增加一个端口到ovs中,那么就会从用户空间构造增加端口的 dpif_linux_vport 请求到datapath层。重点要

2014-08-18 20:44:26 3490

原创 "错误: void 值未如预期地被忽略"解决

在C陷阱与缺陷中,实现assert的时候,作者处理的很巧妙,利用逻辑或运算符的特性将这个过程转化为一个表达式,在当条件为假时就会调用_assert_error报错并终止程序。刚开始_assert_error 的返回值类型是 void 所以在((void)((e) || _assert_error(__FILE__, __LINE__))) 中出现了错误:void 值未如预期地被忽略,虽然e

2014-08-18 11:24:06 4149

Makecert.exe(证书创建工具)

证书创建工具生成仅用于测试目的的 X.509 证书。 它创建用于数字签名的公钥和私钥对,并将其存储在证书文件中。 此工具还将密钥对与指定发行者的名称相关联,并创建一个 X.509 证书(该证书将用户指定的名称绑定到密钥对的公共部分)。

2015-05-14

MySQL必知必会(高清)

《MySQL必知必会》MySQL是世界上最受欢迎的数据库管理系统之一。书中从介绍简单的数据检索开始,逐步深入一些复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、触发器、表约束,等等。通过重点突出的章节,条理清晰、系统而扼要地讲述了读者应该掌握的知识,使他们不经意间立刻功力大增。

2015-03-19

Java并发编程实践pdf及源码

《JAVA并发编程实践》随着多核处理器的普及,使用并发成为构建高性能应用程序的关键。Java 5以及6在开发并发程序中取得了显著的进步,提高了Java虚拟机的性能以及并发类的可伸缩性,并加入了丰富的新并发构建块。在《JAVA并发编程实践》中,这些便利工具的创造者不仅解释了它们究竟如何工作、如何使用,还阐释了创造它们的原因,及其背后的设计模式。

2014-09-15

Effective java第二版 代码

Effective java第二版,书中源码

2014-09-04

The Algorithm Design Manual second edition

这本书很不错,共同学习。免积分,Steven S. Skiena

2014-07-14

mentohust for linux

选择Mentohust代替锐捷。Mentohust 是由华中科技大学首先是在Linux系统下开发出来,而后扩展到支持Windows、Linux、Mac OS下的锐捷认证的程序(附带支持赛尔认证),目前兼容Windows、Linux和MacOS所有主流版本,完美代替锐捷认证。

2014-06-17

c++primer习题解答

C++ primer 第五版 课后习题解答

2013-10-27

三星GT-S5360root update.zip

三星 GT-S5360 root

2013-04-23

C51单片机的MP3播放器的设计与实现

C51单片机的MP 3播 放器 的设计与实现

2013-04-18

Smart grid

A Survey on Smart Grid CommunicationInfrastructures Motivations, Requirements and Challenges

2013-04-07

Java连接mysql数据库攻略

Java 连接 mysql 数 据库攻略

2011-05-22

java ee5 api

对于java web开发很有帮助, 是英文版的

2011-05-04

C++编程思想 txt

《Thinking in C++》中文版

2010-04-24

空空如也

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

TA关注的人

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