2009-04-29

光影魔術手~幫圖片加上美麗的框框

clipped from blog.roodo.com
1.開啟欲加框的相片


2.工具→輕鬆邊框
邊框有很多類型,2~7以『輕鬆邊框』為例,8~12以『花樣邊框』為例


3.有11種簡易型邊框
左邊視窗可預覽加框後的樣子,如果選擇有簽名的邊框,可從『邊框文字設定』進去設定字型、大小、顏色


4.還可設定是否在邊框顯示相片的EXIF值


5.效果→銳化,可讓相片變得更鮮明唷!


6.對比,可以將"原始相片"和"加框調整後的相片"做個對照


7.完成囉!(儲存時,別忘了存成高品質檔案唷!參考第11張)
輕鬆邊框的缺點是,簽名只能藉由按空白鍵來左右移動,而且EXIF和簽名都只能放在相片的下方邊緣,無法調高低。


▼這張是『暗底勾邊』+『反轉片』→『真實色彩』


8.工具→花樣邊框
分成我的最愛(樣式較少)、全部素材(樣式較多),可以在全部素材裡面挑選常用的,按右鍵,加進我的最愛。


9.工具→文字標籤,有何功能呢?就是可以在相片的任何位置自由的加入文字
文字的位置、字形、大小、水平、垂直邊距都可以隨心所欲調整。


10.文字標籤的功用不只簽名而已,還可以按右方的鉛筆圖示,就會出現其他選項唷!
相機型號、拍攝時間、光圈、快門…都可以顯示在相片上。按預覽可以看見加上這些資訊的的相片,方便再進行文字位置的調整。(您也可以替相片取個主題名字,然後放在相片的上、中、下任何位置,不過,我還是習慣放下緣)


11.另存新檔,別忘了存成高品質,才不會壓縮過度,失真過多


12.花樣邊框完成囉!


▼附上一張原始相片,以供比較


13.一張一張處理,多累呀!光影魔術手當然也有貼心的批次處理功能!


14.照片清單→可以一張張新增進來,或是新增整個目錄裡的相片也行


15.哇!這麼多相片,還好有批次處理的功能,不然多花時間呀!


16.在自動處理的動作清單內,將您想加入同一張相片的動作都放進來吧!
左邊視窗沒有您要的動作嗎?請點選+號,進去新增。
動作清單選好後,再針對每個動作到右邊的對應按鈕去做細部設定。例如:到『縮放』去選擇您要縮放的尺寸,到『花邊樣框』裡面選擇您要的樣式。


17.輸出設定→處理好的相片要放到哪個資料夾,是否重新命名或覆蓋
 blog it

2009-04-26

hidden terminal problem

clipped from ff320232.pixnet.net

但是AC彼此不在對方收訊範圍。因此現在A欲傳給B然而C並不知道,因為他不在接收範圍內,C也在這時傳送給B時,那麼就會造成了collision,這就是hidden terminal problem(終端隱匿問題),如圖二.

hidden terminal problem

 圖片二(本圖來自逢甲大學專題報告中)

因為hidden terminal problem 很嚴重,所以加入了RTS/CTS的機制。

(註:  傳送要求RTS:Request To Send,   允許傳送CTS:Clear To Send)

A要送DATAB時會先傳送RTS,若B允許了,則傳CTS用broadcast方式傳遞給在範圍內的所有node(節點),因此在B範圍中的C就會知道。別人正在和B做傳輸動作,而C則會採取backoff random time的方式做等待,這樣一來,就不會造成大量DATA都白白浪費時間,頂多浪費一開始的RTS小小packet

 blog it

2009-04-20

FireGestures

clipped from addons.mozilla.org

FireGestures


作者: Gomita


FireGestures 的預覽圖片



241 篇意見


38,943
本週下載次數


易於自訂的滑鼠手勢套件,讓您可以使用五大類手勢、輕鬆執行各種命令。


更新時間:2009 年 03 月 19 日

 blog it

2009-04-07

Ubuntu Repository for TinyOS 2.0.2

clipped from www.tinyos.net
By eleith, Section TinyOS Releases
Wed Aug 15th, 2007 at 11:48:56 PM PST


Ubuntu "Feisty" users now can grab TinyOS 2.0.2 from our Debian repository (in three or four easy steps...)


1] remove any old tinyos repository from /etc/apt/sources.list and add the following


deb http://tinyos.stanford.edu/tinyos/dists/ubuntu feisty main


2] update your repository cache


sudo apt-get update


3] run your choice of


sudo apt-get install [tinyos, tinyos-avr, tinyos-msp430]


we've had inconsistent success with running apt-get upgrade tinyos, so for now it's best to play it safe and remove any old tinyos packages before installing the new ones.


4] Finally, if you're using telos motes, then you will need to uninstall the braille drivers; Ubuntu thinks that telos nodes are braille inputs. You can remove the drivers with this command:

sudo apt-get remove brltty

 blog it

2009-04-02

Context switch

clipped from en.wikipedia.org

A context switch is the computing process of storing and restoring the state (context) of a CPU such that multiple processes can share a single CPU resource. The context switch is an essential feature of a multitasking operating system. Context switches are usually computationally intensive and much of the design of operating systems is to optimize the use of context switches. A context switch can mean a register context switch, a task context switch, a thread context switch, or a process context switch. What constitutes the context is determined by the processor and the operating system.

Multitasking

Most commonly, within some scheduling scheme, one process needs to be switched out of the CPU so another process can run. Within a preemptive multitasking operating system, the scheduler allows every task to run for some certain amount of time, called its time slice.

If a process does not voluntarily yield the CPU (for example, by performing an I/O operation), a timer interrupt fires, and the operating system schedules another process for execution instead. This ensures that the CPU cannot be monopolized by any one processor-intensive application.

Interrupt handling

Some architectures (like the Intel x86 architecture) are interrupt driven. This means that if the CPU requests data from a disk, for example, it does not need to busy-wait until the read is over, it can issue the request and continue with some other execution; when the read is over, the CPU can be interrupted and presented with the read. For interrupts, a program called an interrupt handler is installed, and it is the interrupt handler that handles the interrupt from the disk.

The kernel services the interrupts in the context of the interrupted process even though it may not have caused the interrupt. The interrupted process may have been executing in user mode or in kernel mode. The kernel saves enough information so that it can later resume execution of the interrupted process and services the interrupt in kernel mode. The kernel does not spawn or schedule a special process to handle interrupts.

User and kernel mode switching

When a transition between user mode and kernel mode is required in an operating system, a context switch is not necessary; a mode transition is not by itself a context switch. However, depending on the operating system, a context switch may also take place at this time.

Context switch: steps

In a context switch, the state of the first process must be saved somehow, so that, when the scheduler gets back to the execution of the first process, it can restore this state and continue.

The state of the process includes all the registers that the process may be using, especially the program counter, plus any other operating system specific data that may be necessary. Often, all the data that is necessary for state is stored in one data structure, called a switchframe or a process control block.

Now, in order to switch processes, the switchframe for the first process must be created and saved. The switchframes are sometimes stored upon a per-process stack in kernel memory (as opposed to the user-mode stack), or there may be some specific operating system defined data structure for this information.

Since the operating system has effectively suspended the execution of the first process, it can now load the switchframe and context of the second process. In doing so, the program counter from the switchframe is loaded, and thus execution can continue in the new process. New processes are chosen from a queue or queues. Process and thread priority can influence which process continues execution, with processes of the highest priority checked first for ready threads to execute.

Software vs hardware context switching

Context switching can be performed primarily by software or hardware. Some processors, like the Intel 80286 and higher CPUs, have hardware support for context switches, by making use of a special data segment designated the Task State Segment or TSS. When a task switch occurs (implicitly due to a CALL instruction, referring to a task gate, or explicitly due to an interrupt or exception) the CPU can automatically load the new state from the TSS. With other tasks performed in hardware, one would expect this to be rather fast; however, mainstream operating systems, including Windows, do not use this feature. This is due mainly to two reasons: that hardware context switching does not save all the registers (only general purpose registers, not floating point registers--although the TS bit is automatically turned on in the CR0 control register, resulting in a fault when executing floating point instructions and giving the OS the opportunity to do saving and restoring of the floating point state), and associated performance issues.

Some architectures contain logic to allow several hardware contexts to exist simultaneously, eliminating the need to store and restore the CPU context to memory on context switch. The extreme case is the barrel processor architecture, which switches between threads of execution on every cycle.


blog it