A critisim often heared these days is that subjects taught in schools tend to be too academic, and contribute little to preparing a young person for the real life tasks which he or she will have to perform after graduation. They say the academic subjects are rooted in the past and are not useful in solving modern problems. However, I disagree this point of view for three reasons.
My first reason is that it is the duty of parents, not teachers to prepare their children to deal with the practical affairs of life. The home, not the classroom, is the ideal place to learn about home management and interpersonal skills. As for work abilities and attitudes, they are best learned on the job and under the supervison of an experienced older worker.
My second reason is these academic subjects have withstood the test of time, they represent the accumulated wisom of our ancestors down through ages, and far from being impractical, they equip us with knowledge and confidence to make sound judgement about any problems which may crop up. In addtion, academic subjects are good for training us in mental discipline, while practical subjects are weak in this regard.
My third reason is based on the saying " Man does not live by bread alone". Schooldays soley devoted to instruction in down-to-earth practical matters would be dull indeed. Lessons in the best literature of the world and epoche-making scientific and geographic discoveries of the past enrich our lives and make us feel we are part of the great family of mankind.
All in all, the teaching of academic subjects in schools is entirely appropriate. It is my firmly held view that practical subjects have no place in the classroom. On the contrary, the curriculum should be more academic.
2008年3月23日星期日
2008年3月18日星期二
Evolution export control and birthday
Sun is a large and canonical company which abides by the laws of USA and regulations of other countries in business. Therefore, we have some redundant process to go before releasing our software. Of course, every employee should understand something about law on behalf of Sun Microsystem. We also have to spend much time and energy on the process. Recently I'm working with Brian Cameron on the export control process. This work is a bit annoying because you have to know many details about the products. For example, how does evolution use encryption algorithms? which algorithms and key size etc.
Maybe we have no choice except answering those questions one by one. I think I can finish them soon.
Oh, today is the birthday of jessie's father. We'll go to cellebrate it for him. Which present should I buy for him?
Maybe we have no choice except answering those questions one by one. I think I can finish them soon.
Oh, today is the birthday of jessie's father. We'll go to cellebrate it for him. Which present should I buy for him?
GPM Arc Case
Recently we are going through the process of GNOEM Power Manager ARC case. Gary has asked some questions related with security and authorization. How does a gconf value is managed by administrator? In fact, we never investigated similar issues before. Gary's questions make us to look it over those issues in GNOME desktop. For example, maybe APOC can help to configure gconf values.
I sent the question to colleagues in Ireland to get more suggestions since they are more experienced on GNOME. Brian, Darren and Matt gave us some beneficial help. But anyway, I still hope we can speed the arc process for open source projects and improve the efficiency alarmingly.
I sent the question to colleagues in Ireland to get more suggestions since they are more experienced on GNOME. Brian, Darren and Matt gave us some beneficial help. But anyway, I still hope we can speed the arc process for open source projects and improve the efficiency alarmingly.
2008年3月13日星期四
How to Test Whether Suspend|Resume work on your Solaris
In my last blog article http://jeff-work.blogspot.com/2008/03/gnome-power-manager-works-in-solaris.html, I described how you could install GPM on your Toshiba laptop. As you have known, suspend|resume may not work on your machine because of lack of some driver support. Fortunately, Randy Fishel gave us a method how to know whether your hardware support this feature.
His article is posted at http://blogs.sun.com/randyf/entry/testing_suspend_and_resume_for where it lives in the Sun blog space. Maybe you ask me why I have no such a blog. I ever had one, but currently it doesn't work. I can't log in it and the maintainer doesn't solve the issue for me yet. Owning a Sun's blog is something you can be proud of.
Randy also tells us how to configure your machine to make suspend to ram work in another article. The link is at http://blogs.sun.com/randyf/entry/solaris_suspend_and_resume_how.
Now we'll talk about something about GPM. When you press "power" button, GPM will pop up a dialog which allows the user to select "Suspend", "Shutdown" or "Cancel"

In fact, this dialog is not offered by GPM, instead, GPM invokes a command line tool "gnome-sys-suspend" to respond to the pressing power button. You can't see icons on the button "Suspend" and "Shutdown", I think we can make it more elegant by adding some icons.
Another enhancement for this window is to add "Reboot" and "Hibernate" buttons. we are working on it and hope you can see them soon.
His article is posted at http://blogs.sun.com/randyf/entry/testing_suspend_and_resume_for where it lives in the Sun blog space. Maybe you ask me why I have no such a blog. I ever had one, but currently it doesn't work. I can't log in it and the maintainer doesn't solve the issue for me yet. Owning a Sun's blog is something you can be proud of.
Randy also tells us how to configure your machine to make suspend to ram work in another article. The link is at http://blogs.sun.com/randyf/entry/solaris_suspend_and_resume_how.
Now we'll talk about something about GPM. When you press "power" button, GPM will pop up a dialog which allows the user to select "Suspend", "Shutdown" or "Cancel"

In fact, this dialog is not offered by GPM, instead, GPM invokes a command line tool "gnome-sys-suspend" to respond to the pressing power button. You can't see icons on the button "Suspend" and "Shutdown", I think we can make it more elegant by adding some icons.
Another enhancement for this window is to add "Reboot" and "Hibernate" buttons. we are working on it and hope you can see them soon.
Encryption Algorithm Table
These days we are going through the export control process for gnome 2.22. The moudles of GnuTLS, libgcrypt and libsoup include many things related with encryption and descryption. You know that I'm not a security export. To make me remember what the algorithms are, I'll make a table to list them.
| Name | Type | Key Length | Fragment Size | Others | |
| DES_CBC | block,synmeric | 58+8 | 64 bit | EDE or EEE | |
| AES | block, symmetric | 128,192,256 | 128 | Rijndael | |
| RC4 | stream,symmetric | 40-256 | stream |
2008年3月10日星期一
X Window System Concepts
This is a good article about X: Xlib Programming Manual http://www.sbin.org/doc/Xlib/index_contents.html
A display is defined as a workstation consisting of a keyboard, a pointing device such as a mouse, and one or more screens.
Server-client modal
X is a network-oriented windowing system. An application need not be running on the same system that actually supports the display.
the program that controls each display is known as a server.
The server acts as an intermediary between user programs running on either the local or remote systems and the resources of the local system.
Window Management
Another important concept in X programming is that applications do not actually control such things as where a window appears or what size it is. Given multiprocessor, multiclient access to the same workstation display, clients must not be dependent on a particular window configuration. Instead, a client gives hints about how long and where it would like to be displayed. The screen layout or appearance and the style of user interaction with the system are left up to a separate program, called the window manager.
A display is defined as a workstation consisting of a keyboard, a pointing device such as a mouse, and one or more screens.
Server-client modal
X is a network-oriented windowing system. An application need not be running on the same system that actually supports the display.
the program that controls each display is known as a server.
The server acts as an intermediary between user programs running on either the local or remote systems and the resources of the local system.
Window Management
Another important concept in X programming is that applications do not actually control such things as where a window appears or what size it is. Given multiprocessor, multiclient access to the same workstation display, clients must not be dependent on a particular window configuration. Instead, a client gives hints about how long and where it would like to be displayed. The screen layout or appearance and the style of user interaction with the system are left up to a separate program, called the window manager.
2008年3月5日星期三
GNOME Power Manager Works In Solaris

After several months of hard working, We finally make GNOME Power Manager (GPM) partly work in Solaris on some Toshiba laptops.
In fact, as a popular desktop system, GNOME has been integrated in Solaris for a long time. But until now, we can't port a desktop power management application into Solaris because of the lack of driver support. User of Solaris 10 have to use the old GUI application called "dtpower" to perform power management configuration. Comparing with "dtpower" in Solaris 10, as one of the new generation PM tools, GPM has more features and is more user-friendly.Features
In summary, GPM provides features as follows:
1 Battery Monitor
- power status (AC, battery charging, battery discharging and
battery power volume)
- Emit notification message and beep when battery power is
critically low
- perform the specified action when battery is below the critical
level
2 Suspend&Hibernate
- suspend manually
- hibernate manually (only on sparc for now)
3 Brightness support
- brightness hot-key
- brightness applet, show and adjust brightness level by mouse
- Set the specified brightness level in different power modes.
4 CPU scaling policy
- ondemand
- performance
5 Hot-key support
- power button
- brightness hot-key
6 Lid support
- perform the specified action including blank, suspend and hibernate when lid is closed.
- beep when lid is closed/opened.
7 Configuration switching between AC power and Battery Power
- change the action configuration when lid is closed (the action is
one of nothing, blank screen, suspend and hibernate)
- change the action configuration when battery is below the critical
level. (Only in battery mode)
- change the CPU scaling policy
- change the brightness level
8 Preferences
- action when lid is closed (in ac and battery power mode)
- action when battery is critically low (only in battery power mode)
- brightness level (in ac and battery power mode)
- cpu scaling policy (in ac and battery power mode)
- action when power button is pressed (general)
- action when suspend button is pressed (general)
You may wonder why not support suspend or hibernate automatically. Currently, this is work only for the first phase. In the second phase, we have still more work to do to support this feature.
Installation
System Requirement:
Toshiba M5, M8, M9, and A9 and any systems that support ACPI fully.
Solaris Nevada 75 or any version after 75
Download the package
GPM Hal support: A tar package file which you need to extract it before you can use.
GPM Package: Solaris package that you need to use pkgadd to install it.
How to install
1. extract the packages
# gtar zxvf 1_23_08_x86.tar.gz
this creates a directory '1_23_08_x86' in which with 'driver' and 'hal' sub-directories.
# gtar zxvf gnome-power-manager-02-20-x86.tar.gz
this command createa a directory 'gnome-power-manager-02-20-x86'
2. Copy the battery and power driver to your system.
# cp 1_23_08_x86/driver/debug32/* /kernel/drv
for 64 bit , # cp 1_23_08_x86/driver/debug64/* /kernel/drv/amd64
3. Copy all HAL files
# cp 1_23_08_x86/hal/* /usr/lib/hal
4. Upgrade hicolor theme
#cp gnome-power-manager-02-20-x86/index.theme /usr/share/icons/hicolor
5. Install two Solaris packages
#pkgadd -d gnome-power-manager-02-20-x86
Please select 'all'.
6 Reboot
Installation
System Requirement:
Toshiba M5, M8, M9, and A9 and any systems that support ACPI fully.
Solaris Nevada 75 or any version after 75
Download the package
GPM Hal support: A tar package file which you need to extract it before you can use.
GPM Package: Solaris package that you need to use pkgadd to install it.
How to install
1. extract the packages
# gtar zxvf 1_23_08_x86.tar.gz
this creates a directory '1_23_08_x86' in which with 'driver' and 'hal' sub-directories.
# gtar zxvf gnome-power-manager-02-20-x86.tar.gz
this command createa a directory 'gnome-power-manager-02-20-x86'
2. Copy the battery and power driver to your system.
# cp 1_23_08_x86/driver/debug32/* /kernel/drv
for 64 bit , # cp 1_23_08_x86/driver/debug64/* /kernel/drv/amd64
3. Copy all HAL files
# cp 1_23_08_x86/hal/* /usr/lib/hal
4. Upgrade hicolor theme
#cp gnome-power-manager-02-20-x86/index.theme /usr/share/icons/hicolor
5. Install two Solaris packages
#pkgadd -d gnome-power-manager-02-20-x86
Please select 'all'.
6 Reboot
Now, after you reboot your machine, you can see there's a power icon in the right bottom(system tray) of your panel like the following picture:
you can right click or left click with your mouse to pop-up command menu in which you can select some commands such as "Preferences", "Power History", and "Suspend"(If your computer drivers support it)

Brightness Applet
There's also a new applet called "Brightness Applet" which you can use to adjust screen brightness by mouse.

Battery Monitor

If you unplug the power, the machine will be running in battery power. GPM can show the battery status such as power volume, the remaining time the machine can work. If the power is critically low, a warning will be pop-up to ask you to plug the AC power or shutdown the computer.
Anyway, GPM really works in Solaris. You can try "Suspend" & "Resume", but because of the driver issue, my laptop still can't resume after suspend. :( Guys of driver team are busy in dealing with these issues.
See More...
Project page in GNOME: http://www.gnome.org/projects/gnome-power-manager/ which contains project information about development, features and screenshots
Project page in OpenSolaris: gpm , acpi hal and cpufreq hal
订阅:
评论 (Atom)