2008年4月的存档

  • 30
  • 4月

刚刚重新安装了Ubuntu Tweak,尝试了一下把之前关机对话框中屏蔽掉的挂起支持打开。试了一下。

ATI的显卡终于能正常挂起和唤醒了!!!!!

就冲这一条,升级到8.04也值。要知道,自打我把主操作系统换为Ubuntu以来,本本就没待过机。

ATI显卡驱动的Linux兼容性终于上来了……

PS:用了几次挂起之后发现虽然是能正常挂起和唤醒了,但唤醒的速度实在是……从我拍电源到能够正常输入密码得等上近30秒,期间只见硬盘灯狂闪,不知道在干什么。

  • 30
  • 4月

等了好多天,终于忍不住了,不管论坛里怎么说,决定将自己的Ubuntu7.10升级到8.04。

直接用的官方源,自动升级。下载了一晚上升级文件(1G多呢),早上起来做了几道选择题(软件包、配置文件的选择,当然都用最新版的了)。重启,还好,能进入桌面,而且貌似程序都没什么问题,原来设置也都没变。可以算作成功升级吧:)

不过小问题还是有几个的:

1.开机画面花屏
到“启动管理器”中重新修改了一下开机的分辨率和色深,搞定。

2.awn没了
反正也一直没习惯Dock这种东西,没就没了吧。重新把任务栏找了回来。

3.FireFox变成繁体,且很多插件不能用了
论坛里有解决方案,而且相信FF3正式版出来后就不会再有问题了。

4.3D桌面,甚至2D加速都比以前卡了
看了一下System Monitor,都是xgl惹的祸。删!
不过删完之后就没3D桌面了,查了一下,发现其实新版的ATI驱动已经不需要xgl就支持3D桌面了。

sudo gedit /etc/X11/xorg.conf

找到以下部分,将Composite的值设定为True

Section "Extensions"
Option        "Composite"    "True"
EndSection

这样3D桌面又可以用了。而且2D加速明显提升。FF中拖动网页流畅了很多,高清视频也有法看了:)

5.输入法由fcitx变回了scim
和7.10中的解决方法一样,到新立得里删scim,重写了一下/etc/X11/xinit/xinput.d/zh_CN。小企鹅又回来了。

6.关机画面没了
论坛里也有讨论,貌似不是个例。但还没找到解决方案。反正是关机,先不理它就是了。等有解决方案再说。
Ubuntu8.04关机黑屏,无关机画面的解决方案

7.GoogleEarth崩溃
重装过了,还是崩。不知道怎么解决。
参考此帖:Google Earth 4.3 in Ubuntu Hardy,删除原来版本重装。
已经可以启动,但画面闪的厉害。ATI的显卡,开了compiz后好像没什么办法。

8.flash中文乱码
字体配置的原因:

最近Ubuntu 8.04修改了系统字体配置文件的构成,将原来的/etc/fonts/language-selector.conf分解成了四个文件,分别对应到 /etc/fonts/conf.d/下的29-language-selector-zh.conf、69-language-selector- zh-cn.conf、99-language-selector-zh.conf和CJK_aliases,而我们经常修改的sans字体渲染顺序在 69-language-selector-zh-cn.conf文件中,所以如果您发现系统字体显示不对,可以直接调整69-language- selector-zh-cn.conf,按照您喜欢的字体顺序调整好后,重启X后,系统的字体应该就恢复了。

但是这时候可能您的Flash里面的中文还是乱码或者和系统的字体不一致,这个的解决方法很简单,将/etc/fonts/conf.d /49-sansserif.conf删除即可,这个文件为在所有非sans-serif、serif字体中附加sans-serif,删除它后就 Flash里面的字体配置就和外部系统的字体一致了。另外如果这样修改后还有乱码的话,试试调整下69-language-selector-zh- cn.conf里面的中文字体顺序。

直接删除不太放心,move了一下:

sudo mv /etc/fonts/conf.d/49-sansserif.conf /home/riqe/backup/

注销之后flash中文正常了,未发现其他问题。

  • 26
  • 4月

今天很高兴成功写出了生平第一个汇编程序,程序很简单:从键盘读入一个数字,判断正负,正数输出1,负数输出-1,0时输出0。

因为汇编不是高级语言,所有的分枝都得靠跳转指令。于是老老实实地用流程图画了一下,别看就这么点功能,但输入的数字得一个一个地接收、判断(想起有穷状 态自动机来了,不知道这能不能算它的一种实现)。输出的时候也要根据正负、是否为0判断。最终这么一个小程序居然用了6处判断跳转!用C写2个if就可以 搞定的东东嘛……呵呵。

按照《代码大全(Code Complete)》上建议的方法,先把程序思路用注释全部写到源文件中去,然后一条条展开成代码,最终经过调试得到了以下可以成功运行的代码:

CODE  SEGMENT
      ASSUME    CS:CODE
START:                        ;init
      XOR       AX ,AX
      MOV       BX ,0030H   ;bh-negative flag, bl non-zero flag
      XOR       CX ,CX      ;input flag
INPUT:                        ;input a charactor
      MOV       AH,01
      INT       21H
      CMP       AL,1BH
      JE        RETURN      ;press ESC to exit
      CMP       AL,0DH
      JE        OUTPUT      ;if it's x0d, jump to OUTPUT
      TEST      CL,01H
      JNE       COMMON      ;if it's not the first charactor, jump to COMMON
      MOV       CL,01H      ;set input flag
      CMP       AL,'-'
      JNZ       COMMON      ;if it's not '-', jump to COMMON
      MOV       BH,01H      ;set negative flag
      JMP       INPUT       ;jump to INPUT
COMMON:
      CMP       AL,'0'
      JE        INPUT       ;if it's '0', jump to INPUT
      MOV       BL,31H      ;set non-zero flag
      JMP       INPUT       ;jump to INPUT
OUTPUT:
      MOV       AH,02H
      MOV       DL,0AH
      INT       21H         ;start a new line
      CMP       BL,'0'
      JE        NZ          ;if it's 0, '-' is of no use
      CMP       BH,01H
      JNE       NZ          ;if negative flag is false, jump to NZ
      MOV       DL,'-'
      INT       21H         ;print '-'
 NZ:  MOV       DL,BL
      INT       21H         ;print the non-zero flag
      MOV       DL,0AH
      INT       21H
      MOV       DL,0DH
      INT       21H         ;move cursor to a new line
      JMP       START       ;get the next number
RETURN:  RET
CODE  ENDS
      END       START

PS:期间犯了两个错误,记录一下
1.忘记了 ASSUME CS:CODE 这一句,没了代码段,造成了所有的跳转语句都报:“ Near jump or call to different CS”错误。没指定自己的代码段在哪里,一跳可不是to different CS嘛!
2.代码最后没有加RET,一接收完输入就报莫名其妙的错误。汇编毕竟是汇编,最后的CODE ENDS和END START只是给编译器看的。程序执行完毕,返回操作系统的指令也得写明。

搞定之后小研究了一个EXE文件的结构,找到一篇不错的文章: com和exe文件结构

  • 12
  • 4月

I’m happy that I successfully made a breakthrough to speak English loudly in front of strangers.

Speaking in public especially when the audiences are not familiar to me always makes me uncomfortable and nervous. In such a situation, I tend to speak faster and faster so that no one could understand me at last. And it makes me feel even more awful when they say “Pardon?”

In the coffee house this evening, the organizers prepared lots pieces of colorful paper, several scissors and bottles of glue for us. The activity was “making your own flag of colors and shapes you like, and telling others what they represent”.

I made my flag with a piece of grown paper as background and put a red, top pointing arrow with a black handle in the center. It was simple with just three different colored shapes, because I always believe that simple is best. The background color is the color of earth which stands for the solid ground we all need to do anything great. Only with step-by-step and concentrated work can we make this. The black-handled arrow means it is unavoidable to pass some dark time before we get to the top and the red color shows we need enthusiasm to get through it.

Because my simple design, I finished my flag quite early. Thus I had a longer time to prepare for the open mic time. When it started, I put up my hand in the first time and won a chance to talk about my flag in the front. Though not speaking fluently, I did make a true breakthrough and gladly got a ticket for the next time’s coffee house (which means I do not have to get there early and wait in line before it starts).

I’ll try to do better next time.

(Any criticisms or suggestions are is welcome.)

  • 04
  • 4月

上次与人合租的DreamHost主机3月中旬到期了,导致近半个月本Blog无法访问。还好找到这一家比较好的lunarpages主机合租。重新将Wordpress上传,导入备份好的数据(勤备份果然救命啊!)

另外顺便更新了一下Wordpress的版本。2.5版的后台管理界面确实发生了相当大的变化。一时都有点不适应的感觉。不过插件加入了一键自动升级功能确实不错,再了不用费事下载-上传了:)

另外最近正”following the star in my own heart”,为自己的前途而努力。可能又不能时常更新这个Blog了。

所有标签:.net Ajax Java javascript Linux map MySQL RSS TD-SCDMA Ubuntu vim web Win7 乱码 基础知识 备份 奥运会 希望泉 性能 缓存 编程