當前位置:學問君>人在職場>綜合指導>

一個北郵牛人面試INTEL的經歷

學問君 人氣:2.84W

一個北郵牛人面試INTEL的經歷

一個北郵牛人面試INTEL的經歷

一個北郵牛人面試INTEL的經歷
中午頭疼的厲害,吐了很多痰,肚子很疼,吃不下東西,眼睛看不遠。但是下午4點半的面試還是需要參加的。
    坐375到了清華西門,還步行了20分鐘纔到了融科資訊中心,很氣派的building,
嚇死我了。中途遇到很多賣盤片的婦女之類,令人很不舒服。
    由於衣服很破,進樓的時候,保安問了我一些問題,我回答的很流利,他允許我
進了樓,坐電梯到8層,看見了intel這幾個字母,才知道找到地方了。一個很pp的小美
女把我引進了一個屋子裏,裏面坐着2個人,一個美國人,一箇中國人,用很友好的目光
看着我。於是,我的很爛的英語開始滔滔不絕的開始了。我先做自我介紹,隨後開始了
嚴峻的考驗!”你對linux熟悉嗎?”美國人問道。我回答“非常熟悉”。"那好,給我
解釋一下進程的內核態和用戶態的切換",我開始了演講“內核使用一個固定的全局頁目
錄表swapper_pg_dir,他的3G以上的高端都被映射好了。。。”。美國人微笑了,感覺
我的回答很專業。“這樣吧,閱讀過linux原始碼嗎?版本多少?”美國人又問了。我回
答“閱讀過,但是對tcp/ip協議棧的代碼閱讀的更仔細”,美國人不停的問,“那你說
說內核是如何load協議棧代碼,是如何響應網卡數據的?”,我想,這太easy了,我講
起了初始化函數net_dev_init,講起了open_softirq,講起了使用hash表註冊不同的協
議,使用dev_add_pack註冊ip協議,當網卡有數據,進行校驗,檢測緩衝是否溢出,隨
後,掛接在cpu的處理隊列上,然後就調_cpu_raise_softirq(),隨後就是bottom_half
的處理了,這個時候那個美國人已經開始不停的點頭了。我補充到,我看到的source
code版本是2.4.18,旁邊的中國人有點妒忌我了,他開炮了,他說“這樣吧,給我寫個
函數吧,你自己實現malloc”,我說,太簡單了,這個函數我已經寫過很多遍了,我5分
鍾寫了出來。他看了之後,說我大體上是對的,但是沒有使用assert檢測,操,事情真
多。中國人微微一笑,問我,加入在linux下一個程序退出,如何能夠執行一點自己的代
碼,我說使用atexit加一個exit handler處理函數,他笑着沒有回答。因爲,我知道,
這個東西說多了就是一個病毒代碼了。美國人看起來,對我很滿意,他找了一個話題,
問我對開源通信有什麼感覺我說,我對開源通信非常make sense,我說,現在一些爛教
授把很簡單的問題複雜化了,實際上,本來都是工程化的問題,通信軟件如果開源的話
,會讓很多人脫穎而出,隨後我讚賞了intel對中國開源社區的支援,他笑得已經合不上
嘴巴了。隨後還問了一些,諸如posix,ipc,共享內存之類的東西,都是很簡單。這裏
就不說了。最後,美國人和中國人把我送出了屋子。
    屋外的漂亮美女正在準備調度面試人員呢,隨後,她讓我等了5分鐘,我順便去了
一下廁所,就進入了一個更大的屋子。裏面有2個人,一個美國女人,一箇中國男人。美
國女人很和藹,中國男人很內向,但是我知道這個男人一定是個linux高手,因爲一般不
善言詞的人能夠當面試官,都是絕對的靠實力而不是口才獲得別人的尊重的。美國女人
讓我自我介紹,我介紹了一下,隨後問起我的愛好,興趣,對linux看法之類,我很輕鬆
的搞定了。突然,中國男人發飈了,“哦,小夥,不錯啊,你對多線程安全是如何看待
的.給我編寫一個線程安全的鏈表吧”,我想,真簡單,我用mutex來控制鏈表插入,刪除
的關鍵代碼區域,很快就搞定了。他說“可以啊,小夥,北郵的研究生,爲什麼不用信
號量呢”,我說“信號量在linux的實現不是很好,裏面有一些bug”,他眼睛掙的很大
,隨後,我舉出了一個信號量在linux實現中的一個bug,他沒有說什麼。他隨後,問我
,“如何把linux改造爲rtos呢?”,這個問題比較難,因爲linux是分時系統,同一優
先級的會時間片輪轉,而且調度僅僅發生在從內核切換爲用戶態時,我說,首先要改進
調度算法,其次,把很複雜的vfs檔案系統改造,最後,把內核設計的很小,透過一些庫
來提供內核的功能。我也是亂講的,他點了點頭。“小夥,你回答的不錯,你設計過商
業軟件嗎?”,我回答,當然了,隨後告訴他一個url,他看了之後,露出了一對虎牙。
美國女孩用好奇的眼神看着我和他對話,她最後問了我一個問題,“你什麼時候畢業?
”,我告訴她,明年4月,隨後,我們3個開始了兩兩握手,感覺真的很無厘頭。
   終於面試完了,在屋外的美女引導下,我離開了intel。