當前位置:編程學習大全網 - 編程軟體 - Linux的mmap文件內存映射機制是什麽?

Linux的mmap文件內存映射機制是什麽?

***享內存允許兩個或多個進程***享壹給定的存儲區,因為數據不需要來回復制,所以是最快的壹種進程間通信機制。***享內存可以通過mmap()映射普通文件(特殊情況下還可以采用匿名映射)機制實現,也可以通過系統V***享內存機制實現。應用接口和原理很簡單,內部機制復雜。為了實現更安全通信,往往還與信號燈等同步機制***同使用。mmap的機制如:就是在磁盤上建立壹個文件,每個進程存儲器裏面,單獨開辟壹個空間來進行映射。如果多進程的話,那麽不會對實際的物理存儲器(主存)消耗太大。shm的機制:每個進程的***享內存都直接映射到實際物理存儲器裏面。

1、mmap保存到實際硬盤,實際存儲並沒有反映到主存上。優點:儲存量可以很大(多於主存);缺點:進程間讀取和寫入速度要比主存的要慢。

2、shm保存到物理存儲器(主存),實際的儲存量直接反映到主存上。優點,進程間訪問速度(讀寫)比磁盤要快;缺點,儲存量不能非常大(多於主存)使用上看:如果分配的存儲量不大,那麽使用shm;如果存儲量大,那麽使用mmap。

  • 上一篇:如何用JAVA編程編寫壹個界面程序(急求!急求!急求!)如題 謝謝了
  • 下一篇:數字求和的程序設計
  • copyright 2024編程學習大全網