JSToolbox

    最近写了个Greasemonkey脚本jstoolbox,将一些bookmarklet(爱库,QQ输入法,有道翻译,Instapaper)做成了一个下拉列表,在页面顶上就能点击使用。为什么要多此一举呢?点书签不是很方便吗?原因其实是在我使用Firefox的时候,只会保留地址栏、Tab栏、和右下角的扩展栏,没有书签栏;而且我多年的收藏经验表示,我最讨厌点击书签了,收藏夹里的书签基本上没点过,一是数量比较大,组织的麻烦,二是收藏夹每次打开都是密密麻麻的,根本不想细看。直到我发现了Fastdial,不点收藏夹的情况才有所改观。快速拨号这个功能最早是opera发明的,Firefox上也有很多扩展,但是都用的不太顺手,Fastdial有点不一样,很简单,如同它的名字一样,打开速度很快,支持文件夹的功能,生成的缩略图基本上不看标题也知道是什么网站,而且对应到收藏夹里就一个Fastdial的文件夹,所以我就把Fastdial当成收藏夹来用了。

    这个问题一直存在就对了,不过真正让我写脚本的原因是爱库的Firefox扩展,爱库网是一个用于整理(collect),组织(organize),分享(share)任何互联网上面的网站、图片、视频等资源的在线服务,并且致力于让用户发现(discover)更多有意思的互联网资源。而且爱库网收藏的内容都以缩略图的方式来展示这一点我很满意,为此我还弃用了delicious。安装爱库的Firefox扩展后,它会hook住新Tab的打开页面,效果是不错但是这样一来Fastdial就不能用了;而且必须要到菜单->工具才能点到爱库的选项。因为菜单栏一般都是隐藏的,所以就相当不爽了。好在爱库提供了一个bookmarklet,顺带我就把其他的一些我觉得有用的bookmarklet给加进来了,代码也很简单,把li元素createElement出来,然后绑定上对应的function,最后添加到当前页面。因为bookmarklet其实就是浏览器执行一段js,所以那些function其实就是bookmarklet。目前已知的问题是在一些web mail里,如网易邮箱会被insert多次,所以把网易邮箱添加到了exclude里。

效果图如下:

image

鼠标移到JS-Toolbox会出现一个下拉列表,点击即可。

image

后续可能的工作:1.添加别的功能,现成的bookmarklet或者其他的js小工具。2.修改代码使得易于修改配置,可以选择哪些打开,哪些关闭。

 

4G,64bit,PAE

        上周末把内存加到了4G,缘由是在正常的工作环境下:win7下开着Outlook、Communicator,IE,Firefox,VMware或者某个IDE,后台运行着MSE、有道词典、wakoopa、Evernote、gae代理,进程总数70+,内存使用率会80%+,实在是高了点,而且Aero,这些特性都是关掉的。为了缓解这种情况,所以买了两根Kingston 2G 800,不过由于Intel GM965的白皮书上写着只支持DDR2 667和533,如下图,所以那两根条子是降频运行在667频率上的:

gm965_mem

CPU-Z检测出来为332.5MHz,因为是DDR,乘以2就是667.

dram_fre

如何使得内存工作在800Mhz呢?一开始我想使用SetFSB和SPD tool超频(overlook),说起SetFSB,还有个好玩的事情,若干年前好像就有中国用户fool了SetFSB作者一把,现在还需要激活码才能使用,而且还会弹出警告信息,下图:

setfsb_warning

后来一想,我从T5500升级到T8100,性能提升已经很明显了,就算超到T9300肯定也改观不大,更关键的是,SetFSB似乎不支持GM965。不过作者一直在更新,说不定支持了。

“当然,无论是用ClockGen还是SetFSB,要改变外频就必须知道PLL的型号。然而市面上有上千种规格不同的东西,ClockGen的作者因为这件令人头痛的事情已经暂停发布很长时间了。目前市面上的PM965 ,GM965系列总共在使用十几种PLL晶振芯片,像主流大厂:惠普,宏基,富士通,东芝的965系列的笔记本主板上基本上都是用的ICS9LPR363DGLF这个型号。还有一些国内厂商比如神州,七喜为了降低成本,PM965主板上用的是SLG8SP510T等廉价芯片,比如神州的825D系列L23XT/L5X5T/L7XXT系列。这些晶振芯片在日本市场上很稀少,目前还没有被SETFSB支持,其作者也增加和改进中”

“能不能用,跟CPU无关,关键是此软件中是否包含你主板上频率发生器的型号?
ICS型号,在CPU跟北桥附近,类似于“9LPRS365BGLF”之类的”

盗用神舟论坛的一张图:ppl

内存的话,就算通过修改SPD信息,在主板不支持的情况下也是很不稳定的,而且我的BIOS好像有点老,上次待机的时候蓝屏,windows提醒我考虑一下升级BIOS。

bios

上面好像有点扯远了,附一张现在的截图,还是正常的工作环境,效果很明显,响应速度明显变快,就算是高峰的情况也不过是60%+22

系统属性页上的信息如下,上周顺带更新到了windows 7 sp1

23

 

        我装的是32位的windows 7,默认情况下实际会显示“4.00GB(2.99GB Usable)”,当然32位肯定也是能够支持超过4G的内存的,要不然那些运行着32位的OS的服务器怎么解释呢(服务器技术比普通PC技术起码领先5年。。)。

说起64位,为了赶时髦,在win7刚出RC的时候我就告别了xp,安装的却是windows server 2008 x64,而且为了支持CPUVT技术才去换的cpu,当时对服务器的东西比较感兴趣,想法也很奇怪,就想用用服务器硬件、系统,当时还折腾过vmware esxi(硬件不支持啊),xen server,hyper-v(家里的台式安装过)。

我当时装着双系统,另一个是CentOS 64位,后来换过Gentoo的x64版本。虽然是基于64位的硬件,但是并没有觉得64位的OS运行的更快,就算是现在,原生支持64位的软件也是比较少的,如果通过32位子系统(SysWoW64目录有印象的吧)运行32位的应用程序,速度反而会有些损失,还有驱动程序,不当当是硬件驱动程序,连For ODBC的许多数据库连接驱动很多都没有64位的,不过可以运行32位的ODBC数据源管理程序就是了。

同样的,在linux下,情况稍微好一点,因为很多package都是可以从source编译安装的,但是也会有些程序需要32位的library,这样又会浪费不少硬盘空间(lib,lib32,lib64目录),算起来,我的笔记本除了主板,像cpu,硬盘,内存,风扇,蓝牙都换掉了,光驱还没想好,找到一个改下螺丝接口就可以换上去的光驱,之前的光驱刻录了几百张后牺牲了;也许还可以买个光驱位的硬盘盒,原来的硬盘位置可以考虑加块SSD硬盘,这样启动加载OS就更快了,而且现在使用USB装系统方便多了。

平时说的64位,大多数时候指的是Intel 64 (EM64T / AMD64 / x86-64 / x64),还有安腾处理的IA64,除了在服务器上,基本上碰不到;64位的优势在于,

1.64位的地址空间,理论上可以支持2的64次方,16 Eb的内存;

  • 2.扩展的寄存器集(extended register set),我的理解是这样可以使得函数的调用惯例一致,而且参数,返回值的指针都可以通过寄存器来传递,这样效率更高而且可以避免一些传统的栈溢出的漏洞
  • 3.对于开发者来说,cpu指令集变化不算大,相当于做了个并集;
  • 4.能通过WoW64 (Windows-on-Windows 64)类似技术来向前兼容应用程序和操作系统
  • windows_mem                                                          Windows实际能支持的最大内存

    32位OS如何支持超过4G的内存呢?通过PAE(physical address exetension)就可以实现,具体原理可以参考这篇文章,讲的非常到位。

    我使用的是ReadyFor4GB这个工具,patch完成重启动后右下角会显示“测试模式”的水印,这样:test_mode不过可以通过另一个starforce工具来去掉,留着不也挺cool的。

    12

                                                                          选择去掉水印

    至于在linux下,就简单了,可以参考这篇文章,Ubuntu下直接sudo apt-get install linux-server,重启就OK了。

    123

                                                                 默认32位的Ubuntu也只识别了3G

    221

            安装linux-image-server,linux-headers-generic-pae,package的名称说明了其主要用途

    1

                                                                             正常识别了

     

    4G,64bit,PAE

            上周末把内存加到了4G,缘由是在正常的工作环境下:win7下开着Outlook、Communicator,IE,Firefox,VMware或者某个IDE,后台运行着MSE、有道词典、wakoopa、Evernote、gae代理,进程总数70+,内存使用率会80%+,实在是高了点,而且Aero,这些特性都是关掉的。为了缓解这种情况,所以买了两根Kingston 2G 800,不过由于Intel GM965的白皮书上写着只支持DDR2 667和533,如下图,所以那两根条子是降频运行在667频率上的:

    gm965_mem

    CPU-Z检测出来为332.5MHz,因为是DDR,乘以2就是667.

    dram_fre

    如何使得内存工作在800Mhz呢?一开始我想使用SetFSB和SPD tool超频(overlook),说起SetFSB,还有个好玩的事情,若干年前好像就有中国用户fool了SetFSB作者一把,现在还需要激活码才能使用,而且还会弹出警告信息,下图:

    setfsb_warning

    后来一想,我从T5500升级到T8100,性能提升已经很明显了,就算超到T9300肯定也改观不大,更关键的是,SetFSB似乎不支持GM965。不过作者一直在更新,说不定支持了。

    “当然,无论是用ClockGen还是SetFSB,要改变外频就必须知道PLL的型号。然而市面上有上千种规格不同的东西,ClockGen的作者因为这件令人头痛的事情已经暂停发布很长时间了。目前市面上的PM965 ,GM965系列总共在使用十几种PLL晶振芯片,像主流大厂:惠普,宏基,富士通,东芝的965系列的笔记本主板上基本上都是用的ICS9LPR363DGLF这个型号。还有一些国内厂商比如神州,七喜为了降低成本,PM965主板上用的是SLG8SP510T等廉价芯片,比如神州的825D系列L23XT/L5X5T/L7XXT系列。这些晶振芯片在日本市场上很稀少,目前还没有被SETFSB支持,其作者也增加和改进中”

    “能不能用,跟CPU无关,关键是此软件中是否包含你主板上频率发生器的型号?
    ICS型号,在CPU跟北桥附近,类似于“9LPRS365BGLF”之类的”

    盗用神舟论坛的一张图:ppl

    内存的话,就算通过修改SPD信息,在主板不支持的情况下也是很不稳定的,而且我的BIOS好像有点老,上次待机的时候蓝屏,windows提醒我考虑一下升级BIOS。

    bios

    上面好像有点扯远了,附一张现在的截图,还是正常的工作环境,效果很明显,响应速度明显变快,就算是高峰的情况也不过是60%+22

    系统属性页上的信息如下,上周顺带更新到了windows 7 sp1

    23

     

            我装的是32位的windows 7,默认情况下实际会显示“4.00GB(2.99GB Usable)”,当然32位肯定也是能够支持超过4G的内存的,要不然那些运行着32位的OS的服务器怎么解释呢(服务器技术比普通PC技术起码领先5年。。)。

    说起64位,为了赶时髦,在win7刚出RC的时候我就告别了xp,安装的却是windows server 2008 x64,而且为了支持CPUVT技术才去换的cpu,当时对服务器的东西比较感兴趣,想法也很奇怪,就想用用服务器硬件、系统,当时还折腾过vmware esxi(硬件不支持啊),xen server,hyper-v(家里的台式安装过)。

    我当时装着双系统,另一个是CentOS 64位,后来换过Gentoo的x64版本。虽然是基于64位的硬件,但是并没有觉得64位的OS运行的更快,就算是现在,原生支持64位的软件也是比较少的,如果通过32位子系统(SysWoW64目录有印象的吧)运行32位的应用程序,速度反而会有些损失,还有驱动程序,不当当是硬件驱动程序,连For ODBC的许多数据库连接驱动很多都没有64位的,不过可以运行32位的ODBC数据源管理程序就是了。

    同样的,在linux下,情况稍微好一点,因为很多package都是可以从source编译安装的,但是也会有些程序需要32位的library,这样又会浪费不少硬盘空间(lib,lib32,lib64目录),算起来,我的笔记本除了主板,像cpu,硬盘,内存,风扇,蓝牙都换掉了,光驱还没想好,找到一个改下螺丝接口就可以换上去的光驱,之前的光驱刻录了几百张后牺牲了;也许还可以买个光驱位的硬盘盒,原来的硬盘位置可以考虑加块SSD硬盘,这样启动加载OS就更快了,而且现在使用USB装系统方便多了。

    平时说的64位,大多数时候指的是Intel 64 (EM64T / AMD64 / x86-64 / x64),还有安腾处理的IA64,除了在服务器上,基本上碰不到;64位的优势在于,

    1.64位的地址空间,理论上可以支持2的64次方,16 Eb的内存;

    • 2.扩展的寄存器集(extended register set),我的理解是这样可以使得函数的调用惯例一致,而且参数,返回值的指针都可以通过寄存器来传递,这样效率更高而且可以避免一些传统的栈溢出的漏洞
    • 3.对于开发者来说,cpu指令集变化不算大,相当于做了个并集;
    • 4.能通过WoW64 (Windows-on-Windows 64)类似技术来向前兼容应用程序和操作系统
    • windows_mem                                                          Windows实际能支持的最大内存

      32位OS如何支持超过4G的内存呢?通过PAE(physical address exetension)就可以实现,具体原理可以参考这篇文章,讲的非常到位。

      我使用的是ReadyFor4GB这个工具,patch完成重启动后右下角会显示“测试模式”的水印,这样:test_mode不过可以通过另一个starforce工具来去掉,留着不也挺cool的。

      12

                                                                            选择去掉水印

      至于在linux下,就简单了,可以参考这篇文章,Ubuntu下直接sudo apt-get install linux-server,重启就OK了。

      123

                                                                   默认32位的Ubuntu也只识别了3G

      221

              安装linux-image-server,linux-headers-generic-pae,package的名称说明了其主要用途

      1

                                                                               正常识别了

       

      iBooks真的检测越狱了

      前段时间看新闻,听说新版的iBooks加入了检测越狱的代码,原理和反向继电器挺像的,接电反而断开:在载入任何受数字版权保护的图书前(例如你从iBookstore里购买的任何图书),iBooks会尝试运行一小段代码。未越狱的系统由于用户没有足够的权限,会拒绝运行这个程序,iBooks侦测到这个异常反而会正常启动。而经过越狱的系统默认情况下会运行这个程序,没有检测到异常的iBooks便拒绝启动。结果我今天碰到了:

      IMG_0140IMG_0137

      正好刚刚刷cydia的package时看到comex的破解补丁,于是安装之,再打开就好了,comex果然是大神,而且还那么年轻,看看人家,不提也罢。

      IMG_0138IMG_0139

       

      iBooks真的检测越狱了

      前段时间看新闻,听说新版的iBooks加入了检测越狱的代码,原理和反向继电器挺像的,接电反而断开:在载入任何受数字版权保护的图书前(例如你从iBookstore里购买的任何图书),iBooks会尝试运行一小段代码。未越狱的系统由于用户没有足够的权限,会拒绝运行这个程序,iBooks侦测到这个异常反而会正常启动。而经过越狱的系统默认情况下会运行这个程序,没有检测到异常的iBooks便拒绝启动。结果我今天碰到了:

      IMG_0140IMG_0137

      正好刚刚刷cydia的package时看到comex的破解补丁,于是安装之,再打开就好了,comex果然是大神,而且还那么年轻,看看人家,不提也罢。

      IMG_0138IMG_0139

       

      SSH over USB

      某天在wiki上闲逛,发现一个SSH_Over_USB的entry,可以让SSH通过USB数据线来连接iOS,上面说的是在Mac OS下,当然在linux和Windows下也是可以的。原理是什么呢,是在Local运行一个usb多路复用(multiplexor)的daemon,然后运行client程序通过它建立本地<—>远程端口转发,最后就可以使用ssh进行基于usb tunnel的连接了。这个有什么用呢?对于jb/unlock肯定是有帮助的,还可以开发cydia上的app,折腾(可以装web server,或者在上面写python,java),甚至crack wifi密码都可以(现在暂时还不行)。

      1.安装usbmuxd,可以看到在Ubuntu源里已经包含了,这里八卦一下,Mac App Store发布了,里面包含了1000多个应用,你可以下载/购买,更新,sounds familiar,linux folks?(see :Apple, Linux welcomes you to 1998!

      #sudo apt-get install usbmuxd

      usbmxd

      2.usbmuxd的作者提供了一个简易的python-client,运行它,可以看到将本地的2222端口转发到了远程的22端口(即被将被连接的iDevice)

      #./tcprelay.py –t 22:2222

      daemon_listen

      3.建立ssh连接,#ssh root@127.0.0.1 –p 2222

      ssh_ipod

      python-client的回显,连接建立了

      daemon_accept

       

      在Windows下就很简单了,最新版本的ifunbox,提供了USB Tunnel的功能,点击下USB Tunneling,如图

      Untitled4

      将本地的22端口转发到远程的22端口

      Untitled3

      ssh连接之,现在可以干很多事情了~

      Untitled5

       

      SSH over USB

      某天在wiki上闲逛,发现一个SSH_Over_USB的entry,可以让SSH通过USB数据线来连接iOS,上面说的是在Mac OS下,当然在linux和Windows下也是可以的。原理是什么呢,是在Local运行一个usb多路复用(multiplexor)的daemon,然后运行client程序通过它建立本地<—>远程端口转发,最后就可以使用ssh进行基于usb tunnel的连接了。这个有什么用呢?对于jb/unlock肯定是有帮助的,还可以开发cydia上的app,折腾(可以装web server,或者在上面写python,java),甚至crack wifi密码都可以(现在暂时还不行)。

      1.安装usbmuxd,可以看到在Ubuntu源里已经包含了,这里八卦一下,Mac App Store发布了,里面包含了1000多个应用,你可以下载/购买,更新,sounds familiar,linux folks?(see :Apple, Linux welcomes you to 1998!

      #sudo apt-get install usbmuxd

      usbmxd

      2.usbmuxd的作者提供了一个简易的python-client,运行它,可以看到将本地的2222端口转发到了远程的22端口(即被将被连接的iDevice)

      #./tcprelay.py –t 22:2222

      daemon_listen

      3.建立ssh连接,#ssh root@127.0.0.1 –p 2222

      ssh_ipod

      python-client的回显,连接建立了

      daemon_accept

       

      在Windows下就很简单了,最新版本的ifunbox,提供了USB Tunnel的功能,点击下USB Tunneling,如图

      Untitled4

      将本地的22端口转发到远程的22端口

      Untitled3

      ssh连接之,现在可以干很多事情了~

      Untitled5

       

      也谈恶意竞争

      今天早上本来想通过网银充手机话费,结果江苏移动网上营业厅的验证码老是刷不出来,结果导致无法登录。

      direct

      firefox直接访问

      direct_ie

      IE直接访问

      我第一时间的想法是用代理试一下,看看是不是有问题,于是挂上ssh~

      proxy

      firefox代理访问,一切正常,但是由于不思进取的各大网银系统,加上IE Tab还不能把安全插件加进去,最终无法也完成支付,无奈之下,经过一番设置,把IE挂上了ssh的代理

      proxy_ie

      IE代理访问也正常了

      IE 使用ssh代理,要注意一点:由于ssh tunnel转发是socks的方式,所以在IE设置时应该在“advanced”最后一行socks里填写地址和端口,并且清空http/https/ftp栏的设置,如下图:ie_proxy

      设置好了之后,可以考虑安装proxypal,ie下的代理开关小工具,功能弱了点,但是还能用用,开心了可以自己拿bat或者py操作注册表,就是几个键值的问题,这主要是受对面phus的影响,工具使得很溜。

      后来我无意中看到一篇文章–江苏电信封杀江苏移动网上营业厅?通信业3Q大战,时间也是12月份的,然后我查了下ip,果然是电信的IPno_proxy_ip

      这就是赤果果的恶意竞争啊,在不健全的体制下更是如此,网易科技的一篇TD:最坏的自主创新,道出了中国特色的创新,有人会说之前怎么不说,很明显,之前被集体禁声,反对的声音根本发不出来,还有一个搞笑的中国高铁偏爱英文操作手册?,戳穿了所谓的中国高铁自主知识产权。。

       

      也谈恶意竞争

      今天早上本来想通过网银充手机话费,结果江苏移动网上营业厅的验证码老是刷不出来,结果导致无法登录。

      direct

      firefox直接访问

      direct_ie

      IE直接访问

      我第一时间的想法是用代理试一下,看看是不是有问题,于是挂上ssh~

      proxy

      firefox代理访问,一切正常,但是由于不思进取的各大网银系统,加上IE Tab还不能把安全插件加进去,最终无法也完成支付,无奈之下,经过一番设置,把IE挂上了ssh的代理

      proxy_ie

      IE代理访问也正常了

      IE 使用ssh代理,要注意一点:由于ssh tunnel转发是socks的方式,所以在IE设置时应该在“advanced”最后一行socks里填写地址和端口,并且清空http/https/ftp栏的设置,如下图:ie_proxy

      设置好了之后,可以考虑安装proxypal,ie下的代理开关小工具,功能弱了点,但是还能用用,开心了可以自己拿bat或者py操作注册表,就是几个键值的问题,这主要是受对面phus的影响,工具使得很溜。

      后来我无意中看到一篇文章–江苏电信封杀江苏移动网上营业厅?通信业3Q大战,时间也是12月份的,然后我查了下ip,果然是电信的IPno_proxy_ip

      这就是赤果果的恶意竞争啊,在不健全的体制下更是如此,网易科技的一篇TD:最坏的自主创新,道出了中国特色的创新,有人会说之前怎么不说,很明显,之前被集体禁声,反对的声音根本发不出来,还有一个搞笑的中国高铁偏爱英文操作手册?,戳穿了所谓的中国高铁自主知识产权。。