第一篇:系統(tǒng)啟動策略
優(yōu)化windowx XP絕棒的九條技巧
使用XP的過程中,系統(tǒng)運行速度會隨著時間的推移越來越慢了,有的朋友可能會想到重裝系統(tǒng),但重裝后,那么多的應(yīng)用軟件也要重新安裝,如何在不安裝系統(tǒng)的前提下提升XP的運行速度呢?只要你安照以下九個方面操作,相信你的XP又會重新高速運行。
1、加快開關(guān)機速度
在Windows XP中關(guān)機時,系統(tǒng)會發(fā)送消息到運行程序和遠程服務(wù)器,告訴它們系統(tǒng)要關(guān)閉,并等待接到回應(yīng)后系統(tǒng)才開始關(guān)機。加快開機速度,可以先設(shè)置自動結(jié)束任務(wù),首先找到HKEY_CURRENT_USERControl PanelDesktop,把AutoEndTasks的鍵值設(shè)置為1;然后在該分支下有個“HungAppTimeout”,把它的值改為“4000(或更少),默認為50000;最后再找到 HKEY_LOCAL_MACHINESystemCurrentControlSetControl,同樣把 WaitToKillServiceTimeout設(shè)置為“4000”;通過這樣設(shè)置關(guān)機速度明顯快了不少。
2、提高寬帶速度
專業(yè)版的Windows XP默認保留了20%的帶寬,其實這對于我們個人用戶來說是沒有什么作用的。尤其讓它閑著還不如充分地利用起來。
在“開始→運行”中輸入gpedit.msc,打開組策略編輯器。找到“計算機配置→管理模板→網(wǎng)絡(luò)→QoS數(shù)據(jù)包調(diào)度程序”,選擇右邊的“限制可保留帶寬”,選擇“屬性”打開限制可保留帶寬屬性對話框,選擇“啟用”,并將原來的“20”改為“0”,這樣就釋放了保留的帶寬。
3、優(yōu)化網(wǎng)上鄰居
Windows XP網(wǎng)上鄰居在使用時系統(tǒng)會搜索自己的共享目錄和可作為網(wǎng)絡(luò)共享的打印機以及計劃任務(wù)中和網(wǎng)絡(luò)相關(guān)的計劃任務(wù),然后才顯示出來,這樣速度顯然會慢的很多。這些功能對我們沒多大用的話,可以將其刪除。在注冊表編輯器中找到 HKEY_LOCAL_MACHINEsofewareMicrosoftWindowsCurrent VersionExploreRemoteComputerNameSpace,刪除其下的(打印機)和{D6277990-4C6A-11CF8D87-00AA0060F5BF}(計劃任務(wù)),重新啟動電腦,再次訪問網(wǎng)上鄰居,你會發(fā)現(xiàn)快了很多。
4、加快啟動速度
要加快Windows XP的啟動速度??梢酝ㄟ^修改注冊表來達到目的,在注冊表編輯器,找到 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/ControlSession/ManagerMemory Management/PrefetchParameters,在右邊找到EnablePrefetcher主鍵,把它的默認值3改為1,這樣滾動條滾動的時間就會減少;
5、自動關(guān)閉停止響應(yīng)程序
有些時候,XP會提示你某某程序停止響應(yīng),很煩,通過修改注冊表我們可以讓其自行關(guān)閉,在HKEY_CURRENT_USERControl PanelDesktop中將字符健值是AutoEndTasks的數(shù)值數(shù)據(jù)更改為1,重新注銷或啟動即可。
6、加快菜單顯示速度
為了加快菜單的顯示速度,我們可以按照以下方法進行設(shè)置:我們可以在HKEY_CURRENT_USERControl PanelDesktop下找到“MenuShowDelay”主鍵,把它的值改為“0”就可以達到加快菜單顯示速度的效果。
7、清除內(nèi)存中不被使用的DLL文件
在注冊表的HKKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion,在Explorer增加一個項AlwaysUnloadDLL,默認值設(shè)為1。注:如由默認值設(shè)定為0則代表停用此功能。
8、加快預(yù)讀能力改善開機速度
Windows XP預(yù)讀設(shè)定可提高系統(tǒng)速度,加快開機速度。按照下面的方法進行修改可進一步善用CPU的效率: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerMemoryManagement],在PrefetchParameters右邊窗口,將EnablePrefetcher的數(shù)值數(shù)據(jù)如下更改,如使用PIII 800MHz CPU以上的建議將數(shù)值數(shù)據(jù)更改為4或5,否則建議保留數(shù)值數(shù)據(jù)為默認值即3。
9、減少啟動時加載項目
許多應(yīng)用程序在安裝時都會自作主張?zhí)砑又料到y(tǒng)啟動組,每次啟動系統(tǒng)都會自動運行,這不僅延長了啟動時間,而且啟動完成后系統(tǒng)資源已經(jīng)被消耗掉!
啟動“系統(tǒng)配置實用程序”,在“啟動”項中列出了系統(tǒng)啟動時加載的項目及來源,仔細查看你是否需要它自動加載,否則清除項目前的復(fù)選框,加載的項目愈少,啟動的速度自然愈快。此項需要重新啟動方能生效。
10.如何加速啟動設(shè)置
進入注冊表編輯器找到HKEY_LOCAL_MACHIN/SYSTEM/ControlSet001/control子項將其systemstartOptions值項的數(shù)值改為NODETECT。關(guān)閉注冊表編輯器,重啟計算機后生效,WinXP極速關(guān)機
作者:佚名 來源:InterNet 加入時間:2005-5-18
體積龐大的WindowsXP關(guān)起機來也是老黃牛一頭--大約需要30~50秒,按照下面的方法更改注冊表選項,看看WinXP關(guān)機速度加快了嗎?
找到HKEY-CURRENT-USER\Control Panel\Desktop鍵,將WaitToKillAppTimeout改為:1000,即關(guān)閉程序時僅等待1秒。
將HungAppTimeout 值改為:200,表示程序出錯時等待0.5秒。
將AutoEndTasks 值設(shè)為:1。讓系統(tǒng)自動關(guān)閉停止響應(yīng)的程序。
屏蔽五項功能 Windows XP極速狂飆
作者:佚名 來源:InterNet 加入時間:2008-3-17
許多藏在系統(tǒng)暗處的網(wǎng)絡(luò)設(shè)置功能,是許多系統(tǒng)優(yōu)化絕招無法觸及的,很多情況下就是因為這些設(shè)置不當?shù)木W(wǎng)絡(luò)功能拖慢了系統(tǒng)啟動速度;為此,我們只要將這些不當?shù)木W(wǎng)絡(luò)功能屏蔽掉,就一定能夠為系統(tǒng)提速再加一鞭!
事實上,許多藏在系統(tǒng)暗處的網(wǎng)絡(luò)設(shè)置功能,是許多系統(tǒng)優(yōu)化絕招無法觸及的,很多情況下就是因為這些設(shè)置不當?shù)木W(wǎng)絡(luò)功能拖慢了系統(tǒng)啟動速度;為此,我們只要將這些不當?shù)木W(wǎng)絡(luò)功能屏蔽掉,就一定能夠為系統(tǒng)提速再加一鞭!
1、屏蔽網(wǎng)絡(luò)共享功能
要是我們的計算機并沒有處于單位局域網(wǎng)網(wǎng)絡(luò)中,那么已經(jīng)被啟用的網(wǎng)絡(luò)共享功能其實一點用處都沒有,它的存在反而會拖累系統(tǒng)的啟動速度;要想盡可能地提高系統(tǒng)啟動速度的話,我們完全可以將本地系統(tǒng)已經(jīng)啟用的網(wǎng)絡(luò)共享功能給屏蔽掉,下面就是具體的屏蔽操作步驟:
首先在Windows系統(tǒng)“開始”菜單中依次執(zhí)行“設(shè)置”/“控制面板”/“網(wǎng)絡(luò)連接”命令,打開本地計算機的網(wǎng)絡(luò)連接列表窗口,找到其中的“本地連接”圖標,并用鼠標右鍵單擊該圖標,從其后出現(xiàn)的快捷菜單中執(zhí)行“屬性”命令,打開本地連接屬性設(shè)置窗口。
其次在該窗口的“常規(guī)”標簽頁面中,找到“此連接使用下列項目”列表框中的“Microsoft網(wǎng)絡(luò)的文件和打印機共享”選項,并將該選項前面 方框中的勾號取消掉,最后單擊“確定”按鈕關(guān)閉屬性設(shè)置窗口,這么下來系統(tǒng)在下次啟動時就不會花費時間去檢查網(wǎng)絡(luò)共享方面的內(nèi)容了。
2、屏蔽完全控制功能
計算機系統(tǒng)每次啟動時都會自動對本地硬盤中的相關(guān)共享文件夾進行搜索和掃描,而共享文件夾的訪問屬性設(shè)置不同的話,那么系統(tǒng)掃描該目標共享文件夾的時間也會不相同;比方說,要是某一共享文件夾被設(shè)置為“只讀”權(quán)限時,系統(tǒng)掃描該共享文件夾的時間可能只需要1毫秒,而當將共享文件夾的訪問權(quán)限設(shè)置 為“完全控制”時,系統(tǒng)掃描該共享文件夾的時間可能就需要1.5毫秒,由此可見,當開通共享文件夾的“完全控制”功能時,系統(tǒng)的啟動速度也會受到一定程度 的影響。
為此,當我們不希望自己的共享資源讓別人隨意編輯修改時,只需要簡單地將共享文件夾的屬性設(shè)置為“只讀”就可以了,而不要想當然地將它設(shè)置成“完 全共享”,畢竟在這種訪問屬性下,共享文件夾的安全不但得不到保證,而且還會影響系統(tǒng)的啟動速度。要將目標共享文件夾的“完全控制”功能屏蔽掉的話,可以 按照如下步驟進行操作:
首先打開系統(tǒng)的資源管理器窗口,并在該窗口中找到目標共享文件夾,然后用鼠標右鍵單擊對應(yīng)文件夾圖標,從其后出現(xiàn)的快捷菜單中選擇“共享和安全”命令選項,打開到目標共享文件夾的屬性設(shè)置窗口。
其次單擊該屬性設(shè)置窗口中的“安全”標簽,打開標簽設(shè)置頁面,在該頁面的“組或用戶名稱”列表框中,選中自己經(jīng)常登錄系統(tǒng)的那個特定用戶帳號,例如這里筆者選擇的是“ower”帳號。
接下來在對應(yīng)“ower的權(quán)限”列表框中,選中“完全控制”項目,并在對應(yīng)該選項的“允許”方框中取消選中狀態(tài),這樣我們就能將目標共享文件夾 的“完全控制”功能給屏蔽掉了,之后根據(jù)實際訪問需要,開通目標共享文件夾的“讀取”權(quán)限或“寫入”權(quán)限,最后單擊“確定”按鈕,相信這么一來系統(tǒng)的啟動 速度就能更進一步了。
3、屏蔽自動搜索功能
當啟動安裝有Windows XP系統(tǒng)的計算機時,該計算機一般會自做主張地搜索局域網(wǎng)環(huán)境中的所有共享資源,很顯然這種自做主張的“行為”也會影響計算機系統(tǒng)的快速啟動。為了提高系統(tǒng)啟動速度,我們可以按照如下方法將本地系統(tǒng)自動搜索共享資源的功能屏蔽掉:
首先打開本地系統(tǒng)的資源管理器窗口,單擊該窗口菜單欄中的“工具”選項,從其后出現(xiàn)的下拉列表中單擊“文件夾選項”,進入到系統(tǒng)的文件夾選項設(shè)置界面,單擊其中的“查看”標簽,打開選項設(shè)置窗口;找到該窗口中的“自動搜索網(wǎng)絡(luò)文件夾和打印機”選項,并將該選項前面方框中的勾號取消,再單擊一下“確定”按鈕,這樣的話該計算機系統(tǒng)下次啟動時就不會耗費時間去自動搜索局域網(wǎng)環(huán)境中的其他共享資源了,那么系統(tǒng)啟動速度應(yīng)該就會明顯提升許多。
4、屏蔽自動分配功能
這里所提到的“自動分配功能”,其實指的是Windows系統(tǒng)在默認狀態(tài)下為本地網(wǎng)卡設(shè)備自動分配IP地址的功能;一旦將本地網(wǎng)卡的IP地址設(shè) 置成自動獲取的話,那么計算機系統(tǒng)每次啟動時,都會耗費一定的時間向局域網(wǎng)網(wǎng)絡(luò)中的DHCP服務(wù)器申請可以使用的動態(tài)IP地址,要是訪問不到DHCP服務(wù) 器時,計算機系統(tǒng)還會嘗試反復(fù)連接、訪問DHCP服務(wù)器,直到訪問超時為止,這么一來系統(tǒng)的啟動速度將會受到非常嚴重的影響,甚至會出現(xiàn)系統(tǒng)假死狀態(tài)。為 了避免系統(tǒng)在啟動過程中耗費時間去連接、訪問DHCP服務(wù)器,我們只要事先為網(wǎng)卡設(shè)備設(shè)置好一個可以使用的靜態(tài)IP地址就可以了,為網(wǎng)卡設(shè)備分配靜態(tài)IP 地址可以按照如下步驟進行操作:
首先依次單擊“開始”/“設(shè)置”/“網(wǎng)絡(luò)連接”/“本地連接”命令,直接進入到本地系統(tǒng)的“本地連接”屬性設(shè)置界面,在該設(shè)置界面的“常規(guī)”標 簽頁面中,選中“Internet協(xié)議(TCP/IP)”選項,并單擊對應(yīng)頁面中的“屬性”按鈕,打開屬性設(shè)置界面,將該設(shè)置界面中的“使用下面的IP地 址”選項選中,同時為網(wǎng)卡設(shè)備指定一個與ADSL設(shè)備地址同處一個子網(wǎng)的IP地址;比方說,ADSL設(shè)備的IP地址一般為“192.168.1.1”,那 么我們就可以將網(wǎng)卡IP地址設(shè)置為“192.168.1.11”,同時將子網(wǎng)掩碼地址設(shè)置成“255.255.255.0”,網(wǎng)關(guān)地址設(shè)置為 “192.168.1.1”。
接下來再將“使用下面的DNS服務(wù)器地址”選中,然后將本地ISP的真實DNS服務(wù)器IP地址填寫在這里,比方說,ISP真實的DNS地址要是 為“61.172.7.1”時,那我們就可以將該地址填寫在這里,同時單擊一下“確定”,以便將上面的IP地址參數(shù)保存起來,相信這么一來計算機系統(tǒng)日后 就不需要在啟動的時候花時間訪問DHCP服務(wù)器了,那么系統(tǒng)啟動速度肯定會更上一層樓的。
5、屏蔽網(wǎng)絡(luò)映射功能
為了方便每次開機后就能快速訪問到對方計算機中的共享文件夾,許多人往往會通過網(wǎng)絡(luò)映射功能將對方的共享文件夾映射成本地計算機中的一個磁盤分 區(qū)。這種方式雖然給共享訪問帶來了很大方便,但是它給系統(tǒng)的啟動帶來了不小的影響,畢竟系統(tǒng)在每次啟動時都需要耗費時間去搜索、掃描、連接對方共享文件 夾,實際上我們并不是每次開機時都需要訪問對方共享文件夾,很明顯隨意開通共享文件夾的網(wǎng)絡(luò)映射功能,會嚴重拖慢計算機系統(tǒng)的啟動速度。
為了讓系統(tǒng)啟動速度不受影響,我們可以按照如下操作步驟將本地計算機中暫時不用的網(wǎng)絡(luò)映射連接斷開:
首先用鼠標雙擊系統(tǒng)桌面中的“我的電腦”圖標,在其后彈出的窗口中單擊菜單欄中的“工具”項目,從隨后出現(xiàn)的下拉菜單中執(zhí)行“斷開網(wǎng)絡(luò)驅(qū)動器”命令,之后選中其中一個暫時不用的網(wǎng)絡(luò)驅(qū)動器分區(qū)盤符,再單擊“確定”按鈕就可以了。
當然,我們也可以直接使用“net use”命令實現(xiàn)斷開網(wǎng)絡(luò)映射連接的目的,在使用這種方法屏蔽網(wǎng)絡(luò)映射功能時,只需要先打開系統(tǒng)的運行對話框,并在其中執(zhí)行“cmd”字符串命令,將系統(tǒng) 界面切換到MS-DOS命令行狀態(tài);接著在DOS提示符下執(zhí)行“net use x: /del”字符串命令,就能將網(wǎng)絡(luò)磁盤分區(qū)為“X”的網(wǎng)絡(luò)映射連接斷開了,要想快速地將本地計算機中所有的網(wǎng)絡(luò)映射連接斷開的話,只需要執(zhí)行“net use * /del”字符串命令就可以了。
Windows也不完美!XP中的28個煩惱揭密
作者:佚名 來源:InterNet 加入時間:2007-5-10
Windows XP比它以前的系統(tǒng)更加穩(wěn)定和安全(讓我們從容面對這并不是太多的問題),但它還是有讓人不滿意的地方。如果你還在XP上耗費時間,那你會碰到很多需要修補的非常白癡的小問題,從啟動緩慢到圖標跟你捉秘藏等等。而其中的一些問題無法得到很好的修復(fù),似乎我們只能等待下一個版本的Windows了。出路其實就在我們的前方:我們會給大家介紹修復(fù)你XP缺陷的方法,讓你能夠更加舒適地使用你的電腦。
加速Windows的啟動
煩惱:我在自己的系統(tǒng)上安裝了一些應(yīng)用程序,但是在Windows啟動時會自動加載它們,讓我的系統(tǒng)啟動速度慢得像烏龜在爬一樣。更讓人氣憤的是這些新安裝的應(yīng)用程序居然也沒提供能夠取消自動加載功能的選項。
對策:如果你在開始菜單無法找到這個程序的(或者根本就無法從開始菜單里面啟動這個程序)關(guān)閉自動運行的設(shè)置項,那可以試著用Windows的系統(tǒng)配置工具來手動阻止它的自動運行。點擊“開始-運行”,在打開后面輸入msconfig后點擊確定。在彈出的窗口里面選擇“啟動”頁,取消你想要阻止自動運行選項前面的勾選標后點確定,然后選擇重啟電腦。當你重啟電腦后系統(tǒng)配置工具會彈出個煩人的測試模式窗口。如果沒有什么問題的話就選擇“下次啟動不顯示這個信息及彈出系統(tǒng)配置工具”后確定即可。
將備份帶回家
煩惱:在我辦公室電腦上的Windows XP專業(yè)版中自帶了備份工具(點擊“開始-程序-附件-系統(tǒng)工具”)。但在我的家用版XP上我一直在苦苦尋找這樣一款備份工具而沒有結(jié)果。微軟把它藏哪去了?
對策:幸好Windows XP家用版的安裝光盤里面有這個備份工具。要安裝它,進入光盤根目錄valueadd msftntbackup這個文件夾,在ntbackup.msi這個文件上點右鍵,選擇安裝。如果你像我這樣只能找到自己電腦的恢復(fù)光盤而不是XP的安裝光盤的話,你可以去硬盤上Windows安裝路徑下valueaddmsftntbackup尋找。如果你的系統(tǒng)支持數(shù)據(jù)光盤寫入,你可以通過你的CD-R/RW刻錄機來備份。
清除臨時文件
煩惱:瀏覽網(wǎng)頁、安裝軟件或進行一些正常的Windows操作都會產(chǎn)生大量無用的臨時文件在一個你難以發(fā)現(xiàn)的臨時文件夾里面(一般都在系統(tǒng)盤的Documents and SettingsusernameLocal SettingsTemp這個路徑下)。Windows讓人不滿意的是,當你選擇刪除臨時文件時,這個文件夾里的內(nèi)容卻會被忽略。
對策:在Windows資源管理器中的C盤上點右鍵(其他盤符也可)選擇屬性,在常規(guī)選項里面會看見“磁盤清理”按鈕。點擊“磁盤清理”來刪除一些無用的文件以獲得更多有用的磁盤空間,但它并沒有刪除在系統(tǒng)盤Local Settings目錄下的臨時文件。所以我們還不得不再手動刪除這些文件。刪除這些文件前,關(guān)閉所有的應(yīng)用程序,進入這個文件夾,按“Ctrl+A”全選這些文件,然后刪除即可。
當Windows提示你的硬盤上已沒有任何臨時文件時,不用輕信它。自己手動找到這些臨時文件并刪除它們。
找出隱藏的文件和文件擴展名
煩惱:Windows XP可能認為我不需要查看隱藏的文件和文件擴展名。你認為呢?當然大部分時間確實是這樣的。在我查看自己某個文件夾下的JPEG或BMP圖片的情況下,這一設(shè)置是快捷、有效的。但是病毒也有機會利用這一隱藏的默認屬性來引誘我進入它們的圈套。在不顯示文件擴展名的情況下,我可能會點擊我電子郵件中一個叫SafePic.jpg的圖像文件,但它其實是一個名為SafePic.jpg.exe的一個可執(zhí)行文件。
對策:要顯示所有文件的擴展名,打開資源管理器,選擇上面的“文件-文件夾選項-查看”,去除“隱藏已知文件類型的擴展名”和“顯示所有文件和文件夾” 勾選,然后確定。
終止無響應(yīng)但又占用系統(tǒng)資源的任務(wù)
煩惱:我已經(jīng)關(guān)閉了所有的應(yīng)用程序,但還是有一個正在運行的應(yīng)用程序吞噬了我所有的系統(tǒng)資源,讓系統(tǒng)運行變慢,我該怎么辦?
對策:可能引發(fā)這一狀況的原因是一些程序或任務(wù)出錯,但又在不停運行而沒有被關(guān)閉,但它們又沒有顯示在桌面或任務(wù)欄,所以你無法關(guān)閉它們。要關(guān)閉這些耗費CPU資源的東西,首先要關(guān)閉所有應(yīng)用程序,按下“Ctrl+Alt+Delete”彈出任務(wù)管理器后,你就可以關(guān)閉它們。下拉進程列表以尋找那個占用系統(tǒng)資源太多的任務(wù),找到后,選中它后點擊結(jié)束進程。不要在意系統(tǒng)剩余的進程,它們只是在任務(wù)管理器里面占用很少的資源百分比。
啟用休眠
煩惱:我想讓自己的筆記本電腦啟動更加迅速。但是在默認設(shè)置中,無論是關(guān)機還是待機模式都對筆記本電腦電池的續(xù)航能力影響太大。
對策:現(xiàn)在有第三個選擇方案:休眠,在Windows關(guān)機時把系統(tǒng)當前狀態(tài)寫入到硬盤中。從休眠狀態(tài)下開機的速度比從關(guān)機狀態(tài)下開機快,而且很節(jié)省電池的電量。但是你必須手動啟用這一功能。進入控制面板的“性能和維護”類別選項里面,打開電源選項,選擇休眠選項,勾選啟用休眠,即可。
當你啟用休眠時請牢記三點:你必須有足夠的硬盤空間(我們建議至少應(yīng)該是物理內(nèi)存的1.5倍大小);你必須以管理員或高權(quán)限用戶身份登錄; 你必須安裝有最新版本的Windows,驅(qū)動和應(yīng)用程序。(Windows XP SP2修正了使用1GB內(nèi)存下的休眠問題;但是SP2還是不停提示休眠錯誤,如果把內(nèi)存增大到1.5GB或更大即解決。微軟宣稱他們?nèi)栽趯で蠼鉀Q這個錯誤的辦法。)
第二篇:潤滑油系統(tǒng)啟動總結(jié)
潤滑油系統(tǒng)啟動總結(jié)
檢修后潤滑油系統(tǒng)的啟動,檢查檢修工作已結(jié)束或者工作票已壓回,具備啟動條件。因為二期凈郵箱在#4機凝補水箱旁邊,所以油質(zhì)一般都不合格,先應(yīng)該聯(lián)系化學對油質(zhì)進行化驗。#
3、#4共用一套油儲存系統(tǒng),所以一般在補油時一定要注意先把系統(tǒng)查清楚。要把正在運行的機組完全隔離開,以防在補油過程中造成機組油位波動從而發(fā)生事故。
在補油過程中,先就地檢查補油泵送電正常(#4機汽機0米MCC C段)。將補油系統(tǒng)油路導通后開始對油箱進行補油,這時候可以先將主油箱排煙風機起起來有利于補油。檢修后補油要先把油箱油位補到+300以上(就地油位計跟DCS顯示一致)。檢查油箱電加熱已送電,當油溫低于35 ℃時啟動電加熱。檢查排煙風機運行正常。檢查主機直流油泵、交流油泵送電正常。檢查關(guān)閉空側(cè)密封油高、低備用油源手動門。就地檢查潤滑油系統(tǒng)油路導通,具備啟動條件。遠方啟動直流潤滑油泵,當油箱油位緩慢下降并最終穩(wěn)定。說明油路注油完成,這時候要對系統(tǒng)全面檢查一遍,確保沒有漏油。系統(tǒng)穩(wěn)定后啟動交流潤滑油泵,停止直流潤滑油泵。啟動注意事項:
(1):必須要對敬友祥油質(zhì)進行化驗,因為露天風吹雨曬及其可能油變質(zhì)。
(2):要對#
3、#4機潤滑油系統(tǒng)特別熟悉,最好先拿系統(tǒng)圖做好三講,以防誤操作造成正常運行的機組油位下降,造成事故擴大。(3):啟動潤滑油之前一定要檢查空側(cè)密封油的高、低壓備用油源手動在關(guān)閉狀態(tài),以防發(fā)電機進油。
(4):啟動后一定要對冷卻器進行檢查,觀察底部有無漏油,最近這幾年起潤滑油系統(tǒng)都發(fā)生過漏油現(xiàn)象。
(5):潤滑油系統(tǒng)用直流油泵注油時,等系統(tǒng)穩(wěn)定后就切換到交流潤滑油泵運行,直流油泵不能運行時間過長,以防油泵損壞。
第三篇:Android系統(tǒng)啟動源代碼調(diào)查分析
Android系統(tǒng)啟動調(diào)查。
目的:Android程序入口在哪里?Mainifest配置文件如何加載實例化?從系統(tǒng)層到應(yīng)用層如何使用?
目標從系統(tǒng)角度來了解Android啟動過程,通過下載源代碼并且根據(jù)源代碼從底層開始跟蹤,跟著方法走一遍Android啟動過程。了解Zygote進程是什么?
開機一開始:Linux啟動這一層,主要包括了兩塊:BootLoader(嵌入式系統(tǒng)的引導程序)和Kernel(Linux內(nèi)核層,驅(qū)動層)第二塊:Android系統(tǒng)啟動。
我們都知道,Linux系統(tǒng)啟動,定義了一個Init.rc這個系統(tǒng)啟動的配置文件(放在System/bin文件下面)。
Init.rc啟動的時候,最開始啟動了SystemManager守護進程,它的源代碼是一個Java文件,守護進程是一個與界面無關(guān),會持續(xù)運行在后臺,用來接收響應(yīng),并且維持系統(tǒng)運營的。
在啟動servicemanager的同時,再來啟動Zygote,Zygote實際上啟動的是:app_main.cpp的系統(tǒng)文件.這個文件的main()方法,會調(diào)用Android_Runtime.cpp的文件中的start()方法,這個方法通過JNI機制,來調(diào)用ZygoteInit.java孵化器初始文件,這個文件的Main()函數(shù),將會去調(diào)用所有進程。
這個ZygoteInit文件的main()函數(shù),這個函數(shù)通過JNI機制調(diào)用了FrameWrok中的SystemServer文件,這個文件有三個函數(shù):main(),init1()和init2()方法。
Init1()方法會通過JNI機制再去調(diào)用com_Android__server_SystemService.java的原生態(tài)文件,去實現(xiàn)系統(tǒng)初始化的操作,(調(diào)用System_init.cpp)。
當系統(tǒng)初始化工作做完之后,系統(tǒng)反過來會調(diào)用SystemServer文件下面的init2()方法,會通過runtime方法調(diào)用ServerThread進程去調(diào)用激活其他的所有進程。
第三塊:應(yīng)用程序啟動(下次再講)。
使用工具:【代碼分析工具】source Insight 【源代碼】 Android 源代碼包
操作步驟:
在下載好Android SDK 安裝包之后(如果沒有下載好請移步這里)
【配置代碼分析工具】
打開source Insight 軟件,來配置Android源代碼。
“項目”→“新建項目”
在“新項目名”填寫:“Android 14”(Android 第14個版本,代表Android V4.0.3)在“項目文件儲存位置”填寫:SDK源代碼包的位置
繼續(xù)進行配置,點擊確定。
選中右邊的所有文件夾,點擊“添加所有”按鈕,將這個版本的源代碼全部導入。
應(yīng)用級別:選中將所有的子集目錄,下級子目錄中的所有文件都導入查找項目。
進行檢索。。。
一共找到了“213720”個文件,是否導入?選中“Yes”
導入文件,索引建立
這時候,查看正下方,項目文件(213720)已經(jīng)全部導入,項目準備完畢。可以進行調(diào)查了。
這時候你看到的右邊工具欄,就是我們可以用來方便查找的搜索欄,輸入對應(yīng)的關(guān)鍵字即可。
切入正題,查找Android系統(tǒng)啟動文件
【查找Init文件】啟動方法會初始化MainiFest.xml配置文件,配置文件再去調(diào)用里面的配置,但是啟動方法何時啟動的調(diào)查,還未找到源頭,只知道一切事物的源頭,從這里開始。
原代碼如下:
service console /system/bin/sh(啟動Linux內(nèi)核)
console
disabled
user shell
group log
on property:ro.secure=0
start console
# adbd is controlled by the persist.service.adb.enable system property service adbd /sbin/adbd
disabled
# adbd on at boot in emulator on property:ro.kernel.qemu=1
start adbd
on property:persist.service.adb.enable=1
start adbd
on property:persist.service.adb.enable=0
stop adbd
service servicemanager /system/bin/servicemanager(啟動服務(wù)管理進程)
user system
critical
onrestart restart zygote
onrestart restart media
service vold /system/bin/vold
socket vold stream 0660 root mount
ioprio be 2
service netd /system/bin/netd
socket netd stream 0660 root system
socket dnsproxyd stream 0660 root inet
service debuggerd /system/bin/debuggerd
service ril-daemon /system/bin/rild
socket rild stream 660 root radio
socket rild-debug stream 660 radio system
user root
group radio cache inet misc audio sdcard_rw
service zygote /system/bin/app_process-Xzygote /system/bin--zygote--start-system-server
socket zygote stream 666
onrestart write /sys/android_power/request_state wake
onrestart write /sys/power/state on
onrestart restart media
onrestart restart netd
OK,現(xiàn)在先調(diào)查(ServerManager)這個啟動進程。
在system/core/libsysutils/src 目錄下(系統(tǒng)級啟動進程)
(啟動孵化器進程)
在左側(cè)點擊start方法
這就是守護進程中的源代碼之一,start()方法 ServiceManager::ServiceManager(){ } int ServiceManager::start(const char *name){ //如果進程已經(jīng)啟動,那么打印日志:“XX進程已經(jīng)啟動”
if(isRunning(name)){
SLOGW(“Service '%s' is already running”, name);
return 0;
}
SLOGD(“Starting service '%s'”, name);
property_set(“ctl.start”, name);
int count = 200;
while(count--){
sched_yield();
if(isRunning(name))
break;
}
if(!count){
SLOGW(“Timed out waiting for service '%s' to start”, name);
errno = ETIMEDOUT;
return-1;
}
SLOGD(“Sucessfully started '%s'”, name);
return 0;}
再來看同時啟動的app_main的源代碼,我們?nèi)ゲ榭匆幌滤膍ain函數(shù)
int main(int argc, const char* const argv[]){
// These are global variables in ProcessState.cpp
mArgC = argc;
mArgV = argv;
mArgLen = 0;
for(int i=0;i mArgLen += strlen(argv[i])+ 1; } mArgLen--; AppRuntime runtime; const char *arg; const char *argv0; argv0 = argv[0]; // Process command line arguments // ignore argv[0] argc--; argv++; // Everything up to '--' or first non '-' arg goes to the vm int i = runtime.addVmArguments(argc, argv); // Next arg is parent directory if(i < argc){ runtime.mParentDir = argv[i++]; } // Next arg is startup classname or “--zygote” if(i < argc){ arg = argv[i++]; if(0 == strcmp(“--zygote”, arg)){ bool startSystemServer =(i < argc)? strcmp(argv[i], “--start-system-server”)== 0 : false; setArgv0(argv0, “zygote”); //設(shè)置了一個進程名叫zygote的進程,通過runtime來啟動ZygoteInit文件中的startSystemServer方法 set_process_name(“zygote”); runtime.start(“com.android.internal.os.ZygoteInit”,startSystemServer); } else { set_process_name(argv0); runtime.mClassName = arg; // Remainder of args get passed to startup class main() runtime.mArgC = argc-i; runtime.mArgV = argv+i; LOGV(“App process is starting with pid=%d, class=%s.n”,getpid(), runtime.getClassName()); runtime.start(); } } else { LOG_ALWAYS_FATAL(“app_process: no class name or--zygote supplied.”); fprintf(stderr, “Error: no class name or--zygote supplied.n”); app_usage(); return 10; } } 調(diào)查一下runtime的類。AppRuntime,這就是android系統(tǒng)的運行時類,它啟動了zygote孵化器進程,用來孵化Davlik虛擬機的。 runtime.start(“com.android.internal.os.ZygoteInit”,startSystemServer);所涉及到的ZygoteInit文件。 找到ZygoteInit文件(FrameWork里面的一個java類)。先去看看Main函數(shù)。 public static void main(String argv[]){ try { VMRuntime.getRuntime().setMinimumHeapSize(5 * 1024 * 1024); // Start profiling the zygote initialization.SamplingProfilerIntegration.start(); registerZygoteSocket(); EventLog.writeEvent(LOG_BOOT_PROGRESS_PRELOAD_START,SystemClock.uptimeMillis()); preloadClasses(); //cacheRegisterMaps(); preloadResources(); EventLog.writeEvent(LOG_BOOT_PROGRESS_PRELOAD_END,SystemClock.uptimeMillis()); // Finish profiling the zygote initialization.SamplingProfilerIntegration.writeZygoteSnapshot(); // Do an initial gc to clean up after startup gc(); // If requested, start system server directly from Zygote if(argv.length!= 2){ throw new RuntimeException(argv[0] + USAGE_STRING); } if(argv[1].equals(“true”)){ //如果輸入?yún)?shù)為真,我們就啟動系統(tǒng)服務(wù) startSystemServer(); } else if(!argv[1].equals(“false”)){ throw new RuntimeException(argv[0] + USAGE_STRING); } Log.i(TAG, “Accepting command socket connections”); if(ZYGOTE_FORK_MODE){ //如果孵化器一直是交叉模式,就啟動運行交叉模式函數(shù);否則就選擇另一個循環(huán)模式 runForkMode(); } else { runSelectLoopMode(); } closeServerSocket(); } catch(MethodAndArgsCaller caller){ caller.run(); } catch(RuntimeException ex){ Log.e(TAG, “Zygote died with exception”, ex); closeServerSocket(); throw ex; } } 我們繼續(xù)查看,如果參數(shù)為真的情況下,ZygoteInit文件中的,startSystemServer()函數(shù)的源代碼。 /** * Prepare the arguments and fork for the system server process.*/ private static boolean startSystemServer() throws MethodAndArgsCaller, RuntimeException { /* Hardcoded command line to start the system server */ String args[] = { “--setuid=1000”,“--setgid=1000”,“--setgroups=1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1018,3001,3002,3003”,“--capabilities=130104352,130104352”,“--runtime-init”,“--nice-name=system_server”,“com.android.server.SystemServer”,//這個虛擬機的名字叫system Server }; ZygoteConnection.Arguments parsedArgs = null; int pid; try { parsedArgs = new ZygoteConnection.Arguments(args); /* * Enable debugging of the system process if *either* the command line flags * indicate it should be debuggable or the ro.debuggable system property * is set to “1” */ int debugFlags = parsedArgs.debugFlags; if(“1”.equals(SystemProperties.get(“ro.debuggable”))) debugFlags |= Zygote.DEBUG_ENABLE_DEBUGGER; /* Request to fork the system server process */ pid = Zygote.forkSystemServer(parsedArgs.uid, parsedArgs.gid,parsedArgs.gids, debugFlags, null,parsedArgs.permittedCapabilities,parsedArgs.effectiveCapabilities); } catch(IllegalArgumentException ex){ throw new RuntimeException(ex); } /* For child process */ if(pid == 0){ handleSystemServerProcess(parsedArgs); } return true; } 我們繼續(xù)去查看 system Server的源代碼 main函數(shù): /** * This method is called from Zygote to initialize the system.This will cause the native * services(SurfaceFlinger, AudioFlinger, etc..)to be started.After that it will call back * up into init2()to start the Android services.*/ native public static void init1(String[] args);//Init1()函數(shù)卻是個空函數(shù) public static void main(String[] args){ if(System.currentTimeMillis()< EARLIEST_SUPPORTED_TIME){ // If a device's clock is before 1970(before 0), a lot of // APIs crash dealing with negative numbers, notably // java.io.File#setLastModified, so instead we fake it and // hope that time from cell towers or NTP fixes it // shortly.Slog.w(TAG, “System clock is before 1970;setting to 1970.”); SystemClock.setCurrentTimeMillis(EARLIEST_SUPPORTED_TIME); } if(SamplingProfilerIntegration.isEnabled()){ SamplingProfilerIntegration.start(); timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run(){ SamplingProfilerIntegration.writeSnapshot(“system_server”); } }, SNAPSHOT_INTERVAL, SNAPSHOT_INTERVAL); } // The system server has to run all of the time, so it needs to be // as efficient as possible with its memory usage.VMRuntime.getRuntime().setTargetHeapUtilization(0.8f); System.loadLibrary(“android_servers”); init1(args);// main()函數(shù)中,會調(diào)用到 init1()的方法。 } public static final void init2(){ Slog.i(TAG, “Entered the Android system server!”); Thread thr = new ServerThread(); thr.setName(“android.server.ServerThread”); thr.start(); } 因為通過調(diào)查發(fā)現(xiàn),SystemServer文件的main()函數(shù)調(diào)用的init1()函數(shù),是一個空方法,native public static void init1(String[] args); 但是根據(jù)JNI調(diào)用機制,我們可以在同名文件夾(framework/base/services/)下找到JNL目錄,然后找到和系統(tǒng)相關(guān)的com_android_server_SystemServer.java文件 使用“C”的動態(tài)鏈接嗲用system_init 的方法。它去回調(diào)Init2的方法 我們繼續(xù)看看SystemServer方法的Init2()方法是看什么用的。 去調(diào)查一下ServerThread()方法是干什么用的?這個內(nèi)部類ServerThread就是啟動,并且實例化每一個系統(tǒng)進程的線程類 class ServerThread extends Thread { private static final String TAG = “SystemServer”; private final static boolean INCLUDE_DEMO = false; private static final int LOG_BOOT_PROGRESS_SYSTEM_RUN = 3010; private ContentResolver mContentResolver; private class AdbSettingsObserver extends ContentObserver { public AdbSettingsObserver(){ super(null); } @Override public void onChange(boolean selfChange){ boolean enableAdb =(Settings.Secure.getInt(mContentResolver,Settings.Secure.ADB_ENABLED, 0)> 0); // setting this secure property will start or stop adbd SystemProperties.set(“persist.service.adb.enable”, enableAdb ? “1” : “0”); } } @Override public void run(){ EventLog.writeEvent(EventLogTags.BOOT_PROGRESS_SYSTEM_RUN,SystemClock.uptimeMillis()); Looper.prepare(); android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_FOREGROUND); BinderInternal.disableBackgroundScheduling(true); android.os.Process.setCanSelfBackground(false); // Check whether we failed to shut down last time we tried.{ final String shutdownAction = SystemProperties.get(ShutdownThread.SHUTDOWN_ACTION_PROPERTY, “"); if(shutdownAction!= null && shutdownAction.length()> 0){ boolean reboot =(shutdownAction.charAt(0)== '1'); final String reason; if(shutdownAction.length()> 1){ reason = shutdownAction.substring(1, shutdownAction.length()); } else { reason = null; } ShutdownThread.rebootOrShutdown(reboot, reason); } } String factoryTestStr = SystemProperties.get(”ro.factorytest“); int factoryTest = ”“.equals(factoryTestStr)? SystemServer.FACTORY_TEST_OFF : Integer.parseInt(factoryTestStr); LightsService lights = null; PowerManagerService power = null; BatteryService battery = null; ConnectivityService connectivity = null; IPackageManager pm = null; Context context = null; WindowManagerService wm = null; BluetoothService bluetooth = null; BluetoothA2dpService bluetoothA2dp = null; HeadsetObserver headset = null; DockObserver dock = null; UsbService usb = null; UiModeManagerService uiMode = null; RecognitionManagerService recognition = null; ThrottleService throttle = null; // Critical services...try { Slog.i(TAG, ”Entropy Service“); ServiceManager.addService(”entropy“, new EntropyService()); Slog.i(TAG, ”Power Manager“); power = new PowerManagerService(); ServiceManager.addService(Context.POWER_SERVICE, power); Slog.i(TAG, ”Activity Manager“); context = ActivityManagerService.main(factoryTest); Slog.i(TAG, ”Telephony Registry“); ServiceManager.addService(”telephony.registry“, new TelephonyRegistry(context)); AttributeCache.init(context); Slog.i(TAG, ”Package Manager“); pm = PackageManagerService.main(context,factoryTest!= SystemServer.FACTORY_TEST_OFF); ActivityManagerService.setSystemProcess(); mContentResolver = context.getContentResolver(); // The AccountManager must come before the ContentService try { Slog.i(TAG, ”Account Manager“); ServiceManager.addService(Context.ACCOUNT_SERVICE,new AccountManagerService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Account Manager“, e); } Slog.i(TAG, ”Content Manager“); ContentService.main(context,factoryTest == SystemServer.FACTORY_TEST_LOW_LEVEL); Slog.i(TAG, ”System Content Providers“); ActivityManagerService.installSystemProviders(); Slog.i(TAG, ”Battery Service“); battery = new BatteryService(context); ServiceManager.addService(”battery“, battery); Slog.i(TAG, ”Lights Service“); lights = new LightsService(context); Slog.i(TAG, ”Vibrator Service“); ServiceManager.addService(”vibrator“, new VibratorService(context)); // only initialize the power service after we have started the // lights service, content providers and the battery service.power.init(context, lights, ActivityManagerService.getDefault(), battery); Slog.i(TAG, ”Alarm Manager“); AlarmManagerService alarm = new AlarmManagerService(context); ServiceManager.addService(Context.ALARM_SERVICE, alarm); Slog.i(TAG, ”Init Watchdog“); Watchdog.getInstance().init(context, battery, power, alarm,ActivityManagerService.self()); Slog.i(TAG, ”Window Manager“); wm = WindowManagerService.main(context, power,factoryTest!= SystemServer.FACTORY_TEST_LOW_LEVEL); ServiceManager.addService(Context.WINDOW_SERVICE, wm); ((ActivityManagerService)ServiceManager.getService(”activity“)).setWindowManager(wm); // Skip Bluetooth if we have an emulator kernel // TODO: Use a more reliable check to see if this product should // support Bluetooth-see bug 988521 if(SystemProperties.get(”ro.kernel.qemu“).equals(”1“)){ Slog.i(TAG, ”Registering null Bluetooth Service(emulator)“); ServiceManager.addService(BluetoothAdapter.BLUETOOTH_SERVICE, null); } else if(factoryTest == SystemServer.FACTORY_TEST_LOW_LEVEL){ Slog.i(TAG, ”Registering null Bluetooth Service(factory test)“); ServiceManager.addService(BluetoothAdapter.BLUETOOTH_SERVICE, null); } else { Slog.i(TAG, ”Bluetooth Service“); bluetooth = new BluetoothService(context); ServiceManager.addService(BluetoothAdapter.BLUETOOTH_SERVICE, bluetooth); bluetooth.initAfterRegistration(); bluetoothA2dp = new BluetoothA2dpService(context, bluetooth); ServiceManager.addService(BluetoothA2dpService.BLUETOOTH_A2DP_SERVICE,bluetoothA2dp); int bluetoothOn = Settings.Secure.getInt(mContentResolver,Settings.Secure.BLUETOOTH_ON, 0); if(bluetoothOn > 0){ bluetooth.enable(); } } } catch(RuntimeException e){ Slog.e(”System“, ”Failure starting core service“, e); } DevicePolicyManagerService devicePolicy = null; StatusBarManagerService statusBar = null; InputMethodManagerService imm = null; AppWidgetService appWidget = null; NotificationManagerService notification = null; WallpaperManagerService wallpaper = null; LocationManagerService location = null; if(factoryTest!= SystemServer.FACTORY_TEST_LOW_LEVEL){ try { Slog.i(TAG, ”Device Policy“); devicePolicy = new DevicePolicyManagerService(context); ServiceManager.addService(Context.DEVICE_POLICY_SERVICE, devicePolicy); } catch(Throwable e){ Slog.e(TAG, ”Failure starting DevicePolicyService“, e); } try { Slog.i(TAG, ”Status Bar“); statusBar = new StatusBarManagerService(context); ServiceManager.addService(Context.STATUS_BAR_SERVICE, statusBar); } catch(Throwable e){ Slog.e(TAG, ”Failure starting StatusBarManagerService“, e); } try { Slog.i(TAG, ”Clipboard Service“); ServiceManager.addService(Context.CLIPBOARD_SERVICE,new ClipboardService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Clipboard Service“, e); } try { Slog.i(TAG, ”Input Method Service“); imm = new InputMethodManagerService(context, statusBar); ServiceManager.addService(Context.INPUT_METHOD_SERVICE, imm); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Input Manager Service“, e); } try { Slog.i(TAG, ”NetStat Service“); ServiceManager.addService(”netstat“, new NetStatService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting NetStat Service“, e); } try { Slog.i(TAG, ”NetworkManagement Service“); ServiceManager.addService(Context.NETWORKMANAGEMENT_SERVICE,NetworkManagementService.create(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting NetworkManagement Service“, e); } try { Slog.i(TAG, ”Connectivity Service“); connectivity = ConnectivityService.getInstance(context); ServiceManager.addService(Context.CONNECTIVITY_SERVICE, connectivity); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Connectivity Service“, e); } try { Slog.i(TAG, ”Throttle Service“); throttle = new ThrottleService(context); ServiceManager.addService(Context.THROTTLE_SERVICE, throttle); } catch(Throwable e){ Slog.e(TAG, ”Failure starting ThrottleService“, e); } try { Slog.i(TAG, ”Accessibility Manager“); ServiceManager.addService(Context.ACCESSIBILITY_SERVICE,new AccessibilityManagerService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Accessibility Manager“, e); } try { /* * NotificationManagerService is dependant on MountService,*(for media / usb notifications)so we must start MountService first.*/ Slog.i(TAG, ”Mount Service“); ServiceManager.addService(”mount“, new MountService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Mount Service“, e); } try { Slog.i(TAG, ”Notification Manager“); notification = new NotificationManagerService(context, statusBar, lights); ServiceManager.addService(Context.NOTIFICATION_SERVICE, notification); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Notification Manager“, e); } try { Slog.i(TAG, ”Device Storage Monitor“); ServiceManager.addService(DeviceStorageMonitorService.SERVICE,new DeviceStorageMonitorService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting DeviceStorageMonitor service“, e); } try { Slog.i(TAG, ”Location Manager“); location = new LocationManagerService(context); ServiceManager.addService(Context.LOCATION_SERVICE, location); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Location Manager“, e); } try { Slog.i(TAG, ”Search Service“); ServiceManager.addService(Context.SEARCH_SERVICE,new SearchManagerService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Search Service“, e); } if(INCLUDE_DEMO){ Slog.i(TAG, ”Installing demo data...“); (new DemoThread(context)).start(); } try { Slog.i(TAG, ”DropBox Service“); ServiceManager.addService(Context.DROPBOX_SERVICE,new DropBoxManagerService(context, new File(”/data/system/dropbox“))); } catch(Throwable e){ Slog.e(TAG, ”Failure starting DropBoxManagerService“, e); } try { Slog.i(TAG, ”Wallpaper Service“); wallpaper = new WallpaperManagerService(context); ServiceManager.addService(Context.WALLPAPER_SERVICE, wallpaper); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Wallpaper Service“, e); } try { Slog.i(TAG, ”Audio Service“); ServiceManager.addService(Context.AUDIO_SERVICE, new AudioService(context)); } catch(Throwable e){ Slog.e(TAG, ”Failure starting Audio Service“, e); } try { Slog.i(TAG, ”Headset Observer“); // Listen for wired headset changes headset = new HeadsetObserver(context); } catch(Throwable e){ Slog.e(TAG, ”Failure starting HeadsetObserver“, e); } try { Slog.i(TAG, ”Dock Observer“); // Listen for dock station changes dock = new DockObserver(context, power); } catch(Throwable e){ Slog.e(TAG, ”Failure starting DockObserver“, e); } try { Slog.i(TAG, ”USB Service“); // Listen for USB changes usb = new UsbService(context); ServiceManager.addService(Context.USB_SERVICE, usb); } catch(Throwable e){ Slog.e(TAG, ”Failure starting UsbService“, e); } try { Slog.i(TAG, ”UI Mode Manager Service"); 各位領(lǐng)導、各位同仁: 大家下午好! 5月12日召開了集團綜合管理信息系統(tǒng)的啟動會,今天在這里又召開了人力資源管理信息系統(tǒng)啟動會,標志著2010年集團信息化建設(shè)進入實質(zhì)性工作階段。 根據(jù)集團信息化建設(shè)總體目標,建立以項目管理為核心(此處項目管理涵蓋建安和房地產(chǎn)兩大主業(yè)的項目管理)、適應(yīng)集團三級管理模式的,推進集團“雙主業(yè)、多板塊”業(yè)務(wù)、加快集團“業(yè)務(wù)國際化、產(chǎn)權(quán)多元化、資本市場化、管理科學化”發(fā)展的、集中統(tǒng)一、高效實用的集團級信息管理系統(tǒng)。集團2010年信息化建設(shè)主要做9項重點工作: 1、開發(fā)、試用、完善項目綜合管理信息系統(tǒng) 2、開發(fā)和完善集團核心業(yè)務(wù)系統(tǒng)軟件,如:人力資源管理信息系統(tǒng)、經(jīng)營系統(tǒng)招投標管理、成本控制信息系統(tǒng)、科技質(zhì)量管控信息系統(tǒng)、檔案管理信息系統(tǒng)等。 3、初步搭建集團級信息管理系統(tǒng)架構(gòu) 4、搭建以報表管理為基礎(chǔ)的集團決策平臺 5、全面更新OA辦公自動化系統(tǒng) 6、集團特級資質(zhì)就位信息化考評達標準備工作 7、集團總部計算機網(wǎng)絡(luò)機房建設(shè) 8、初步建立集團級信息編碼體系 9、集團建筑三維動畫制作的初步規(guī)劃設(shè)想 集團綜合管理信息系統(tǒng)(一期)已全面啟動,包括一個平臺,五個系統(tǒng),即協(xié)同管理平臺、OA辦公自動化系統(tǒng)、人力資源管理信息系統(tǒng)、經(jīng)營系統(tǒng)招投標管理和成本控制信息系統(tǒng)、科技質(zhì)量管控信息系統(tǒng)、檔案管理信息系統(tǒng)。我們要充分認識集團管理信息化的現(xiàn)實意義,一方面是滿足集團管理需求、提高管理科學化水平的實際需要,另一方面是集團特級資質(zhì)就位的迫切需要。做為集團戰(zhàn)略支撐的人力資源管理,是集團長遠發(fā)展的重要保證。人力資源信息系統(tǒng)在集團綜合管理信息系統(tǒng)中占要重要的基礎(chǔ)地位,人力資源信息系統(tǒng)的建設(shè)水平和質(zhì)量將直接影響集團綜合管理信息系統(tǒng)的建設(shè)水平和質(zhì)量。 首先,要保證人力資源信息系統(tǒng)的完整性、準確性、及時性。集團所有信息系統(tǒng)的登錄用戶,都來自人力資源管理信息系統(tǒng)。員工基本信息錄入到人力資源系統(tǒng)之后,集團的每一名員工會擁有一個類似通行證的用戶名和密碼,用來訪問其有權(quán)限的信息系統(tǒng),不用像現(xiàn)在這樣要記住不同信息系統(tǒng)的不同用戶名和密碼。當員工發(fā)生職位變動后,集團各信息系統(tǒng)能夠根據(jù)人力資源系統(tǒng)的員工信息變化進行相應(yīng)的、自動的同步權(quán)限調(diào)整,從而大大提高了集團各信息系統(tǒng)的準確性,避免了大量的重復(fù)工作和權(quán)限管理上的混亂,同時提高了信息的安全性。 其次,要實現(xiàn)人力資源信息系統(tǒng)和集團其它各信息系統(tǒng)的聯(lián)動和集成。實現(xiàn)人力資源信息系統(tǒng)和集團其它各信息系統(tǒng)的聯(lián)動和集成,如人力資源信息系統(tǒng)和項目綜合管理信息系統(tǒng)實現(xiàn)聯(lián)動和集成,可以根據(jù)人力資源信息系統(tǒng)的人員信息,查詢、調(diào)用項目經(jīng)理、技術(shù)負責人、管理人員等的履歷、業(yè)績等資料,完成項目部的組織機構(gòu)的建立,同時可以通過項目綜合管理信息系統(tǒng)對項目經(jīng)理的工程各項指標進行全過程的跟蹤,并且記錄在人力資源信息系統(tǒng)中,從而實現(xiàn)對項目經(jīng)理及項目經(jīng)理部的績效考核。人力資源信息系統(tǒng)和集團其它各信息系統(tǒng)的聯(lián)動和集成,可以實現(xiàn)集團各信息系統(tǒng)的協(xié)同工作,大大提高集團的整體工作效率。 可以說人力資源管理信息系統(tǒng)是集團整體信息化建設(shè)的基礎(chǔ)系統(tǒng),建設(shè)好人力資源管理系統(tǒng),將為集團信息化建設(shè)打好堅實的基礎(chǔ)。集團綜合管理信息系統(tǒng)項目是一項系統(tǒng)工程,需要集團各有關(guān)單位、有關(guān)部門、軟件公司的積極參與和通力配合。有關(guān)單位、有關(guān)部門、軟件公司要服從大局,落實責任,通力配合,形成合力,共同完成綜合管理信息系統(tǒng)項目的開發(fā)工作。我相信在大家的共同努力下,一定能為集團打造一個實用的、成功的、有集團特色的人力資源管理系統(tǒng)。 2010年5月27日星期四 終極優(yōu)化 系統(tǒng)啟動時間減少一半 前些日子我的筆記本開機進程就達到了33個之多占用了139M的內(nèi)存.而且啟動時滾動條居然要滾16次.如此龜速當然不能讓我滿意.摸索著把系統(tǒng)全面整改.現(xiàn)將小小心得給大家分享.系統(tǒng)平臺:主板855GME;CPU CM1.4G;內(nèi)存DDR333 256M*2;集成Intel Extreme2顯卡;日立5400/40G硬盤.優(yōu)化流程如下: 一.系統(tǒng)自動加載優(yōu)化: 開機速度慢主要是系統(tǒng)加載了太多無用的功能,所以先從服務(wù)入手.運行(services.msc)將無用的選項一一關(guān)掉.尤其是把遠程協(xié)助等無聊選項關(guān)閉了.具體設(shè)置如下圖所示.建議把遠程的選項全部關(guān)閉.這樣不僅僅是為了提高速度.更可讓很多病毒流入的通道.不知道會不會用到的設(shè)置為手動.二.應(yīng)用軟件的優(yōu)化: 很多朋友在機子上裝了非常多的應(yīng)用軟件.很多軟件開機是會自動運行的.比如說V8.大量的軟件占用的內(nèi)存比系統(tǒng)還要多.推薦用第三放軟件優(yōu)化.我使用的是優(yōu)化大師6.82版.如圖將不需要自動運行的軟件一一打勾.優(yōu)化掉就可以了.在使用優(yōu)化打師的過程中也總結(jié)了些小經(jīng)驗.這個過會再說.三.系統(tǒng)功能優(yōu)化: 其實這個本可以和第一點寫到一塊的.但是又有點區(qū)別.首先我們可以在文件夾工具里面做點優(yōu)化 強烈建議把尋找網(wǎng)絡(luò)文件夾和打印機的選項關(guān)閉.其他的兩個,建議不要隱藏擴展名.因為很多病毒和木馬都是采用了雙擴展名類似于 *.TXT.EXE的方式騙過系統(tǒng).方便查找病毒.接下來我們可以在我的電腦的屬性里面做點設(shè)置.強烈建議把系統(tǒng)還原完全關(guān)閉.這樣不僅僅是提高速度.而且可以釋放大約0.3G的C盤空間.建議使用GHOST的還原系統(tǒng).關(guān)掉為好.如果要打補丁自己會下載的.這個東西速度慢不說還浪費資源.遠程也關(guān)掉.不過如你需要協(xié)助工作的話必須打開.字體也會拖累你的系統(tǒng) XP系統(tǒng)可以安裝最多1500種字體.我們平時用的最多超不過50種.即使是專業(yè)的美編也用不到系統(tǒng)中的很多字體.但是字體越多.啟動速度就越慢.在C:WINDOWSFonts 中保存的就是字體文件.先把FONT整體打包備用.建議只留下.arial.marlett.micorosoft scans serif regular.mingliu&pmingliu.modern.ms outlook.ms serif 8,10,12,14,18,24.script.simsun& nsimsun.tahoma.times new roman這幾個外國字體.中文字體大家自己選擇.五.XP 預(yù)讀功能: XP和2003系統(tǒng)中新增加的一項稱為(prefetcher)的功能.這是為了提高系統(tǒng)性能而設(shè)計的一種后臺數(shù)據(jù)預(yù)計技術(shù).不同的預(yù)計方式對開機速度影響很大.我們可以在注冊表里修改預(yù)計方式.運行注冊表編輯器(regedit.exe)找到[HKEY_LOCAL_MACHINESYSTEMSurrentControlSetControlSessionManagerMemory ManagementPrefetchParameters]如下圖 可以修改紅框內(nèi)EablePrefetcher 的鍵值: 0 關(guān)閉預(yù)讀 1 只對應(yīng)用程序進行預(yù)讀 只對啟動的項進行預(yù)讀 3 對應(yīng)用程序和啟動選項都進行預(yù)讀 對于目前的主流配置推薦 3 而硬件配置比較低的建議選擇1 如果運行XP都比較勉強的話建議選擇0.同時對C:WINDOWSPrefetch 內(nèi)的文件也要定期清理一次(一般為兩個月左右).否則即使預(yù)讀了速度也會非常的慢.甚至比優(yōu)化前的速度還要慢.六.自動整理啟動文件的碎片 這也是XP系統(tǒng)新增加的功能.為的是在文件啟動前自動的給其排序列.提高啟動的速度.有的朋友可能聽到碎片整理會嚇了一跳.這個和磁盤的碎片整理還是有區(qū)別的.這里指的是在啟動必須的文件給它們排序列以方便下次啟動獲得最快的啟動速度.開啟方法如下:運行(regedit.exe)找到[HKEY_LOCAL_MACHNE_SoftwareMicrosftDfrgBootOptimizefunction] 右擊窗格中的Eenable 選擇修改(Y 為打開.N為關(guān)閉)修改完關(guān)閉修改器.重新啟動電腦即可生效.七.去處殺毒軟件開機掃描 殺毒軟件的開機掃描功能非常的占資源.非常拖系統(tǒng)速度.所以我 就根本沒有用殺毒軟件.裸奔.感覺很爽.拿卡巴專業(yè)5.0來說吧.開機后WINDOWS的啟動加載項會成為病毒的藏身之處.所以卡巴每次都會掃描.實際上每次掃描有點浪費.平時自己手殺就足夠了.取消的方法如下“設(shè)置-手動掃描任務(wù)-掃描系統(tǒng)啟動對象-屬性-啟動對象-設(shè)置-計劃 ”取消“啟動計劃掃描”的勾,即可.其他的軟件也觸類旁通.以上就是我最近優(yōu)化XP的全過程.優(yōu)化完畢之后:開機進程 17 開機內(nèi)存占用 84.2M C盤占用1.9G 開機滾動條滾動3次第四篇:人力資源管理系統(tǒng)啟動會講話范文
第五篇:終極優(yōu)化 系統(tǒng)啟動時間減少一半范文