2015-01-07 109 views

回答

0

答案是這取決於你的意思是「單個內存讀取」。在CPU層面,我們正在使用緩存和數據線。在內核級別,我們正在處理內存頁面。在應用程序級別,我們正在處理流和語言特定的數據類型。

使用C,您可以訪問後者,甚至以特定於操作系統的方式訪問內核級內存,但通常無法訪問CPU級別。 (除非你正在編寫內核/微內核或進行嵌入式控制器編程)實際上,它比緩存複雜得多,現代CPU中有各種存儲器接口和總線,所以它取決於/什麼/和/哪裏/等...

用於Linux的內核級內存接口在C中非常易於使用,並且有詳細的文檔說明,從mmap()手冊頁開始。

+0

我將解釋我的意思是「單個內存讀取」。 RAM中有一些數據不在緩存中,當我訪問這些數據時 –