posts - 864, comments - 185, trackbacks - 1, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

02 2012 档案

摘要: Reference Book: <<Engineering long-lasting software>>http://saasbook.infoChapter One Engineering Software is Different from Engineering Hardwarehttps://www.coursera.org/saas/lecture/preview1.1-1.2 - ...阅读全文

posted @ 2012-02-19 19:49 feisky 阅读(149) | 评论 (0) 编辑 |

摘要: One really great feature of Xen is that there are several choices of toolstacks that can be used to manage it. Before the introdcution of libxenlight, there was a complicated and inefficient toolstack situation. The issue was that xend, xapi, libvirt, etc. all needed to manage many common low-level 阅读全文

posted @ 2012-02-18 13:43 feisky 阅读(93) | 评论 (0) 编辑 |

摘要: xmllint --format ugly.xml > pretty.xml阅读全文

posted @ 2012-02-15 20:56 feisky 阅读(66) | 评论 (0) 编辑 |

摘要: 优化 Unix经验告诉我们最主要的就是如何知道不去优化,最强大的优化工具就是不做优化(摩尔定律)。如果仅仅是为了减少资源使用的一个常数部分而优化是不值得的,更明智的做法是把高次的指数级降下来。善用profiler估量程序,并谨记工具误差,降低误差影响的一个方法是在相同负载下多次profiler。最有效的代码优化方法是保持代码短小简单,永远不要将核心数据结构和时间关键循环抛出缓存。性能往往受限于IO(尤其是网络程序),经验法则是尽可能降低时延:对可以共享启动开销的失误进行批处理;允许事务重叠;缓存。工具编辑器:vi、emacs代码生成器:yacc、lex自动化编译:make版本控制:VCS运行期阅读全文

posted @ 2012-02-14 22:59 feisky 阅读(89) | 评论 (0) 编辑 |

摘要: We're happy to announce XenMaster, which has the ambitious goalto become the de facto frontend for Xen with XCP.We've had the opportunity to present our project to some of the Xen/XCP developers and now it's time to announce the project to a larger public.XenMaster, in short, is a HTML5 阅读全文

posted @ 2012-02-12 14:09 feisky 阅读(97) | 评论 (0) 编辑 |

摘要: 最小立异原则如有可能,尽量允许用户将接口功能委派为熟悉的程序来完成不能委派时,那就效仿接口设计评估 简洁:一个事务处理需要的动作时间及复杂度需要较低的上限 表现力: 接口可以触发相当广泛的行为 易用: 易用性同要求用户需要记忆的东西成反比 透明: 用户在使用接口的时候,几乎没有什么问题、数据或程序的相关状态需要记忆 脚本化能力:很容易被其他程序调用CLI和可视接口之间权衡 CLI:丰富的表现力,高度的脚本化能力,易用性低(需要费劲的记忆),透明度通常也较低 GUI:易用,不能脚本化,处理规模大的问题需要机械性重复操作 长远来看,为了既能服务一般用户,又能服...阅读全文

posted @ 2012-02-12 13:18 feisky 阅读(234) | 评论 (0) 编辑 |

摘要: 什么应是可配置的Unix提倡建立机制而把策略决定权留给用户,往往会导致选项过多。不应该配置:能够可靠自动检测的东西;用户不应该看到优化开关;能用脚本包装器或简单管道完成的任务,就不要使用配置开关实现。配置放在哪里/etc目录:管理员设置的系统级选项支持#开头的注释不去别隐匿的空白符多个连续的空行视为单个空行词法上把文件视作简单的用空白符分割的标记序列,或多行标记,但支持以字符串语法对内嵌空白符的...阅读全文

posted @ 2012-02-07 21:58 feisky 阅读(167) | 评论 (0) 编辑 |

摘要: windows下很多人都使用source insight 编写和查看代码。linux下可以使用VIM,刚开始会觉得VIM像windows下的记事本,而如果使用得当,它并不比source insight 逊色。 在这里,我会尽我所能细致地讲清楚如何把vim变成source insight, 然而你仍然需要积极地思考,并且必须自己去摸索一些东西。 为了避免过于罗嗦,我把基础的部分放在后面,如果你越看越觉得太简单了,那么本文并不适合你;如果看完前面的仍有疑问或者看不懂前面说的是什么东西,不用担心,后面会有一些必备的知识介绍。一、用好系统自带软件ctags大部分的unix系统都有ctags软件,它..阅读全文

posted @ 2012-02-07 21:05 feisky 阅读(1227) | 评论 (1) 编辑 |

摘要: 安装工具# yum install yum-utils设置源:[base-src]name=CentOS-5.4 - Base src - baseurl=http://vault.centos.org/5.4/os/SRPMS/#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=osgpgcheck=1g...阅读全文

posted @ 2012-02-06 21:40 feisky 阅读(223) | 评论 (0) 编辑 |

摘要: 安装Java JDK:到sun网站上下载jdkchmod +x jdk-6u30-linux-x64.bin ./jdk-6u30-linux-x64.bin下载Hadoopwget http://labs.renren.com/apache-mirror/hadoop/common/hadoop-0.20.205.0/hadoop-0.20.205.0.tar.gz tar zxvf ha...阅读全文

posted @ 2012-02-05 21:33 feisky 阅读(349) | 评论 (0) 编辑 |

摘要: Unix下有很强大的专用代码生成器,如用yacc/lex来构建语法分析器和词法分析器、用autoconf或automake生成makefile等。这些工具具有很强大的功能,但还有一些简单轻巧的代码生成方式,下面是《Unix编程艺术》中的两个例子。生成ASCII显示的代码如果在程序中直接通过初始化器来写出所有行,会出现对齐、每行很难保证79字符的问题。Ascii源码的解决方法是通过脚本生成这部分...阅读全文

posted @ 2012-02-05 15:32 feisky 阅读(149) | 评论 (0) 编辑 |

摘要: 首先安装dpkg-dev: apt-get install dpkg-dev设置源,将原来的源复制,但把deb改为deb-src:#vim /etc/apt/sources.listdeb http://mirrors.163.com/ubuntu/ lucid main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ lucid-security main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ lucid-updat阅读全文

posted @ 2012-02-05 14:43 feisky 阅读(152) | 评论 (0) 编辑 |

摘要: 本文示例代码采用的是c语言。之前介绍过数据驱动编程《什么是数据驱动编程》。里面介绍了一个简单的数据驱动手法。今天更进一步,介绍一个稍微复杂,更加实用的一点手法——表驱动法。关于表驱动法,在《unix编程艺术》中有提到,更详细的描述可以看一下《代码大全》,有一章专门进行描述(大概是第八章)。简单的表驱动:《什么是数据驱动编程》中有一个代码示例。它其实也可以看做是一种表驱动手法,只不过这个表相对比较简单,它在收到消息后,根据消息类型确定使用调用什么函数进行处理。复杂一点的表驱动:考虑一个消息(事件)驱动的系统,系统的某一模块需要和其他的几个模块进行通信。它收到消息后,需要根据消息的发送方,消息的类阅读全文

posted @ 2012-02-04 21:19 feisky 阅读(68) | 评论 (0) 编辑 |

摘要: 前言:最近在学习《Unix编程艺术》。以前粗略的翻过,以为是介绍unix工具的。现在认真的看了下,原来是介绍设计原则的。它的核心就是第一章介绍的unix的哲学以及17个设计原则,而后面的内容就是围绕它来展开的。以前说过,要学习适合自己的资料,而判断是否适合的一个方法就是看你是否能够读得下去。我对这本书有一种相见恨晚的感觉。推荐有4~6年工作经验的朋友可以读一下。正题:作者在介绍Unix设计原则时,其中有一条为“表示原则:把知识叠入数据以求逻辑质朴而健壮”。结合之前自己的一些经验,我对这个原则很有共鸣,所以先学习了数据驱动编程相关的内容,这里和大家分享出来和大家一起讨论。数据驱动编程的核心数据驱阅读全文

posted @ 2012-02-04 21:16 feisky 阅读(78) | 评论 (0) 编辑 |

摘要: #!/usr/bin/pythonimportsocketimportstructimportfcntldefgetip(ethname):s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)returnsocket.inet_ntoa(fcntl.ioctl(s.fileno(),0X8915,struct.pack('256s',ethname[:15]))[20:24])if__name__=='__main__':printgetip('eth0')阅读全文

posted @ 2012-02-04 21:00 feisky 阅读(310) | 评论 (0) 编辑 |

摘要: 微型语言:小型、专门应用领域特制、大量减少程序行数的语言。1. 使用微型语言把编程问题的规格说明提升一个层次,更具表达力,更紧凑;2. 规格说明文件越来越像微型语言。理解语言分类法案例分析sng: 透明,结构化的数据文件使得相应的编辑、转换和生成工具无需要知道其他方的设计假定。 regexp:Glob表达式,基本正则表达式,扩展正则表达式,Perl正则表达式。正则表达式是微型语言能够多么简练的极端例子。 Glade:X,GTK(和Qt是两个流行开源X工具包),说明GUI窗体及属性、代码生成。 m4:扩展字符串,键值对。 XSLT:复杂,但是仍然是微语言:有限的分类,不包含数组和数据结构;有限.阅读全文

posted @ 2012-02-04 20:09 feisky 阅读(88) | 评论 (0) 编辑 |

摘要: IntroductionToMiniosApplicationsMini-OS现有应用介绍Mini-OS是跟随Xen hypervisor发布的一款小内核操作系统,目前有一些基于Mini-OS的应用:HP实验室在2007年发布了基于Mini-OS的Xen Library OS;2008年剑桥大学进一步完善了HP的工作,完成了HVM stubdom并置于Xen源码树中;伊利诺伊大学芝加哥分校(UIC)正致力于开发一款基于Mini-OS的小内核系统—Ethos。Mini-OS 启动简介arch_init()trap_init()init_mm()Xen Library OSXen Library 阅读全文

posted @ 2012-02-04 16:11 feisky 阅读(205) | 评论 (0) 编辑 |

摘要: 首先分区:# fdisk /dev/sdaThe number of cylinders for this disk is set to 60801.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs阅读全文

posted @ 2012-02-02 18:17 feisky 阅读(54) | 评论 (0) 编辑 |

无觅相关文章插件,快速提升流量