twig的博客

善待笔记本,启用intel集显的节能模式

发表于 2011/11/16 由 microcai

在 XP 下用的时候,用计量插座,空闲功耗大概在 13W ~ 14W 之间。

在 Gentoo 下用的时候,空闲功耗也在 20W 之上。

很头痛。

CPU 的节能已经打开,一直在 800M 最低频率运行呢!

恩,应该是 GPU 费电啊~~~ 有什么办法能让 intel 的 GPU 工作在节能模式呢?

答案是添加隐含的内核引导参数

i915.lvds_downclock=1 i915.i915_enable_fbc=1 i915.i915_enable_rc6=1

神奇的参数。

现在 Gentoo 空闲下来的时候,笔记本也是 13W ~ 14W 的功耗了。哦也 ~~ CPU 也没那么热了。

转自菜菜博士:http://microcai.gsalex.net/2011/11/enable-powersaving-on-intel-gpu/

程序员技术练级攻略

程序员技术练级攻略

2011年7月18日

滚动校验用于程序盗用检查

使用滚动校验,以一个块的校验码开始,计算offset+1+block校验码,完成特征块的校验码对比,找出相同的块,如果大量校验块相同,该执行程序非常可能盗用了同样的代码。

Windows文件系统过滤管理器之 微过滤器驱动开发指南

0.译者序

对我来说,中文永远是最美,最简洁,最精确和最高雅的文字。

本文翻译仅仅用做交流学习。我不打算保留任何版权或者承担任何责任。不要引用到赢利出版物中给您带来版权官司。本文的翻译者是楚狂人,如果有任何问题,你可以通过邮箱MFC_Tan_Wen@163.com,或者是QQ16191935,或者是MSN walled_river@hotmail.com与我交流。

我翻译此文出于对文件系统技术的兴趣。这就是新的文件系统过滤接口。其实也不算什么新的东西,微软开发了另一个“旧模型的”过滤驱动,称之为过滤管理器(Filter Manager)。从而提供了一系列新的接口来让你开发新的过滤器。确实这套接口变简单清晰了。你至少避免了包含无数个信息的IRP,避免了请求在各个部件中循环的发来发去,一个分发例程中处理无数中情况,一不小心系统崩溃。我不知道花了多少时间才弄明白一个简单的缓冲读请求从用户到过滤到文件系统和缓冲管理器,虚拟内存管理器之间的关系!现在你也许不需要再管他们了,仅仅做好自己的过滤工作就可以。

ObRegisterCallbacks返回0xC0000022(拒绝访问)解决方案

ObRegisterCallbacks这个函数是在Vista sp1之后的版本中添加的,可用来监控系统中对进线程句柄的操作,如打开进程、复制线程句柄等。

WinDBG技巧

WinDBG技巧:
查看当前进程所有句柄:

!handle

查看ZwOpenKey的第一个参数内容:

!handle rcx

查看句柄详细信息:

!handle 0x8 f

查看符号表:

dt -v nt!*OBJ*

查看指针数组结构体:
?? ((nt!_DRIVER_OBJECT**) 0xfffffa8006f7e000)[3]

x64和x86的寄存器、参数调用变化,参数调用规则约定:
通用 x64 寄存器的名称以 R 开头,如 RAX、RBX 等等。这是针对 32 位 x86 寄存器的基于 E 的旧命名方案的发展演化。就像过去一样,16 位 AX 寄存器变为 32 位 EAX,16 位 BX 变为 32 位 EBX,以此类推。如果从 32 位版本转换,所有 E 寄存器都会变为其 64 位形态的 R 寄存器。因此,RAX 是 EAX 的继承者,RBX 超越 EBX,RSI 取代 ESI,以此类推。

win32、win64 驱动入口断点定位

windbg命令:

sxe ld

启用模块加载拦截,核心加载模块时中断。

lm t n

确认新加载的是要跟踪的模块。
用CFF_Explorer查找Entry:

File->Optional Header->AddressOfEntryPoint

假设模块modename找到的是0000AB12
下断点:

bp modename+0xAB12

F5跳到断点。

Intel系列CPU指令速查手册

指令名称 指令形式 机器码 标志位
(设置/测试)
说    明 应用举例
ES: ES: 26   ES段跨越前缀  
CS: CS: 2E   CS段跨越前缀

从串口、并口到网卡 双机对联线缆指南

一、制作两台电脑之间的串并口通讯电缆

  在一些特定的场合下,我们想在两台PC之间进行通讯,以此来实现文件数据传输及软硬件资源共享。其前提是既没有网络环境,也没有Modem,甚至两台电脑连网卡也没装;当然PC间的距离很近(最长不超过20米)。这种想法能实现吗?

  答案是肯定的,而且不止一种。我们可以考虑通过并口或Com串口对两台PC直连实现点对点通讯。这里的关键是解决通讯线问题。一台普通PC,多数都具有两个9芯或25芯串口(COM1,COM2)和一个25芯并口的标配。以下分别介绍串行和并行通讯电缆的制作原理及方法(数字表示接头的引脚号,这些引脚号码在串并口上都有标注),需要补充的是,有经验的DIY总是善于"废旧利用",比如设法利用废旧鼠标的通讯线以及闲置的旧打印电缆;并准备1个万用表用于测试制作的通讯电缆是否正确可靠。

  (一)串行通讯电缆的制作

  无论是9孔插头,还是25孔插头,其串行通讯电缆连接时都要遵循下列对接关系:

  SG←→SG TXD←→RXD RXD←→TXD RTS←→CTS

  CTS←→RTS DTR←→DSR DSR←→DTR  根据上述对接关系,就可以非常方便地连接串行通讯电缆。这里顺便介绍一下上述各引脚所代表的含义:

windows 7 x64 SSDT 地址

Xuefeng Chang(welfear@gmail.com) 2009
Windows 7 x64版本相比于以前版本使用了不同的数据结构和不同的地址。
根据在ReactOS中找到的KTHREAD信息中,包含了SSDT表的信息。

SSDT in KTHREAD
typedef struct _KTHREAD {
DISPATCHER_HEADER Header;
LIST_ENTRY MutantListHead;
PVOID InitialStack;
PVOID StackLimit;
#if defined(_IA64_)
PVOID InitialBStore;
PVOID BStoreLimit;
#endif
PVOID Teb;
PVOID TlsArray;
PVOID KernelStack;
#if defined(_IA64_)

软件项目之预算评估三把刀

   
一、使用完善的评估方法的重要性
    一般情况下,软件项目会受到四种因素的控制,它们分别是时间、需求、资源(包括人员、硬件条件以及资金)和风险。这些因素的任何意料之外的变化都会对我们的项目产生影响。因此,做好时间和项目资源需求的评估是非常必要的。如果过低估计项目预算,会由于缺乏项目实施时间、资金、硬件条件或是没有足够的人来完成等原因导致非常严重的后果。但如果过高地估计项目需求预算,也会因为成本太高使企业付出很大的代价,最后这个项目可能会被搁浅,就算项目被批准实施,也会由于此项目占用大量的资源而使其它的项目由于得不到足够的资源来呈现“饥饿”状态。
    从我的经验来看,对一个项目做时间和所需资源的预算评估通常对于大多数团队和项目经理是一个非常大的挑战。形成挑战的原因有很多,如它们对预算评估没有足够的经验、对评估技术或所涉及的商业领域缺乏了解,需求不清楚等。尽管负责项目预算评估的经理已经尝试了使用最好的方法来处理需求及各方的关系问题,但由于以上的原因,不可避免地导至整个团队由于评估失误而超过预算,或是项目失败。还有另外一种评估预算的方法,就是使用高度乐观的方法进行评估,而忽略我们需要处理的具体项目。那么我们到底该怎么做呢?
   
二、实用的预算评估技术

服装管理软件风险评估方法:定性和定量

专门针对服装管理软件项目的风险评估方法论述的文章在学术界还是比较少。而在软件开发的项目中,则有大量的文献提出了丰富的风险评估方法。主要分定性和定量的两类,使用到的定性方法有:头脑风暴法,名义小组评述法(NGT),德尔菲方法,层次分析法等。这类定性的方法主要是通过研究专家或是项目的关键人物对风险的主观评价,以此总结得出整个服装管理软件项目的风险因素的重要程度排序。

定量的对服装管理软件风险进行评估的方法有:统计学模型,成本因素法,CPN方法,决策树法,故障树的方法,影响图法,人工神经网络的方法,基于规则的系统,灵敏性分析法,Monte Carlo模拟法,ID3算法以及LA—LEARN算法。另外,模糊学和粗糙集模型也被用到了具体的风险评估中。

主要的几种方法的简要介绍如下。

1)统计学的模型就是最早用来计算风险大小的方法。它通过估计软件项目中涉及风险因素的发生频率和风险发生时可能造成的平均损失的乘机来表示风险的重要程度。统计学的方法是目前使用最多、最广泛的风险评估方法。并且在后来被发展成QRA和QRAs的计算机软件来支持实际的风险管理。因为这种方法容易理解而且很好操作。但是由于估计风险因素发生的概率和造成的损失往往非常困难,所以评估服装管理软件的效果不佳。

AMC软件项目评估方法

作者:周文,安盛企业管理顾问公司 文章来源:精品培训网
软件项目的规模估计历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的规模估计往往和实际情况相差甚远。 因此,估计错误已被列入软件项目失败的四大原因之一。
软件工程师经常会被问到,编一个什么什么样的软件需要多长时间、多少钱。面对这个问题,有不少人很犯难,因为,第一用户的需求太不具体,第二,自己缺乏一个科学的估计方法。下面是几种软件项目规模的估计方法。
概念介绍
先介绍一个衡量软件项目规模最常用的概念--LOC(Line of Code),LOC指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等。一代码行(1LOC)的价值和人月均代码行数可以体现一个软件生产组织的生产能力。组织可以根据对历史项目的审计来核算组织的单行代码价值。

Dropbox的成本估算

作者: 阮一峰

日期: 2011年4月29日

两周前,云存储网站Dropbox宣布,用户总数达到了2500万

这个数字令人印象深刻,因为一年半前,它的用户总数已经是300万了。短短18个月,在一个这样大的基数上,继续扩张八倍多,真可谓势头惊人。

mysql主从同步快速设置

mysql主从同步快速设置

2010-10-27 @ 14:46:52 · 作者 Volcano

记录一个比较简便的mysql的主从同步设置步骤,方便日后使用。
安装环境
# centos 5.4
# mysql 5.1.xx 采用rpm直接安装
# xtrabackup 1.2.22 采用rpm直接安装
1. Master:/etc/my.cnf

[mysqld]
server-id = 1
log-bin
innodb_flush_log_at_trx_commit=1
sync_binlog=1
datadir=/var/lib/mysql

Gentoo linux AMD64:Howto switch to multilib

Howto switch to multilib

from: http://www.gentoo-wiki.info/HOWTO_AMD_64

If you decided to use a no-multilib system and removed all multilib components from your system previously you can change back to a multilib system (e.g. you want to use wine or virtualbox now), even though the gentoo documentation says that you cannot switch from a no-multilib to a multilib-enabled profile (dunno who wrote that). Just follow these steps:

* Step 1:

UNIX、Linux常用命令 -- 不定时更新

alsamixer
声卡音量控制。

apt-get dist-upgrade
debian系列全系统升级,从ubuntu升级成Debian都可能成功。

cd 源目录;tar -cf - .|(cd 目标目录;tar -xvf -)
复制目录,比cp好,能复制一些特殊文件。

cd 源目录;tar -czvf - .|ssh -l 帐号 目标机器 "cd 目标目录;tar -xzf -"
跨机器复制目录,比cp好,能复制一些特殊文件,而且传输的是已压缩数据。

dig www.example-domain.com
查看指定域名的解析数据。

emerge -e world
创建gentoo新的世界。

emerge --with-bdeps=y -ptvuDN system world
gentoo linux 查看有哪些软件更新。

emerge --with-bdeps=y -uDN system world
gentoo linux 更新软件。

订阅RSS - twig的博客