微軟亞洲技術(shù)中心筆試題
微軟亞洲技術(shù)中心筆試題:
1.進程和線程的差別,
微軟亞洲技術(shù)中心筆試題
。線程是指進程內(nèi)的一個執(zhí)行單元,也是進程內(nèi)的可調(diào)度實體.
與進程的區(qū)別:
(1)調(diào)度:線程作為調(diào)度和分配的基本單位,進程作為擁有資源的基本單位
(2)并發(fā)性:不僅進程之間可以并發(fā)執(zhí)行,同一個進程的多個線程之間也可并發(fā)執(zhí)行
(3)擁有資源:進程是擁有資源的一個獨立單位,線程不擁有系統(tǒng)資源,但可以訪問隸屬于進程的資源.
(4)系統(tǒng)開銷:在創(chuàng)建或撤消進程時,由于系統(tǒng)都要為之分配和回收資源,導致系統(tǒng)的開銷明顯大于創(chuàng)建或撤消線程時的開銷。
2.測試方法
人工測試:個人復查、抽查和會審
機器測試:黑盒測試和白盒測試
2.Heap與stack的差別。
Heap是堆,stack是棧。
Stack的空間由操作系統(tǒng)自動分配/釋放,Heap上的空間手動分配/釋放。
Stack空間有限,Heap是很大的自由存儲區(qū)
C中的malloc函數(shù)分配的內(nèi)存空間即在堆上,C++中對應(yīng)的是new操作符。
程序在編譯期對變量和函數(shù)分配內(nèi)存都在棧上進行,且程序運行過程中函數(shù)調(diào)用時參數(shù)的傳遞也在棧上進行。
3.Windows下的`內(nèi)存是如何管理的?
4.介紹.Net和.Net的安全性。
5.客戶端如何訪問.Net組件實現(xiàn)Web Service?
6.C/C++編譯器中虛表是如何完成的?
7.談?wù)凜OM的線程模型。然后討論進程內(nèi)/外組件的差別。
8.談?wù)処A32下的分頁機制
小頁(4K)兩級分頁模式,大頁(4M)一級
9.給兩個變量,如何找出一個帶環(huán)單鏈表中是什么地方出現(xiàn)環(huán)的?
一個遞增一,一個遞增二,他們指向同一個接點時就是環(huán)出現(xiàn)的地方
10.在IA32中一共有多少種辦法從用戶態(tài)跳到內(nèi)核態(tài)?
通過調(diào)用門,從ring3到ring0,中斷從ring3到ring0,進入vm86等等
11.如果只想讓程序有一個實例運行,不能運行兩個,
資料共享平臺
《微軟亞洲技術(shù)中心筆試題》(http://www.msguai.com)。像winamp一樣,只能開一個窗口,怎樣實現(xiàn)?用內(nèi)存映射或全局原子(互斥變量)、查找窗口句柄..
FindWindow,互斥,寫標志到文件或注冊表,共享內(nèi)存。.
12.如何截取鍵盤的響應(yīng),讓所有的‘a’變成‘b’?
鍵盤鉤子SetWindowsHookEx
13.Apartment在COM中有什么用?為什么要引入?
14.存儲過程是什么?有什么用?有什么優(yōu)點?
我的理解就是一堆sql的集合,可以建立非常復雜的查詢,編譯運行,所以運行一次后,以后再運行速度比單獨執(zhí)行SQL快很多
15.Template有什么特點?什么時候用?
16.談?wù)刉indows DNA結(jié)構(gòu)的特點和優(yōu)點。
17.網(wǎng)絡(luò)編程中設(shè)計并發(fā)服務(wù)器,使用多進程 與 多線程 ,請問有什么區(qū)別?
1,進程:子進程是父進程的復制品。子進程獲得父進程數(shù)據(jù)空間、堆和棧的復制品。
2,線程:相對與進程而言,線程是一個更加接近與執(zhí)行體的概念,它可以與同進程的其他線程共享數(shù)據(jù),但擁有自己的棧空間,擁有獨立的執(zhí)行序列。
兩者都可以提高程序的并發(fā)度,提高程序運行效率和響應(yīng)時間。
線程和進程在使用上各有優(yōu)缺點:線程執(zhí)行開銷小,但不利于資源管理和保護;而進程正相反。同時,線程適合于在SMP機器上運行,而進程則可以跨機器遷移。
編者推薦筆試題目:
理工科企業(yè)招聘筆試題薈萃 凌陽科技C++程序員筆試題 招聘記者編輯的筆試題
【微軟亞洲技術(shù)中心筆試題】相關(guān)文章:
5.微軟筆試題
6.微軟智力筆試題
7.微軟筆試題目