星期二, 2月 07, 2012

cadence in centos 6.2

Environment:

VirtualBox 4.18r75467
CentOS 6.2 x86_64

====
problem:
install guest addition

solutions:
yum install yum-plugin-priorities
yum update
yum install gcc
yum groupinstall "Development Tools"
yum install kernel-devel

Patch for CentOS 6.2 with VBOXADDITIONS_4.1.8

Mount the Guest Additions ISO as above, but do not run the installer. Copy/paste the patch below to a file, for instance vi ~/el6.patch.

--- vboxvideo_drm.c_orig        2011-12-19 08:05:26.000000000 -0500 +++ vboxvideo_drm.c     2012-01-03 15:04:11.181357021 -0500 @@ -112,7 +112,7 @@          .poll = drm_poll,          .fasync = drm_fasync,      }, -#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) +#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) && !defined(DRM_RHEL61)      .pci_driver =      {          .name = DRIVER_NAME, @@ -127,7 +127,7 @@      .patchlevel = DRIVER_PATCHLEVEL,  };   -#if LINUX_VERSION_CODE >= KERNEL_VERSION (2, 6, 39) +#if LINUX_VERSION_CODE >= KERNEL_VERSION (2, 6, 39) || defined(DRM_RHEL61)  static struct pci_driver pci_driver =  {      .name = DRIVER_NAME, @@ -137,7 +137,7 @@    static int __init vboxvideo_init(void)  { -#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) +#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) && !defined(DRM_RHEL61)      return drm_init(&driver);  #else      return drm_pci_init(&driver, &pci_driver); @@ -146,7 +146,7 @@    static void __exit vboxvideo_exit(void)  { -#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) +#if LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 39) && !defined(DRM_RHEL61)      drm_exit(&driver);  #else      drm_pci_exit(&driver, &pci_driver); 

Follow a procedure as below. The example is for x86_64 (also know as amd64).

cd /media/VBOXADDITIONS_4.1.8_75467/ ./VBoxLinuxAdditions.run --noexec --target ~/TMP/ cd ~/TMP/ mkdir ../TMP2 tar jxvf VBoxGuestAdditions-amd64.tar.bz2 -C ../TMP2/ cd ../TMP2/src/vboxguest-4.1.8/vboxvideo/  patch -p0 < el6.patch cd ~/TMP2/ tar jcvf ../TMP/VBoxGuestAdditions-amd64.tar.bz2 * cd ~/TMP ./install.sh 

For i386 substitute x86 for amd64 in the above procedure.

reference:http://wiki.centos.org/HowTos/Virtualization/VirtualBox/CentOSguest

====
Problem:
Solutions:
====
====
Problem:
mount extral disk
Solutions:

====
====
Problem:
Solutions: "updatedb" to use "locate"
====


====
Problem:
mount vbox share folder at start up
Solutions:
mkdir /home/kj/winshare
vi /etc/rc.local
mount -t vboxsf winshare /home/kj/winshare
====

====
Problem:
change default shell to csh

solutions:
vi /etc/passwd

change
kj:x:500:500:kj:/home/kj:/bin/bash
to
kj:x:500:500:kj:/home/kj:/bin/csh

====

====
Problem:
/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

Solutions:
yum install glibc.i686

yum install libXt.i686 or yum install libXt.x86_64
libXp.i686


=======
Problem:
X Error of failed request: BadName (named color or font does not exist)
Major opcode of failed request: 45 (X_OpenFont)
Serial number of failed request: 16
Current serial number in output stream: 31

Solutions:
yum install available xorg-x11-fonts-*
========


========
Problem:

libgcc_s.so.1 must be installed for pthread_cancel to work

Solutions:
setenv LD_LIBRARY_PATH {LD_LIBRARY_PATH}:/lib64/libgcc_s.so.1
========

星期六, 3月 01, 2008

ETTL 與 ETTL II 原理

E-TTL (Evaluative Through The Lens)

前言:
在一般的狀況下,有多少光可以進入相機,是靠著控制相機的光圈與快門速度來決定。然而在用閃光燈照相的時候,控制的方法就有點不一樣,因為閃光燈並非是一個持續的光源,所以基本上,一個用閃光燈的重要觀念就是,快門的速度並不會影響相機對閃光燈的曝光(高速快門同步例外)。閃燈的脈衝時間通常都在幾個ms的範圍,所以快門廉並不會阻擋閃燈的光進入感光元件。
所以基本上有幾個方法可以控制相機對閃燈的進光量,
  1. 光圈。然而改變光圈,也會改變相機對環境光的進光量。
  2. 閃燈與被攝物的距離。一般而言,光線的強度會跟距離的平方成反比的關係,也就是說,剛距離增加一倍的距離,光線的強度只會剩下四分之ㄧ而已。
  3. 閃燈與被攝物中間的屏障。如加入柔光罩 或擴散板之類的物品。
  4. 控制閃燈脈衝的時間。這也是現在大多數電子閃燈控制閃燈光量的方式。閃燈基本上,發光的亮度是固定的,靠著不同長度的發光時間來決定有多少光照射到被攝物上面。
E-TTL的工作原理

ETTL的工作原理分兩個動作,
  1. 閃燈會在快門開啟與反光鏡彈起之前,做一個小功率預閃的動作。這個預閃的速度很快,所以一般的情況下並不容易察覺(後廉同步除外),然而拍攝的人可以從觀景窗稍微瞄到這一個預閃的光。
  2. 然後預閃的光,會透過相機裡面的測光錶來分析預閃的光量,經由計算之後來決定閃燈最終的出力。
所以經由ETTL這樣的測光方式,由於判斷的方式是經由相機原本的測光元件,所以ETTL甚至可以鏈結到原本設定的對焦點。當使用柔光罩或跳燈的時候,經由ETTL也可以使測光更為準確。

E-TTL II

基本上來說,ETTL II 相較於 ETTL 有了兩方面的改進
  1. 演算法的改進。ETTL II 在預閃的之前與之後都會去判讀測光錶的不同區域。如此,在不同測光區域一些亮度的改變都會被計算進去而得到最後閃燈出力數據。透過這樣的方式,可以避免因為一些高反光物品而造成閃燈曝光誤判的現象發生。
  2. 增加對焦距離的計算。某些 EF鏡頭可以回傳對焦距離的資訊回去相機,然後ETTL II就可以把對焦距離的資訊加入演算法中一起計算來得到正確的閃燈出力值。
不過有種情況下,對焦距離的資訊並不會被使用到出力的計算,如跳燈,無線遙控閃燈的情況下,鏡頭的對焦距離並不適用於閃燈與被攝物的距離。
總結來說,ETTL II 基本上是在機身上的改進,也就是說支援ETTL的閃燈其實也是可以支援ETTL II的,只要機身上有ETTL II的功能。

星期二, 5月 22, 2007

30歲了

As title.....

星期二, 1月 23, 2007

aphorism

"We owe almost all of our knowledge not to those who have agreed, but to those who have differed"
---Charles Caleb Colton.