面試需要掌握的知識

2021-08-08 05:08:42 字數 1169 閱讀 5257

在棧上為什麼不能用變數做陣列的長度,堆上可以嗎?

基類和父類的構造析構函式呼叫,多型,結構體裡的位域,求大小並且分析,我說windows下和linux下對位域有區別

資料庫分庫分片,

專案中資料庫的實現。

為什麼要自己實現乙個資料庫。

資料庫游標。

快排:雜湊表紅黑樹實現,mmap記憶體對映,鍊錶是實現的3個重要技術

反轉二叉樹

訊息是怎樣定義的,怎樣區分不同的訊息,怎麼知道使用鎖的。我給他說了epoll、執行緒池,reactor模式

tcp沒有邊界限制,阻塞io,非阻塞io,epoll機制以及高效的關鍵

第二次握手之後可以發資料嗎?我說可以,但是必須得把ack子段 置位等還問了一些別的相關問題

用epoll的et模式實現乙個伺服器框架 要求:

1、接受client連線建立,出錯處理

2、處理client關閉連線以及出錯

3、tcp邊界問題,其實就是tcp粘包 寫了3頁的**

udp實現廣播時會不會出現對方接受不到,可能是什麼原因

udp在同乙個網段下可以實現廣播嗎?在同乙個子網下為什麼可以實現廣播?怎樣劃分子網

程序和執行緒的區別,這個感覺面試官都愛問誒,linux2.6核心之前沒有自己的核心級執行緒2.6之後的3種執行緒模型,多cpu執行,程序的pcb控制塊,殭屍程序遺留pcb控制塊在記憶體中等等

linux的執行緒池,併發反應模式

核心和使用者態相互拷貝資料圖

gcc和g++區別

makefile,gdb除錯,給我說了各種引數,ld,backtrace,等等7個

程序間通訊方式,怎樣實現在兩個程序間互斥訪問共享記憶體:

**sql注入,緩衝區溢位攻擊,dns劫持,ddos攻擊,arp欺騙以及原理,嗅探、肉雞、網頁掛馬等等

問我函式呼叫壓棧,我把函式的呼叫過程畫了出來,因為之前看過彙編,從右向左傳參,呼叫call指令壓入返回位址,保護各個暫存器等

this指標儲存在哪個暫存器中,我說ecx暫存器

c++呼叫約定和stdcall呼叫約定的區別,以及彈棧的時候的區別:c和c++是_cdecl呼叫約定,由呼叫者把引數彈出棧。對於傳送引數的記憶體棧是由呼叫者來維護,而stdcall是由被調者自己平衡棧幀

當前指令儲存在哪個暫存器

c++類中線程callback函式怎麼使用自己類的成員

單例模式,加鎖,兩重判空

關於makefile需要掌握的知識

關於makefile需要掌握的知識有 1.基本規則,2.makefile檔案裡的賦值方法,包括廷時變數和立即變數。3.常用函式,包括字元衝替換函式,分析函式和檔名函式等。makefile介紹 最簡單的makefile檔案如下。hello hello.c gcc o hello hello.c cle...

python開發需要掌握的知識

一 計算機組成原理和linux基礎 一般python入職公司職務分為三種 運維工程師 主要負責伺服器搭建 網路工程師 主要計算機系統的執行與維護 軟體開發工程師 顧名思義 應用程式開發 這三中職業相輔相成,了解相關知識對軟體開發有幫助。二 python開發 1 python基礎 python 3 教...

OpenCV需要掌握的知識總結

影象畫素操作 幾何運算 加減乘除 邏輯運算 與或非取反 畫素讀寫 通道混合與調整 對比度與亮度調整 影象幾何變換 插值 zoom in或out 旋轉 rotate 透視變換 錯切變換 翻轉 畫素統計 計算均值與方差 計算直方圖 計算最大最小 計算畫素內方差 色彩空間 rgb hsl yuv ycrc...