2014年8月17日 星期日

Program Process Thread

Program:放在二次儲存裝置中,尚沒有被Load到記憶體的一堆Code稱之為「程式」。  (也就是還是死的)

Process:已經被Load到記憶體中,任何一行Code隨時會被CPU執行,且其宣告的在記憶體 的變數的值會隨著需求而不斷變動。稱之為「程序」。 (也就是活的Program) => 恐龍本第三章 一個多工作業系統(Multitasking Operating System)可以同時運行多個Process 然而一個CPU一次只能做一件事情,但CPU的數量永遠少於運行中的Process數, 因此每個Process使用的時間需要被排程(Scheduling) => 恐龍本第五章又每個Process間在記憶體中,如果擺放的方式不當,就會在記憶體中產生很多沒辦法用到的碎片,因此MemoryManagement是一個問題 => 恐龍本第八章另外,每個Process所需要的記憶體總合,也可能大於實體記憶體,因此需要另外用二次儲存裝置充當虛擬記憶體(Virtual Memory),但是二次儲存裝置的速度肯定很慢,因此如何做到對虛擬記憶體最小的依賴,盡量避免Page Fault(電腦在主記憶體中找不到資料,而要去二次記憶體找,就稱為Page Fault)防止Thrashing的發生(因為Virtual Memory演算法不當,造成幾乎每次存取都要依賴二次記憶體,就是Thrashing),以達到效能最佳化,也是個學問 => 第九章


Thread :在同一個Process底下,有許多自己的分身,就是Thread,中文又翻成執行緒。以往一個Process一次只能做一件事情,因此要一面輸入文字,一面計算字數,這種事情是不可能的。但是有了Thread之後,可以在同一個Process底下,讓輸入文字是一個Thread,計算文字又是另外一個Thread,對CPU來說兩個都是類似一個Process,因此兩個可以同時做。又一個Process底下有數個Thread,而一個Process的Global Variable可以讓它的所有Thread共享,也就是所有Thread都可以存取同一個Process的GlobalVariable。而每個Thread自己也有自己的專屬Variable。 => 恐龍本第四章但是,如果有兩個Thread要存取同一個Global Variable,有可能發生問題,也就是說可能會存取到錯的值(例如兩個Thread同時要對一個Variable做加減,最後那個答案可能會是錯的),這就是Synchronization問題 =>恐龍本第六章又,每一個Thread之間可能會互搶資源,而造成死結(Deadlock),只要以下四個條件都滿足就有死結。(1)這個資源不能同時給兩個人用 (2)有一個人拿了一個資源,又想拿別人的資源 (3)如果一個人占了茅坑不拉屎,占用資源很久,仍不能趕他走 (4)A等B,B等C,C等D,D又等A 等成一圈。 要解決這種狀況有Avoid(預防) 或 避免(Prevent)兩種方式,破除以上四種其中一種即可。=> 恐龍本第七章

2014年7月21日 星期一

[YII教學]-TbGridView參數使用

TbGridView參數使用

在Controller底下的action寫一段給dataProvider,透過dataProvider回傳給web的widget.TbGridView.


'header'=>'No',  /* HTML title 顯示 */

'headerHtmlOptions'=>array('style'=>'text-align:center'),  /* HTML title style calss 用法 */

'value'=>'$this->grid->dataProvider->pagination->currentPage * $this->grid->dataProvider->pagination->pageSize + ($row+1)',  /* HTML value 建一個No順序 ex:1-10 */

'htmlOptions'=>array('style'=>'width: 60px;','style'=>'text-align:center'),  /* value style class 用法*/

2014年7月16日 星期三

[HTML教學]-CSS CLASS

Class

Class 的宣告法,是先放一個句點 (.),之後再列出選擇器名稱。設定一個 Class 選擇器的語法如下:
.【Class 名稱】{
  屬性:設定值;
  ...
}
舉例來說,
.navbar {
color:#0000FF;
}

要將以上的樣式套用在 HTML 內,我們用以下的 HTML 碼:
以上的 HTML 碼會顯現出:
一個 Class 選擇器可以同時有好幾個不同的物件 (instance)。這是靠以下的語法:
【型類選擇器】.【選擇器名稱】{
  屬性:設定值;
  ...
}
舉例來說,若有以下的 CSS 宣告,
b.special {
  color:#0000FF;
}
i.special {
  color:#FF0000;
}
以下的 HTML 碼,
這個例子顯示出 同一個選擇器可以有不同的 instance。.
就會顯現出,
這個例子顯示出同一個選擇器可以有不同的 instance。.


多重 Class


我們也可以同時套用數個 class。舉例來說,若我們有以下的 CSS 宣告,
.applylarge {
  font-size:20px;
}
.applyred {
  color:#FF0000;
}
那以下的 HTML 碼,
這是多重 Class 的例子。
就會顯現出,
這是多重 Class 的例子。


ID


ID 的宣告法,是先放一個井字號 (#),之後再列出選擇器名稱。設定一個 ID 選擇器的語法如下:
#【ID 名稱】{
  屬性:設定值;
  ...
}
舉例來說,
#footer {
color:#FF00FF;
}
要將以上的樣式套用在 HTML 內,我們用以下的 HTML 碼:
顯現出的結果為,

2014年7月14日 星期一

[PHP教學]-php 定義常數使用define函式來設定

php define函式來設定

與變數不同,常數名稱前面不需要加 $,設定之後,不能修改常數的值
邏輯值 = define (常數名稱, 值 , [忽略大小寫])
範例說明:
define("STR_name", "I am Black.");
//[忽略大小寫]是預設值,可不用設定
//或是 define("STR_name", "I am Black.",true);
echo STR_name;
// 印出 "I am Black."
echo str_name;
// 印出 "I am Black."

php 預設的常數

例如:
TRUE     表示    真
FALSE   表示    假
NULL    表示    沒有值
__LINE__       現在的行號。
__FILE__      執行中之script的絕對路徑。
__FUNCTION__     函式名稱
__CLASS__   類別名稱
__METHOD__   方法名稱
PHP_VERSION      PHP的版本
PHP_OS     執行PHP的作業系統

來源:http://help.i2yes.com/?q=node/164

[PHP教學] - include、include_once、require、require_once之比較

include、include_once與require、require_once中的用法:

include 和 include_once

都是用來引入檔案,後者可避免重複引入,故建議用後者。引不到檔案會出現錯誤息,但程式不會停止。

require 和 require_once

都是用來引入檔案,後者可避免重複引入,故建議用後者。引不到檔案會出現錯誤息,而且程式會停止執行。
以上是PHP初學者最容易混淆的語法,另外:
define("常數名稱","值") :定義常數,常數通常前面會加上「_」並以大寫命名。


2014年7月3日 星期四

CRUD的全名

Create ,Read (Rtrieve) ,Update ,Delete (Destory)
「In computing, CRUD is an acronym for create, retrieve, update, and delete. It is used to refer to the basic functions of a database or persistence layer in a software system. 」
「CRUD是指在做計算處理時的新增、檢索、更新和刪除幾個單詞的首字母簡寫。主要被用在描述軟體系統中資料庫或是持久層的基本操作功能。」

NB INSTALL WINDOW7

ACER V5-573G-54204G50aii 詳細規格表


  • Intel(R) 8 Series/C220 series Chipset Family 
  • 作業系統:W8ML64
  • CPU:Ci54200U clock/Turbo:1.6GHz/ 2.6GHz Cores/Threads:2 / 4 L3 Cache:3M
  • LCD 尺寸:15.6"鏡面螢幕
  • 顯示晶片:NVIDIA GeForce GT720M
  • 記憶體1:onboard 4GB DDR3
  • 記憶體2:最大可擴充soDIMM 8GB*1
  • Audio: Dolby:Dolby Home Theater v4
  • 儲存:500GB
  • 光碟機:NO
  • Webcam 前:HD(1280x720)
  • 無線網路:802.11 abgn
  • 藍牙:BT 4.0
  • 區域網路 USB RJ-45:Gigabit Ethernet
  • Kensington lock slot:Y
  • Card Reader:SD card reader
  • USB 3.0:1(w/power-off USB charging)
  • USB 2.0:2
  • HDMI:Y
  • Acer Converter port:Y
  • TPM安全晶片:NO
  • 指紋辨識:NO
  •  ******************************************************************************
  • win7 driver  
  • 從 win8 將驅動&軟體程式 (DRV&APP) 燒出來備用
  • 前置作業
  • bios
  • UEFI ---> disabled
  • secure boot --> disabled
  • 將 win8 DRV&APP 光碟燒出來 
  • ***************************************************************

win7x64 driver

  • Intel(R) 8 Series Chipset Family SATA AHCI Controller
  • 1.Chipset_Intel_9.4.0.1017_W8x64_A
  • 2.AHCI_Intel_12.5.0.1066_W8x64_A
  • 3.MEI_allOS_1.5M_9.5.3.120_PV.exe
  • 4.VGA_Intel(R) HD Graphics Family
  • 5.VGA_NVIDIA Geforce GT 750M _W7x64_A
  • 6.VGA_NVIDIA(PhysX)_9.12.1031_W7x86x64
  • 7.Audio_Realtek_6.0.1.6909_W8x64_A
  • 8.LaunchManager_Dritek_5.1.15_W7x64_A
  • 9.Lan_Realtek_7.054.0309.2012_W7x64W7x86
  • 10.CardReader_Realtek_6.2.9200.21222_W8x64_A
  • 11.Bluetooth_Qualcomm Atheros_7.4.0.170_W7x64_A
  • 12.TouchPad_ELANTECH_11.6.2.1_W7x64W7x86_A
  • 13.427485_intl_x64_zip hotfix for usb3.0
  • ** 沒裝 HOTFIX 安裝 USB3.0驅動後無法關機..且 USB2.0全部死當
  • 14.Intel(R) USB 3.0 eXtensible Host controller - 0100 (microsoft)
  • 15.Wireless LAN_Qualcomm Atheros AR5BWB222_W7x64W7x86_A
  • 16.Turbo Boost_Intel_2.5.1.0_W7x64W7x86_A
  • 17.Camera_Cyberlink_1.5.2624.00_W7x64W7x86_A