打醬油般的報名了Cisco -EDS的崗位,11月1日(周六)筆試,筆試題大概分:C/C++、Python、Alogrithm&os、Database、Java、Network幾部分,考試時間70分鐘,當然不是全做,根據崗位不同限制/自選其中的2部分或4部分。題目出的都挺有深度的,全英文全選擇(有多選),答對得1分、不答不得分、答錯扣0.5分。
然后在11.7日收到了面試通知,面試崗位為System Administer - EDS(思科信息技術部),要到上海思科(新思大樓)面試,報銷來回車費。當然欣然接受了。
新思大樓20多層,都是思科的,辦公環境典型的外企風范,休息區也不錯。安排的是15:30,14:00就到了,等了一會就開始面試,1v1,全是技術面,有的面了3面,我面了4面,基本都是中文面試,每一面大概30多分鐘。
一、二面:關于Linux Shell編程的一些問題:
面試官描述問題,讓用shell命令解決,第一個面試官還要現場在MAC上編寫。比如:
用shell編寫數組的輸入輸出;有一個文件,第一列存主機名,第二列為IP地址,如何輸入主機名返回IP地址,shell編寫實現;
如何查看某個進程所占的內存及CPU的使用;說出20個 shell命令;一個文件只有1列數據,如何用shell求這1列數據的加和;
ssh登錄時每次需要登錄密碼,如何設置使其自動登錄而不需要輸入密碼;
對100G的數據進行排序,采用什么方法,如何排序,時間復雜度是多少。
三面:
前面的面試感覺如何,為什么報這個崗位,對此崗位的認識,然后很nic'e的面試官介紹面試將從以下三個方面進行:操作系統、網絡、編程。
說出操作系統課程中主要涉及的內容;畫出你所知道的一種文件系統的結構,畫出數據在硬盤中的存儲結構,由于我畫的是linux VFS,面試官就接著問了下去superblock的數目相關的幾個問題:比如有一個目錄,被掛在到另一臺電腦上的兩個目錄上,他們有幾個superblock,這幾個超級塊有什么關系。
虛擬地址,為什么要用虛擬地址,虛擬地址到物理地址的轉換,線性地址、邏輯地址、物理地址關系,TLB的全稱,TLB什么時候會失效。
cache失效時什么?什么情況下出現失效。感覺面試官對于這方面理解的很透徹,他還給我講,cache是個古老很有用的技術,建議我去詳細看一下cache的實現以及文件系統的設計。
任務間通信的手段,spinlock的缺陷(忙等待與cache命中低),以及如何進行改進。然后給我講如何從cache的角度進行程序內存優化。多核處理器中,多個核訪問DDR,是由什么硬件進行控制的。
什么是ARP協議,位于網絡體系結構的哪一層?什么是ARP病毒,網絡管理員如何快速有效的解決ARP病毒(禁止除了網關以為的主機發送ARP應答)。
四面:主要問關于C/C++的內容
new、malloc的區別,單例類,如何使堆里的內存自動釋放,多線程中棧是共享么?
vector是如何實現的,數組和鏈表的區別,插入語刪除的時間復雜度,vector插入n個元素的時間復雜度。
一點點的英語面試;介紹自己的家庭。英語對話,南京和上海、為什么報上海等。
總結:面試到的很多問題都需要對知識的一個比較深入的理解,由于面試的崗位以及簡歷的原因,被問到很多知識都不怎么會,大多只知道皮毛沒有深入的理解。通過這次面試也學到了不少知識。不虛此行。