自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 博客搬家至 utensil.github.io

博客搬家至  http://utensil.github.io/tech/ 本博客不再更新维护。

2013-04-30 11:00:08 133

Eclipse之舒适化打造(黑底TextMate配色方案、Jodeclipse等)

一直不喜欢Java,进公司却立刻要接手Java的项目,别扭归别扭,但一直知道Eclipse给Java打造了很好的编程体验,做Java程序员,会被Eclipse照顾得很好:从模板到自动完成,从quick-fix到代码间超链接跳跃,从代码自动生成到自动重构... 不过它离完全适合于我的舒适还有一段距离,所以我一边善其事一边利器,在这里把自己的打造过程和大家分享: 我喜欢黑底的配色方案,...

2009-08-11 12:47:36 264

文档与团队

Utensil按: 此文是我在renny的博客实习回来,说说心理话的回复,讲了个人对文档与团队的一点粗浅理解。现在放到自己的博客里来存个照。 文档 关于文档的重要性,我说一个自己的经历:之前为某外国开源类库写一个实用工具,有两个core developerreview,往来都是e-mail沟通,但基本上是一个人写的,但在核心功能实现之后,我由于时间原因不得不搁置下来,我...

2009-07-22 10:15:21 111

Linux 2.6内核笔记【内核同步】

 Utensil按:这应该是最实用,最接近日常编程的一章了。 同步机制用于避免对共享数据的不安全访问而导致的数据崩溃。下面按从轻到重讲述内核同步机制。 最好的同步 同步是一件烦人、容易出错,最重要的是拖慢并行的事情,所以最好的同步就是不用同步——这不是废话,而是在内核设计时的重要考虑。对不同的任务,量体裁衣,以不同的机制来处理;对每种机制,加以不同程度的限制,从而不同程...

2009-06-19 01:06:36 103

Linux 2.6内核笔记【中断、异常、抢占内核】

2009.6.18更新:参考http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-03/4562.html ,查证LXR,重新诠释PREEMPT_ACTIVE标志。 中断信号分类 中断信号是一个统称,统称那些改变CPU指令执行序列的事件。但它又分为两种: 一种是同步的,没那么突然,因为它只在一个指令的执行终止之后才发生...

2009-06-17 10:42:22 157

Linux 2.6内核笔记【Process-3:fork、内核进程】

Utensil按: 最后的几篇Linux内核笔记实在是太难产了,这中途读完了APUE,并以JavaEye闲聊的形式做了无数细小的笔记(不日将整理为博客);也第3次(还是第4次?)阅读了《ACE程序员指南》,不过这一次终于做下了笔记;也看完了Programming Erlang,用Erlang来写基于UDP的TCP的ErlyUbt已经渐渐现出眉目,也已push到了GitHub上面。可惜就是这...

2009-06-16 16:37:00 174

原创 RAII和垃圾收集

Utensil按: 此文转自CSDN文档中心,作者是Elminste。看了这篇文章才知道,之前我称之为“像栈一样令人放心的析构函数”并非常喜爱的C++特性,原来名为RAII(资源获取即初始化, Resource Acquisition Is Initialization),而且发现原来它和GC并不是我想象的那么水火不容。这篇文章,在我看来,进一步说明了Java因为GC而对面向对象的思想所进行的...

2009-05-14 20:36:27 88

Linux 2.6内核笔记【Process-2:切换】

在看Linux内核的时候发现,CPU自己认得(或者说isexpecting)很多struct,很多时候内核要做的事情是在内存里准备好这些struct里CPU需要的数据,以供CPU完成相应的任务。比如寻址中的paging部分,内核只需要把page directory中的数据准备好,并把pagedirectory的地址放入cr3,CPU自己就能根据pagedirectory中的数据进行寻址...

2009-05-09 18:31:28 209

Linux 2.6内核笔记【Process-1】

终于挣脱了《Understanding the Linux Kernel》的Process一章。中文版的翻译低级错误太多,所以只好继续看影印版。 简介部分,除了通常我们对Process的认识,Linux中值得一提的是:笨重的不分青红皂白把父进程整个地址空间都复制过来的fork()采用了传说中的Copy-on-Write技术;还有就是2.6启用了lightweight process来支持n...

2009-05-01 14:15:38 246

wxRuby尝鲜

更新:终于成功弄到显示行号并自适应宽度了~ wxRuby最好玩的地方是它对wxWidgets多加了一层糖衣的语法。 安装了 gem install wxruby 之后,还要安装 gem install wx_sugar 这样子,我们不仅具有了一些:param_name => value这样的糖衣,可以使用attr_*族来暴露实例变量,还有了用d...

2009-04-22 00:19:36 249

ofstream与ate的故事

很久之前,我和Swalky在写HuffmanTree压缩的时候,遇到了一个问题:我们想在一个已经写入了一些内容的文件中部(或头部)写一些内容(用于修改文件的一些meta信息),结果发现总是不行。如果用ofstream的默认构造函数,文件原有内容就不会保留下来,如果用了ios::app,无论怎么用seekp来定位,所写的内容都会跟在文件原有内容的最后面。怎么办呢?本着RTFM的心态,...

2009-04-21 21:26:27 113

《代码之美》简单笔记

《代码之美》一书的简单笔记。附件是网上搜索来的《代码之美》英文版电子书。 章简述所用语言备注推荐程度推荐类型1正则表达式的迷你实现C锻炼写一组条件判断++算法2Subversion的API架构C差异(diff/delta)的高效表达++系统3测试quicksort效率C通过删除...

2009-04-21 10:53:09 95

Linux 2.6内核笔记【内存管理】

4月14日 很多硬件的功能,物尽其用却未必好过软实现,Linux出于可移植性及其它原因,常常选择不去过分使用硬件特性。比如 Linux只使用四个segment,分别是__USER_CS、__USER_DS、__KERNEL_CS、__KERNEL_DS,因为Paging可以完成segmentation的工作,而且可以完成的更好。而且这样简化了很多,统一了逻辑地址和线性地址。而TSS...

2009-04-15 23:47:42 121

原创 第一帖 安家JavaEye

实在再也忍受不了CSDN奇慢无比的访问速度了。一个总是写不上去的博客就已经够扫兴了,偏偏它还不断喜欢调整编辑器和CSS,不断的使我的博客走形的越来越厉害,无论怎么修复都不行。最近它终于切换到我最喜欢的TinyMCE编辑器,可是居然懒惰到了甚至不修改例子中的按钮排布的地步,害得我总得在自己本地的TinyMCE上写好了才往上贴,可是三天都发不上去一个帖子,我实在没有这样的耐性。而且JavaEye的自动...

2009-04-14 21:16:01 123

RailsCast 笔记[不完整]

走过了弯路,看过了那些粗制滥造、过时、或者至少不够有深度的书之后,才知道:Ruby for Rails+The RubyProgramming Language+Agile Web Development withRails+RailsCast这一个套装,才是学习Ruby onRails最快最好的途径。其中RailsCast是免费的视频,目前已有152集。它的最大价值是让你直观地感觉到...

2009-03-14 08:49:00 329

心得:Web 2.0站点如何提高可用性与性能

看了一些书和一些网站之后,关于Web 2.0站点如何提高可用性与性能的一点心得。基本上结合了《高性能网站》与Hijax的思路。可以参考的一些网址:《高性能网站建设指南》读后随感http://www.dbanotes.net/web/high_performance_web_site.htmlYahoo!网站性能最佳体验的34条黄金守则——JavaScript和CSShttp:/...

2009-01-18 20:43:00 89

享受Code::Blocks编辑快感的几个关键

感谢Loaden的补充。此文是对帖子http://wxforum.shadonet.com/viewtopic.php?t=22128 的总结和整理,按个人喜好做了取舍和重新排序。说明:1)以下需要设置的地方均在Settings->Editor...弹出的对话框中。2)不少命令都可针对当前行或选中的代码块,下文简称当前行或选中块。==日常编辑== • 按住Ctrl滚滚轮,...

2008-12-24 09:05:00 78

Objective-C语法快速参考

Utensil按:对wxWidgets的Mac Port一直相当不满意。无奈中间隔着Objective-C这一层,今天逛到这篇文章,赶紧转贴过来,扫个最初的盲先。原文来自http://www.cocoachina.com/Objective-C语法快速参考作者: Cocoa China 【最热的Mac, iPhone专业开发论坛】【本文永久地址】10Apr...

2008-12-23 22:20:00 72

隐性类型转换的突发奇想与失望

在C++中,如果为自定义类型(class)定义了类型转换操作符或没有explicit关键字修饰的单参数构造函数,在需要的时候,编译器会自动执行隐式类型转换。这是一个常识。隐式类型转换是否需要的规则定义于编译器内部,难以窥见,但就我理解,“需要”的意思之一应该是,如果不进行隐式类型转换就找不到相应的重载函数,进行了就能找到的话,编译器理应进行隐式类型转换。那天我看“委托”这个模式的时候,突然突发...

2008-12-22 21:46:00 73

Ruby On Rails之继续乾坤大挪移

本文为原创。转载请注明:作者:Utensil博客:http://utensil.iteye.com/邮箱:[email protected] 最终买了《Practical Rails Projects》。原来那本《征服Ruby On Rails》遍地开花,什么都讲一点,但比较浅,难以深入体会。比如原来只能体会一下ROR的CRUD的快速开发scaf...

2008-12-03 11:18:00 72

POSIX无缓冲文件I/O及可变参数小玩

这段以前写的测试程序包含了对POSIX无缓冲文件I/O、文件加解锁、进程分叉、可变参数的综合运用。没什么技术含量,纯粹记述一下,不想有一天弄丢了。C真是又小巧又灵活,在语言的犄角旮旯还是存在一些之前完全想不到会有的特性,呵呵~不过,现在可能会从事的这个工作是不是只能用C不能用C++呢?难道真的得告别自己的最爱?//posix#include <unistd.h>#i...

2008-10-22 20:04:00 86

编程的未来

有一句话,我觉得对程序员是至理名言:编程未来的趋势是库,动态的脚本语言和虚拟机。这句话我一听就觉得很对,可是对它的领会(尤其是后半句话)却花了很久,现在也还在半路上。我一直很喜欢C++的一个基本的设计思想,就是有些事情是语言该做的,更多的事情却应该交给库去实现。正是这种思想,使得C++可以应用于各种领域。语言应该给程序员足够的自由,从最底到最高层,从最机器的层面到最贴近现实的层面,然后,用这种...

2008-10-01 08:57:00 84

一个用sed给xml的标签编号的Bash脚本

记录一下这个小脚本,试探了很久才研究出这个方法来给我的一个xml文件编号。这个文件最初是从博客上直接复制粘贴下来的,根据其格式先对其html tag替换做好标记,然后用一句sed转换成xml的:cat susan.txt|sed -e 's/title\(.*\)$/<\/content>\r\n<\/blog>\r\n<blog>\r\n<t...

2008-09-17 13:24:00 98

最后的暑假,疯狂的Fedora

大学时代的最后一个暑假了,感伤...不过这个暑假过得相当充实,除了实习了一个月,做了无数环境监测实验并完成《计算机网络——A Top-Down Approach Featuring the Internet》一书的一整本读书笔记之外,还通过在家的实验,在Fedora 8建立起了新的生活,至此,彻底抛弃Windows Vista,仅仅保留XP意思意思。在家那么多天,我没有离开过Fedora,也没有需...

2008-09-05 23:44:00 68

[翻译]Boost Graph库简介

转载请注明:作者:Utensil博客:http://utensil.iteye.com/邮箱:[email protected]本章为Boost Graph Library的在线文档的第一章(参见http://www.boost.org/doc/libs/1_36_0/libs/graph/doc/table_of_contents.html)。前段时间...

2008-08-18 17:48:00 194

如何将libnet移植到MinGW

本文为原创。转载请注明:作者:Utensil博客:http://utensil.iteye.com/邮箱:[email protected] 鉴于网上存在两个libnet,本文中所谓libnet是指位于http://www.packetfactory.net/libnet/的The Libnet Packet Construction Library。...

2008-08-03 18:18:00 179

考完试后

终于考完试了!!!更可喜的是在考试结束之前,我已经把所有的课程设计、所有的作业做完交上去了,当其他人还在忙课程设计的时候,我已经玩完一天回来了。 列一下一些紧迫的任务: 前段时间以Thorqq的华为802.1x认证程序为蓝本,进行移植工作。主要是消除Dot1x类对libpcap以外的东西的依赖(对Windows API、MFC或Winpcap的依赖),修改了一些命名方式。消除依赖的...

2008-07-09 22:46:44 78

Google Code Jam之Always Turn Left之我的解答

由于时间的限制,程序有些地方的容错性不够,以//!!标出。运行成功,经Google Code Jam鉴定为正确。 题目为: Always Turn LeftProblemYou find yourself standing outside of a perfect maze. A maze is defined as "perfect" if it meet...

2008-06-28 23:39:00 143

Google Code Jam之Alien Numbers之我的解答

由于时间的限制,程序有些地方的容错性不够,以//!!标出。运行成功,经Google Code Jam鉴定为正确。题目为: Alien NumbersProblemThe decimal numeral system is composed of ten digits, which werepresent as "0123456789" (the digi...

2008-06-24 23:35:00 147

Hooray

亲爱的B今天终于有空了,把我的前两个补丁应用上去了,高兴坏了。 大家可以到 http://docs.wxwidgets.org/trunk/page_samples.html看改进过后的sample介绍,主要的改进包括: 1)把所有trunk中现存的例子都(至少简短地)介绍了一遍;2)把例子的标题改成更具可读性的;3)在每个例子的介绍后面,注明例子所在文件夹;4)对一些需要...

2008-06-21 20:26:00 72

为什么

为什么有些事情会被拖延?为什么有些事情会被忽视?为什么有些时候有些事情让你感觉到石沉大海? 更重要的一个为什么是,为什么我怎么想也想不明白原因? F去考试了,所以我把补丁改发给B,可是B没有F那种先把补丁写到SVN上面,等有时间再修订的习惯,这令我的几千行补丁就这样等着B的有时间。奇怪的是B却有时间看比我后发给他的补丁,而应用我的补丁是最没有危险性的事情,为什么他不做?为什么在上一...

2008-06-14 16:36:06 68

近来看和注意到的一些书

在读:侯捷《SGI STL源码剖析》:喜欢它对allocator和sub-allocation的介绍,对traits的介绍,对deque、heap、priority-queue的介绍,痛苦的是,始终记不清红黑树。LPI in a nutshell (level 1)影印版:读英文的Oreilly,比读中文舒服多了,啃剩最后一章却不再怎么看了。但是好像影印版的版本比中译本还早,汗精通正则...

2008-05-25 00:43:00 89

驰骋wxWidgets系列之<简介+轻装上阵跨平台>

Utensil按:由于原文太长,这里只贴出简介和当初的按语,请下载附件的pdf版阅读。如想在网上查看,请访问我的CSDN博客。由于时间、精力和兴趣转移,全系列远未完成,现在只有第一章和不完整的第二章。wxWidgets简介Utensil  2008 - 04 - 27按:上个星期做了很多事,包括实现了文件传输、实现了透明蒙版(用于选定要截屏的控件)、开始了q到r的revision,还有...

2008-05-10 23:29:33 77

近来情况以及下一周的写作计划

最近,关于wxWidgets,主要在忙于帮wxWidgets开发团队做即将出炉的wxWidgets2.9.0的文档的revision,在这一版里,他们改用了Doxygen替代原先的LaTeX,他们写了一个脚本来将原来的LaTeX文档转成Doxygen,但转换过程中必然有这样那样的缺漏,所以需要人工进行revision,并对旧的文档作一次全新的重新审视和改进。这里工作量非常巨大,我前两天刚完成o到p...

2008-04-13 17:39:00 63

wxWidgets官方论坛中文版块开张!欢迎光临!

大家好! wxWidgets官方论坛(http://forums.wxwidgets.org/ )最近增设了中文版块,同时增设的还有法语和俄语版块。 如果您很早就想到官方论坛上与各国高手在同一个平台上交流,可是却迷失在英文的海洋里,那么,中文版块的开设对您绝对是一个好消息。 您可以在 http://forums.wxwidgets.org/viewforum.php?f=3...

2008-03-04 13:39:00 144

寒假小记

这个寒假又几乎完全被用来研究编程了,这已经成为一件最好的娱乐了。 寒假看了SICP,实在为之惊叹,这真的是一本好书,之前从未想象用Scheme竟然可以实现那么多东西……我完全爱上Scheme了,它实在是极好的一种表达思想的语言。 它如此简单,而SICP展现了人类的智慧是如何让这么简单的语句,做出最复杂的事情。看了之后,对编程的许多概念都有了全新的理解。 寒假的另外一方面收获来自用w...

2008-02-18 09:42:00 87

wxWidgets动态事件表爱好者备查手册

 wxWidgets动态事件表爱好者备查手册作者:皿(http://blog.csdn.net/utensil/)   使用动态事件映射方法的原因,可能是你想在程序运行的不同时刻使用不同的映射关系,或者因为你使用的那种语言(例如python)不支持静态映射,或者仅仅是因为你更喜欢动态映射。因为动态映射的方法可以使你更精确的控制事件表的细节,你甚至可以单独的将事件表中的某一个条目...

2008-01-03 00:13:00 119

在VC++2005中使用Windows Media Play ActiveX控件

VC++2005有许多东西变了,比如ActiveX控件的添加和控制——仅仅为了添加一个Windows Media Player控件,我就弄得头晕转向,按老办法做行不通不说,自己摸索了半天+上网搜索+去书店翻书都没有彻底。幸亏找到了这篇文章,才得以解决。感谢touzani大侠(http://blog.csdn.net/touzani/)!皿原文如下: 以ActiveX...

2007-12-26 20:29:00 101

c++资源之不完全导引

撰文/曾毅陶文 转自:http://www.ilovesoft.com/groundlee/blogrss2.asp?cateID=2声明:.本文2004年5月首发于《CSDN开发高手》,版权归该杂志与《程序员》杂志社所有。杂志限于篇幅部分内容有所删节,此处版本为相对完整版本。.本文为介绍性文章,会随笔者学习C++语言不断更新。---------------------...

2007-12-26 20:05:00 161

wx网罗系列之汇总

Utensil按:原先在CSDN所转的关于wxWidgets的帖子将从JavaEye这边全部删除,如想获得原先的转贴(格式整理过的哦——微弱的人类无差别劳动),请下载附件,其中不仅包含了wx网罗系列,还包含了原先CSDN上的博客直到《享受Code::Blocks编辑快感的几个关键》的内容。请注意:由于大部分这些转帖都写于久远的过去,因此阅读时要牢记“尽信书不如无书”的道理。总声明 发布时...

2007-12-19 00:45:00 80

空空如也

空空如也

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

TA关注的人

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