2012年2月28日 星期二

買HP電腦的相關設定

公司最近配了一台新的HP的電腦,為了了解一些基本的特性,
好方便以後便份與修改,開始了全面的測試。

一開始看到硬碟分割,一整個傻眼,一共有四個主要磁區。
分別是System, OS, Recovery和HP_TOOLS。
1. System Partition是Win7在建立分割的時候,就會建立出來的,約200MB左右,目的不明。
2. OS就是所謂的C槽~
3. Recovery就是放HP建立的還原映像檔,約20G左右。
4. HP_TOOLS,就是放HP的一些額外的不需要透過Windows就可以執行的程式,像是QuickWeb。

而一顆硬碟最多只能分成四個主要磁區,所以,當我進入作業系統後,大部分的空間都在C槽@@
之前我透過SPFdisk分割硬碟,也沒有特別割出200MB的區塊,一樣WIN7可以work,所以,這個System Partition我應該會把它刪掉。

OS Partition就一定要保留的啦~

在來是Recovery的部分,HP提供了一個軟體,Recovery Manager,它有一個功能,可以把Recovery裡面的映像檔燒到光碟片上。若把它燒到光碟片的話,在硬碟上也不會占用一個主要磁區,同時也可以節省這20G的空間。
而OS備份的部分,還是會用GHOST來處理吧,至少備份的時間沒有那麼長,而且步驟也沒有Recovery Manager那麼複雜。
下面會在說明,當光碟片燒出來,透過光碟開機,一共有三種主要的還原方式,會說明一下。
另外,說明,這一個光碟片只能制作一次,當光碟片制作完成後,Recovery的映像檔就會被刪除。

另外,HP_TOOLS這一個磁區也會保留,無聊的時候可以玩一下QuickWeb。

所以,看起來,目前會有二個主要磁區和一個邏輯磁區~
分別是OS和HP_TOOLS。
則邏輯磁區就可以分成D槽、E槽和F槽。
對C槽的備份的GHOST就放在F槽,目前這樣看起來好像還不錯。

制做出來的HP還原光碟片,一共有三個主要的還原方式
1. 系統復原(將電腦還原至其原始出廠狀態)
這一個會把整個硬碟刪除掉,並且只保留三個磁區
a. System Partition是Win7在建立分割的時候,就會建立出來的,約200MB左右,目的不明。
b. OS就是所謂的C槽~其中,會另外安裝所有HP的一些軟體,也有安裝Office 2010的試用軟體。
c. HP_TOOLS,就是放HP的一些額外的不需要透過Windows就可以執行的程式,像是QuickWeb。

2. 最小化映像復原(僅還原作業系統、驅動程式和特定軟體[潔淨映像])
這一個會把整個硬碟刪除掉,並且只保留三個磁區
a. System Partition是Win7在建立分割的時候,就會建立出來的,約200MB左右,目的不明。
b. OS就是所謂的C槽~其中,會另外安裝所有HP的一些基本軟體,其中不會安裝Office 2010的試用軟體。
c. HP_TOOLS,就是放HP的一些額外的不需要透過Windows就可以執行的程式,像是QuickWeb。
3. 原廠重新設定(藉由清除整個硬碟並還原至原始的出廠狀態來重設電腦)
這一個會讓整個硬碟的分割方式與內容與原本出廠的幾乎一樣,只有一個功能不行。
就是透過這一個還原的系統,並沒有辦法再燒出HP的備份光碟片,不過,還是可以使用F11 OS Recovery的功能。
其一樣是分成四個主要磁區
1. System Partition是Win7在建立分割的時候,就會建立出來的,約200MB左右,目的不明。
2. OS就是所謂的C槽~
3. Recovery就是放HP建立的還原映像檔,約20G左右。
4. HP_TOOLS,就是放HP的一些額外的不需要透過Windows就可以執行的程式,像是QuickWeb。

=============================================================

另外,HP提供了一個貼心的服務,
那就是在windows下,不需要另外按Fn就可以使用windows下的功能鍵。
但是,在這一些功能鍵,反而我不常用到,而F1-F12,反而是很常用的到。
還好,HP在BIOS有提供
System ConfigurationAction Keys ModeDisabled
這樣進到Windows,預設就是F1-F12了。

=============================================================

參考資料:
HP 筆記型電腦 ─ 使用 HP Backup and Recovery Manager
HP 筆記型電腦 ─ 停用特定機型的 Fn + 功能鍵組合

2012年2月20日 星期一

BIOS相關名詞簡寫

Intel Graphics Driver(IGD)
Application Program Interface (API)
Boot Loader Development Kit (BLDK)
Configuration Editor (CED)
Detailed Timing Descriptor (DTD)
Driver Executable Environment (DXE)
EFI Byte Code (EBC)
Embedded Computing Group (Intel Corp.) (ECG)
Extended Display Identification Data (EDID)
Extensible Firmware Interface (EFI)
Embedded Pre-OS Graphics (EPOG)
GNU Compiler Collection (GCC)
Graphics Output Protocol (GOP)
General Purpose Input/Output (GPIO)
High-Definition Multimedia Interface (HDMI)
Intel® Embedded Graphics Drivers (IEGD)
Intel Graphics Driver (IGD)
In-Vehicle Infotainment (IVI)
Low Voltage Differential Signaling (LVDS)
PCI Express (PCIe)
Serial Digital Video Output. (SDVO)
POWERVR™ SGX Graphics Processing Unit (GPU) IP core (SGX)
Techtronix Logic Analyzer (TLA)
Universal Extensible Firmware Interface (UEFI)
Virtualization Technology (VT)
Intel 虛擬技術
embeded Multi Media Card (eMMC)
Understanding eMMC User Capacity
e·MMC v4.41 and v4.5
BIOS Modification Program (BMP)
video BIOS table (VBT)
Enhanced Host Controller Interface (EHCI)
Open Host Controller Interface (OHCI)
Universal Host Controller Interface (UHCI)
Trusted Platform Module (TPM)
Digital Temperature Sensor (DTS)
System Managment interrupt (SMI)
Windows Management Instrumentation (WMI)
System Control interrupt (SCI)
SCI v.s SMI 基本概念
EFI Firmware File system (FFS)
Flash Device (FD)
Firmware Volumes (FVs)
Image Signal Processer (ISP)
Platform Configuration Database (PCD)
USB On-The-Go (USB-OTG)
OTG規格簡介
Single Parallel Hub USB (SPH-USB)
System Management Interrupt (SMI)
System Control Interrupt (SCI)
SCI v.s SMI 基本概念
Secure Digital I/O (SDIO)
Secure Digital Memory Device (SD)
OEM Activation 3.0 (OA 3.0)
Platform Secure Storage (PSS)
Random Number Generator (RNG)
Customer Reference Board (CRB)
Dynamic Video Memory Technology (DVMT)
Form Factor Reference Design (FFRD)
Reference and Validation Platform (RVP)
Memory Reference Code (MRC)
Intel® eXtended Debug Port (XDP)
Flexible Flat Cable (FFC)
Flex Printed Circuit (FPC)
Dynamic Platform and Thermal Framework (DPTF)
Human Interface Device (HID)
Card Specific Data register (CSD)
Industry Standard Architecture (ISA)

Spec
External Design Specification (EDS)
INTEL Active Management Technology (AMT)

ACPI
Operating System-directed configuration and Power Management (OSPM)
Advanced Configuration and Power Interface (ACPI)
Differentiated System Description Table (DSDT)

2012年2月17日 星期五

如何分析SMBIOS

最在在porting新的function,有需要更新SMBIOS的資料,
因此,學會了如何簡單的分析SMBIOS。

SMBIOS有很多的type,每一個type分別有要特別存放的data,
同時,每一個type有其不同的struct,
這一些部分一定要參考spec,
spec有定義,
而我目前就先以SMBIOS type1為例。

如果要讀取BIOS的相關資訊,可以下載RW-Everything這一個軟體,
裡面有一個讀取SMBIOS的功能,並且會幫你解析出來,是一個非常棒的軟體,而且是免費的。

另外,SMBIOS,在網路上Search就有了,我使用的版本是System Management BIOS (SMBIOS) Reference Specification v.2.7.1的版本。

下面就是Specification裡面對type 1 header的定義。

而下面就是透過RW-Everything讀取出來的SMBIOS data


SMBIOS的每一個type分為header與string兩大部分,前面全部都是Header的部分,而後面的部分都是string的部分。而每一個string跟string之間,都是以00(一個byte)當作一個分隔。
並且以00 00(二個byte)則是代表這一個type的string的結束。

2012年2月15日 星期三

在define中連接字串與數字

若定義可以設定的好,其實超好用的~

#include <stdio.h>

#define LINE_FILE(x,y) "Line " #y " of file" x
#define _LINE_FILE_(x,y) LINE_FILE(x , y)
#define __LINE_FILE__ _LINE_FILE_( __FILE__ , __LINE__ )

#define MyMacro(a,b,c) a##b##c

int main (
)
{
const char *pwsz = __LINE_FILE__;
const char *MyMacro(A,B,c) = "good";
printf("%s\n",pwsz);
printf("%s\n",MyMacro(A,B,c));
return 0;
}


參考資料:
EFI v.s #define
#define連接字串和數字 『轉錄』