http://blog.csdn.net/celiaqianhj/article/details/6742852
介紹了ACPI的RSDP, RSDT, XSDT ...等等的關係.
整理的很不錯喔.
2013年7月26日 星期五
C-states and P-states are very different
C-states and P-states are very different
C-states are idle states and P-states are operational states. This difference, though obvious once you know, can be initially confusing.
With the exception of C0, where the CPU is active and busy doing something, a C-state is an idle state. Since an idle CPU isn't doing anything (i.e. any useful work), why not shut it down? No one is going to notice since there's no one using it. (Letting a Penryn run at full bore when idle is like driving in circles very fast; all you're doing is going nowhere quickly.)
A P-state is an operational state, meaning that the core / processor can be doing useful work in any P-state. The most obvious example is when your laptop is using a low power profile and operating on battery. The OS will lower the C0 operating frequency and voltage, i.e. enter a higher P-state. Reducing the operating frequency reduces the speed at which the processor operates, and so the energy usage per second (i.e. power). Reducing the voltage decreases the leakage current from the CPU's transistors, making the processor more energy efficient resulting in further gains. The net result is a significant reduction in the energy usage per second of the processor. On the flip side, an application will take longer to run. This may or may not be a problem from a power perspective. I'll talk about this issue in some depth in a later blog.
C-states and P-states are also orthogonal. This is a fancy mathematical term meaning that each can vary independently of the other. This doesn't mean that in the higher C-states, the voltage doesn't change. It only means that when you resume C0, you go back to the operating frequency and voltage defined by that P-state.
C-states are idle states and P-states are operational states. This difference, though obvious once you know, can be initially confusing.
With the exception of C0, where the CPU is active and busy doing something, a C-state is an idle state. Since an idle CPU isn't doing anything (i.e. any useful work), why not shut it down? No one is going to notice since there's no one using it. (Letting a Penryn run at full bore when idle is like driving in circles very fast; all you're doing is going nowhere quickly.)
A P-state is an operational state, meaning that the core / processor can be doing useful work in any P-state. The most obvious example is when your laptop is using a low power profile and operating on battery. The OS will lower the C0 operating frequency and voltage, i.e. enter a higher P-state. Reducing the operating frequency reduces the speed at which the processor operates, and so the energy usage per second (i.e. power). Reducing the voltage decreases the leakage current from the CPU's transistors, making the processor more energy efficient resulting in further gains. The net result is a significant reduction in the energy usage per second of the processor. On the flip side, an application will take longer to run. This may or may not be a problem from a power perspective. I'll talk about this issue in some depth in a later blog.
C-states and P-states are also orthogonal. This is a fancy mathematical term meaning that each can vary independently of the other. This doesn't mean that in the higher C-states, the voltage doesn't change. It only means that when you resume C0, you go back to the operating frequency and voltage defined by that P-state.
Linux Plumbers Conference
突然發現這個, 記錄一下 http://www.linuxplumbersconf.org
Linux Plumbers Conference 2012 Videos & Slides
http://www.linuxplumbersconf.org/2012/
USB Port Power Off Kernel/User Space
http://linuxplumbers.ubicast.tv/videos/usb-port-power-off-kerneluserspace-api/
Linux Plumbers Conference 2012 Videos & Slides
http://www.linuxplumbersconf.org/2012/
USB Port Power Off Kernel/User Space
http://linuxplumbers.ubicast.tv/videos/usb-port-power-off-kerneluserspace-api/
2013年5月29日 星期三
有趣的專利
今天看到2個專利的討論, 記錄一下
(1)電子工程專輯的 醬也行?--有趣“瘋狂專利”分享
原始來源:What were they thinking: Confessing to an apparition
(2)Cash's Blog的UIBC小註解
UIBC 是指 User Input Back Channel,用在 WIFI Display 的情境之下. 由於顯示裝置 (AV sink device) 和發送裝置 (AV source device) 只能透過無線傳輸,所以從顯示裝置反過來操作發送裝置的話,就叫做 UIBC。
Samsung的專利 Method and apparatus for providing user input back channel in audio/video system
專利公開:US20110107388 A1
(1)電子工程專輯的 醬也行?--有趣“瘋狂專利”分享
原始來源:What were they thinking: Confessing to an apparition
(2)Cash's Blog的UIBC小註解
UIBC 是指 User Input Back Channel,用在 WIFI Display 的情境之下. 由於顯示裝置 (AV sink device) 和發送裝置 (AV source device) 只能透過無線傳輸,所以從顯示裝置反過來操作發送裝置的話,就叫做 UIBC。
Samsung的專利 Method and apparatus for providing user input back channel in audio/video system
專利公開:US20110107388 A1
2013年5月26日 星期日
ctags在vim裏的常用操作
最近又開始想用vim+ctags功能了, 紀錄一下常用的快速指令囉!
ctags in vim
cscope_maps.vim plugin
ctags in vim
Keyboard | Command Action |
Ctrl-] 或是 Ctrl-Left_MouseClick | 跳到tag所定義的地方 |
Ctrl-t 或是 Ctrl-Right_MouseClick | 返回 |
:ts <tag> <RET> |
Search for a particular tag |
:tn | Go to the next definition for the last tag |
:tp | Go to the previous definition for the last tag |
:ts | List all of the definitions of the last tag |
cscope_maps.vim plugin
這邊的用法是Ctrl+\按完後, 全放開, 再去按後面的字母
ctrl+\ s "s表Symbol,列出所有參考到游標所在字串的地方,包含定義和呼叫。
ctrl+\ g "g表Global,與ctags的Ctrl+]相同。
ctrl+\ c "c表Caller,列出所有會呼叫到以游標所在字串當函數名的地方。
ctrl+\ t "t表Text,列出專案中所有出現游標所在字串的地方。
ctrl+\ f "f表File,以游標所在字串當檔名,開啟之。
ctrl+\ i "i表Include,以游標所在字串當檔名,列出所有include此檔的檔案。
ctrl+\ d "d表calleD,以游標所在字串當函式名,列出所有此函式內呼叫的函式。
在使用cscope時,需注意,cscope.out這個資料庫是否有被connect起來,如果沒有connect那搜尋功能當然就會失效。
發現一件事情,ctags的關聯都是用絕對路徑的,所以就算我任意切目錄,只要database有認到就沒問題。
但是cscope看起來是不行的,它用相對路徑的,一切目錄,就算database認到了,看起來也開不了檔案。
Vim 快速指令
在command mode底下(不用打:)
gf (goto file)
比如:當你的游標停在#include, 此時直接打gf, 就會自動幫你開啟該header file
先決條件是,你必需先指定好path, 參考方法是":set path=include;/usr/include"
當你要返回時,使用ctrl+o返回
* 搜尋字串
游標停在你要尋找的字串上,直接按shift+8(相當於按*),
然後就可以用n往下搜尋,按N往上搜尋了
gd 查區域變數, gD查全域變數
追蹤某個變數宣告時,可以用gd或gD去跳轉
% 括號跳轉
有時function非常的長, 每次都要用page up/down一直換頁, 還要擔心跳過頭
%可以幫你直接跳到左括號或右括號上, 也適用於C的#def喔.
當然, 同樣的你要先把游標移到括號上喔.
mx及'x 標記及返回
你可以在任意地方標記該行, 然後亂跑後, 再打'x來返回剛剛標記的地方
Linux Trace Tool Introduction
在使用cscope時,需注意,cscope.out這個資料庫是否有被connect起來,如果沒有connect那搜尋功能當然就會失效。
發現一件事情,ctags的關聯都是用絕對路徑的,所以就算我任意切目錄,只要database有認到就沒問題。
但是cscope看起來是不行的,它用相對路徑的,一切目錄,就算database認到了,看起來也開不了檔案。
Vim 快速指令
在command mode底下(不用打:)
gf (goto file)
比如:當你的游標停在#include
先決條件是,你必需先指定好path, 參考方法是":set path=include;/usr/include"
當你要返回時,使用ctrl+o返回
* 搜尋字串
游標停在你要尋找的字串上,直接按shift+8(相當於按*),
然後就可以用n往下搜尋,按N往上搜尋了
gd 查區域變數, gD查全域變數
追蹤某個變數宣告時,可以用gd或gD去跳轉
% 括號跳轉
有時function非常的長, 每次都要用page up/down一直換頁, 還要擔心跳過頭
%可以幫你直接跳到左括號或右括號上, 也適用於C的#def喔.
當然, 同樣的你要先把游標移到括號上喔.
mx及'x 標記及返回
你可以在任意地方標記該行, 然後亂跑後, 再打'x來返回剛剛標記的地方
Linux Trace Tool Introduction
2013年4月28日 星期日
OpenPCR 開放原始碼的基因定序儀
OpenPCR 開放原始碼的基因定序儀 -
OpenPCR is a low-cost, yet accurate thermocycler you build yourself, capable of reliably controlling PCR reactions for DNA detection, sequencing, and other applications.
一台美金599元
PCR (Polymerase chain reaction聚合酶鏈鎖反應), 複製已知的DNA片斷來作相關的基因研究。
因此OpenPCR 是一台便宜用來複製 DNA 的機器,我們可以將採集到微量DNA,用OepnPCR複製之後,拿來診斷疾病,也可以用來判斷食品是否有受污染,或者檢查食品是否有使用基因改造作物。
新潮玩法:家庭基因实验室
論壇 不過這個論壇似乎很久沒更新了.
GitHub OpenPCR Source Code Project
基隆米克斯公司的PCR說明
[試劑耗材]基本分生技術介紹 PCR Cloning - 分生實驗的必經之路
簡伯容 博士 - PCR 技術簡介
長庚微免所 劉世東 教授 - 進行 PCR 反應時的注意事項
Hate Brussels Sprouts? It's Genetic - Pearl Biotech's Open PCR Project
How to do a PCR
PCR Procedure
PCR介紹
訂閱:
文章 (Atom)
-
昨天差點昏倒, 因為Chrome Browser一開啟後居然一片白畫面. 雖然還有IE可以用, 但就是習慣Chrome了啊, 然後開始Google別人如何解決, 不過看起來不少人遇到相同的問題, 但都沒什麼解決方法. 什麼掃毒啦, 重新安裝Chrome啦, 砍掉Default啦....
-
I/O mapped I/O(port-mapped I/O或Direct I/O) I/O與memory均擁有自己的記憶體空間 需要特別的指令來處理I/O 好處是完全不用考慮記憶體空間被I/O佔用,缺點需要額外的指令專門處理I/O存取。 Memory Mapped I/O I/...
-
好像不少人會找這個Sample Code, 小修改一下好了. 先前的Code有不少的Warning出現而且會Crash耶! 底下分別列出UDP Server及Client的範例程式. UDP Server (udp-server.c) 利用 socket 介面設計網路應用程...
一個小故事讓我們明白資金流通的意義
“又是炎熱小鎮慵懶的一天。太陽高掛,街道無人,每個人都債台高築,靠信用度日。這時,從外地來了一位有錢的旅客,他進了一家旅館,拿出一張1000 元鈔票放在櫃檯,說想先看看房間,挑一間合適的過夜,就在此人上樓的時候---- 店主抓了這張1000 元鈔,跑到隔壁屠戶那裡支付了他欠的肉錢...