自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Opensolaris: expect用法小结

expect是基于tcl演变而来的,很多语法和tcl类似,基本的语法见如下示例:#!/usr/tcl/bin/expect -f#page_autofiler_cifs_mount.exp mount_name remote_host remote_name user_n

2011-09-10 18:15:56 5267

原创 Opensolaris加载RAID卡驱动

OpenSolaris驱动不全,在实际中碰到识别不了硬盘卡,我这里用的是OpenSolaris snv_134和LSI9240-8i.连硬盘都识别不了,自然装不了操作系统.今天终于解决了这个问题.进入安装界面,同样可以设置本机IP地址,子网掩码,默认网关什么的,具体怎么设

2011-08-22 19:22:21 2907

原创 Opensolaris: 设置静态IP地址

在网上也有相关文章,感觉或设置过多,或设置偏少。自己总结如下:1. 禁用nwam服务root@opensolaris# svcadm disable nwam2.配置子网掩码文件root@opensolaris# echo "10.224.54.0 255.255.254.0"

2011-07-14 17:08:19 1974

原创 Opensolaris: 从控制台启动

Opensolaris安装默认从图形界面启动。现在想从控制台启动而不经过图形界面启动,在网上搜索了好多,然后总结出如下方法:step I:root@opensolaris:/rpool/boot/grub# bootadm list-menuthe location for th

2011-07-14 15:42:09 1519

原创 Opensolaris: root用户登陆问题

root用户本机登陆 rolemod -K type=normal rootroot用户ssh远程登陆先修改配置文件$ vi /etc/ssh/sshd_configPermitRootLogin no改成 PermitRootLogin yes再重启ssh服务svcadm re

2011-07-14 13:51:41 1620

原创 Opensolaris: TCL和 Expect 编译与安装

1.  获取原始的tcl源码包和expect源码包,名称根据版本不同而有所区别. 我的分别是tcl8.4.19-src.tar.gz 和expect5.45.tar.gz.    下载Expect的地址: http://sourceforge.net/proj

2011-07-06 17:11:28 3377 1

原创 dd命令

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file

2011-06-03 16:10:00 1396

原创 linux中编译静态库(.a)和动态库(.so)的基本方法

<br />静态库 <br />       在linux环境中, 使用ar命令创建静态库文件.如下是命令的选项: <br />          d -----从指定的静态库文件中删除文件 <br />          m -----把文件移动到指定的静态库文件中 <br />          p -----把静态库文件中指定的文件输出到标准输出 <br />          q -----快速地把文件追加到静态库文件中 <br />          r -----把文件插

2011-05-26 17:17:00 20117

原创 文件查找和文件内容匹配

<br />在当前目录及其子目录下查找test.c文件 <br />find . -name test.c<br /> <br />在当前目录及其子目录下的文件中匹配含this_option_optind的内容<br />find .  -type f | xargs grep "this_option_optind"<br /> <br />在当前目录下的文件中匹配含this_option_optind的内容<br />grep "this_option_optind"  *

2010-12-24 12:58:00 2051

原创 OpenSolaris: 配置CIFS,与Windows共享

现在,2009.06版本的OpenSolaris CIFS 服务包含许多新功能,如基于主机的访问控制(允许 CIFS 服务器按 IP 地址限制对特定客户机的访问)、有关共享资源的 ACL(access control list,访问控制列表),以及客户端脱机文件缓存和重新连接时进

2010-11-22 11:30:00 3281

原创 本地server设置CVS登陆

登陆CVS:cvs -d :pserver:smith@engcvsserv3.corp.webex.com:/cvs/test login 将cvs上test目录checkout 到本地sandbox目录: cvs -d :pserver:SmithSh@engcvsserv3.corp.webex.com:/cvs/test checkout -d cvs -P sandbox

2010-11-04 13:47:00 1355

原创 NetApp与Oracle就ZFS达成谅解

<br />NetApp已经宣布,他们和甲骨文就Zettabyte File System (ZFS)专利诉讼达成了一致,这是由甲骨文收购SUN引发的.早在2007年NetApp就起诉Sun公司,指控其ZFS侵犯了一些NetApp的 Write Anywhere File Layout (WAFL)专利.<br /> 请注意,这场纷争并不是因为代码被盗用,仅仅是因为Zettabyte File System (ZFS) 和 Write Anywhere File Layout (WAFL)有一些相同

2010-10-12 10:21:00 1713

原创 NAT与NAT穿透(二)

5. NAT穿透5.1 转发     最可靠但又是最低效的点对点通信方法,莫过于将p2p网络通信看作一个C/S结构,通过服务器来转发信息.如下图,两个客户端A和B,均与服务器S初始化了一个TCP或UDP连接,服务器S具有公网固定IP地址,两个客户端分布在不同的私网中,这样,他们各自的NAT代理服务器将不允许他们进行直连.                                    Server S                                          |        

2010-06-08 10:59:00 31308 3

原创 NAT与NAT穿透(一)

<br />1. NAT简介<br />前面的文章说到了针对IP不足的许多技术,但这些技术基本都不会增加可用的IP地址数.NAT(Network Address Translation)又称"网络地址转换",它是一种把内部私有网络地址翻译成合法网络IP地址的技术,个人认为该技术是解决IP地址不足最有效的方法.它是一个IETF(Internet Engineering Task Force,Internet工程任务组)标准.<br />简单地说,NAT就是在局域网内部使用私有地址(前面文章说到过每类IP地址都

2010-06-07 09:58:00 24159 4

转载 Peer-to-Peer (P2P) communication across middleboxes

              Peer-to-Peer (P2P) communication across middleboxesStatus of this Memo   This document is an Internet-Draft and is subject to all provisions   of Section 10 of RFC2026.  Internet-Drafts are working documents of   the Internet Engineering Task

2010-06-04 10:27:00 2684

原创 IP地址,子网掩码,子网划分,路由汇总,VLSM,CIDR

IP地址分类:IP地址什么基本概念就不重复了,大致说下IP地址的分类.A类地址:1.A类地址第1个字节为网络地址,其它3个字节为主机地址. 2.A类地址范围:1.0.0.0 -- 126.255.255.255   3.A类地址中的私有地址和保留地址:  10.*.*.*是私有地址,范围为10.0.0.0 -- 10.255.255.255(所谓的私有地址就是在互联网上不使用,而被用在

2010-05-27 10:28:00 7261 3

原创 网络接入技术

计算机网络可以分成两大块:骨干网和接入网.接入网即是终端用户和骨干网络之间的连接部分.随着骨干网速度的快速提升,接入技术也有了不断的发展.先说下我们个人经历过的网络接入技术的变迁:PSTN拨号>ISDN拨号>ADSL>Cable-modem>光纤入户>无线接入.PSTN拨号:PSTN(Published Switched Telephone Network,公用电话交换网)技术是利用PST

2010-05-25 13:11:00 3298

原创 分类导读

blog今年到现在还没更新过几篇,主要太忙了.从1月底到3月初做类似NetApp的Snapmirror项目的第二个版本,然后从3月初到现在5月中旬又做了两个项目:存储的cluster failover项目和文件复制的又一个版本(从设计架构上可以算最后一个版本了).进公司快3年了,做的项目和走的方向基本和当初进公司的规划一致,到现在该做的项目基本都做到了,对自己的兴趣和未来方向更清晰了.blog

2010-05-20 15:46:00 784

原创 TCP三次握手/四次挥手及其状态分析

前面CLOSE_WAIT状态分析与TIME_WAIT状态分析其实都是TCP断开连接过程中的两个状态.本文继续介绍下TCP连接三次握手,四次挥手的过程及其中间的状态三次握手原理:第一次握手:客户端发送syn包(syn=j)到服务器,等待服务器确认.第二次握手:服务器收到syn包,必须确认(ack=j+1),同时自己发送一个syn包(syn=k),即SYN+ACK包.第三次握手:客户端

2010-04-08 23:08:00 1675

原创 TIME_WAIT状态分析

先仍给出一段测试代码,同CLOSE_WAIT状态分析一文测试代码,main函数如下.测试后,会发现两边有大量的TIME_WAIT连接.int main(int argc, char* argv[]){    int sender = 0;    int ret    = 0;    int listen_sock = 0;    if(argc !=2){         printf("us

2010-03-08 16:37:00 1136

原创 CLOSE_WAIT状态分析

先给出如下C程序.在此代码中,我们故意屏蔽了发送端的close socket函数.运行后我们会发现发送端有大量的CLOSE_WAIT状态的连接,此时接收端是大量的FIN_WAIT_2状态的连接.main.c#include #include #include #include #include #include #include #include int socket_connect(

2010-03-08 14:38:00 1550

原创 crontab介绍

1.Cron的启动与关闭由于Cron是Linux的内置服务,可以用以下的方法启动.关闭这个服务:/sbin/service crond start           //启动服务/sbin/service crond stop            //关闭服务/sbin/service crond restart        //重启服务/sbin/service crond r

2010-01-31 20:14:00 7062

转载 The Google File System

本文是转载.http://www.codechina.org/doc/google/gfs-paper/,主要介绍Google的分布式文件系统 摘要我们设计并实现了Google文件系统,一个为数据中心的大规模分布应用设计的可伸缩的分布文件系统。Google文件系统虽然运行在廉价的普遍硬件上,但是可以提供容错能力,为大量客户机提供高性能的服务。我们的系统与许多以前的分布文件系统拥

2010-01-21 16:06:00 992

翻译 组通信之jgroups篇----Building Blocks

Building blocks are layered on top of channels. Most of them do not even need a channel, all they need is a class that implements interface Transport (channels do). This enables them to work on any ty

2010-01-21 10:54:00 3612

原创 存储基本知识

一.RAID和JBODRAID是"Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware,Software)结合成虚拟单台大容量的硬盘使用.其特色是N台硬盘同时读取速度加快及提供容错性Fault Tolerant, RAID是当成平时主要访问数据的存储速度问题(

2010-01-18 14:45:00 1216 1

原创 存储现状及趋势简介

目前磁盘存储市场上,存储分类根据服务器类型分为:封闭系统的存储和开放系统的存储,封闭系统主要指大型机,AS400等服务器,开放系统指基于包括Windows、UNIX、Linux等操作系统的服务器;开放系统的存储分为:内置存储和外挂存储;开放系统的外挂存储根据连接的方式分为:直连式存储(Direct-Attached Storage,简称DAS)和网络化存储(Fabric-Attached Stor

2010-01-16 12:34:00 2001

翻译 组通信之jgroups篇----JChannel

 In order to join a group and send messages, a process has to create a channel. A channel is like a socket. When a client connects to a channel, it gives the the name of the group it would like to

2010-01-14 22:10:00 6559

翻译 组通信之jgroups篇----Adress,View,Message,Event

3.3. AddressEach member of a group has an address, which uniquely identifies the member. The interface for such an address is Address, which requires concrete implementations to provide methods for co

2010-01-14 21:01:00 2105

翻译 组通信之jgroups篇----jgroups接口

3.2.1. MessageListenerContrary to the pull-style of channels, some building blocks (e.g. PullPushAdapter ) provide an event-like push-style message delivery model. In this case, the entity to be notif

2010-01-14 11:36:00 1910

翻译 组通信之jgroups篇----jgroups综述

 Group communication uses the terms group and member. Members are part of a group. In the more common terminology,a member is a node and a groups is a cluster. We use these words interchangeably.我

2010-01-11 21:59:00 3157

原创 组通信概述

组通信概述我们仅从应用角度大致介绍下jgroups和spread,因为这是目前使用较多的两个组件,而且他们也代表了两种不同的应用实现.有关其技术设计我们在后面会陆续的重点介绍.spread以daemon程序(C实现)运行,应用程序通过spread提供的接口函数(spread提供有c,java,perl等)来实现组通信和组维护,当然,如果你已经深入了解了spread源码,你也可以自己封装消息与s

2010-01-11 17:01:00 3181 1

原创 写在篇前

Java语言是07年毕业后到公司才开始学习并用来做项目的.期间大概有1年左右时间.后来又去做server程序和底层相关程序,转用C了.当时对java程序比较有兴趣,那时java语言比较火而且好多开源代码都用java实现的了.今天另开了java分类,其实目的和当年开始学习java语言一样,能读java源码,能实现java程序.博客以后主要是写一些学习过程中的东西.方向基本是j2se(不包括图形化

2010-01-08 08:45:00 689 1

原创 写在篇前

组通信是分布式系统基础之基础,这点是毋庸置疑的.2年前,我毕业后的第一个项目,就是基于组通信的一个文件备份项目,组通信功能使用了jgroups组件,2.5版本,当时基本算是通读了jgroups源码,尤其是其中的协议栈构建,组通信实现流程等应该说看的比较细.形成了几篇文档和jgroups组件本身存在的一些设计问题的总结文档(当时没写博客),后来自己重新完成了一个smartjgroups程序,并也

2010-01-06 20:47:00 1086 3

原创 ANSI C读书笔记系列之字符集篇----第四章 字节序

"endian"这个词出自>,小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开.我们一般将endian翻译成"字节序",将big endian和little endian称作"大端"和"小端".在计算机科学领域中,字节序是指存放多字节数据的字节的顺序,典型的情况是整数在内存中的存放方式和网络传输的传输顺序.既然我们在本篇介绍字节序,

2010-01-04 23:31:00 773

原创 ANSI C读书笔记系列之字符集篇----第三章 字符集和编码(II Unicode编码)

前面说过,每个国家都有一套自己的编码系统,每个国家的电脑就得装上支持自己那套编码的字符翻译系统.但你要显示其他国家的语言那估计就是乱码了,尤其在现今网络时代.大凡这时,历史总会有新的标准来解决这个问题.而且同时做这工作的有两群人.通用多八位编码字符集(Universal Multiple-Octet Coded Character Set)简称UCS,是ISO组织从1984年起就开始研究制定一

2010-01-02 17:59:00 715

原创 ANSI C读书笔记系列之字符集篇----第二章 字符集和编码(I ANSI编码)

这两个概念容易让人混淆,因为他们一般并未被严格区分.抛开编码讨论字符集是没有意义的,一如讨论编码一定是针对某一字符集而言的.所以上章在结尾我们不自觉的就说到了字符集与编码的一些基本概念.制定编码首先要确定字符集,并将字符集内的字符排序,然后和二进制数字对应起来.根据字符集内字符的多少,会确定用几个字节来编码. 每种编码都限定了一个明确的字符集合,叫做被编码过的字符集(Coded Charact

2010-01-01 23:05:00 1035

原创 ANSI C读书笔记系列之字符集篇----第一章 位 字节 字符

ANSI C 3.3节有关于位bit的定义: The unit of data storage in the execution environment large enough to hold an object that may have one of two values. It need not be possible to express the address of each in

2010-01-01 20:57:00 803

原创 GCC与G++

GCC和G++都是GNU的一个编译器.下面从编译和连接两个方面加以比较.编译:1.后缀为.c的,GCC把它当作是C程序,而G++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序2.在编译阶段,G++是调用GCC(按C++语法编译)的.因为C++对语法的要求更严格,所以,某一C文件用GCC编译能过,用G++则不一定通过.extern "C"与GCC还是G++并无关系,

2009-12-28 10:12:00 621

原创 C程序调用C++函数

这种需求应该就没C++程序调用C函数需求多了.目前的实现基本只有一类方法,即通过处理被调用的C++文件.文中给出的仍然是完整的,具体的,但又最基本最简单的实现,至于理论性的东西在网上很容易搜索的到.这里是针对调用C++的成员函数的实现. aa.hclass AA {     int i;    public:         int ThisIsTest(int a,

2009-12-23 16:02:00 1857

原创 C++程序调用C函数

这种需求很多,又因为C++和C是两种完全不同的编译链接处理方式,所以要稍加处理.总结大致有两大类实现方法.文中给出的是完整的,具体的,但又最基本最简单的实现,至于理论性的东西在网上很容易搜索的到. 一.通过处理被调用的C头文件a.h:#ifndef __A_H#define __A_H#ifdef __cplusplusextern "C" {#endifint Thi

2009-12-23 15:41:00 17010

空空如也

空空如也

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

TA关注的人

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