熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Inode 結構:內存映對

2013-11-13 16:17:34  來源: Oracle 

  在Linux裡我們可以利用mmap()將檔案或device的某個區塊映像到記體裡使用在inode裡這兩個字段就是跟它有關的:
  
  struct vm_area_struct *i_mmap;
  
  int i_writecount;
  
  i_writecount這個字段的值是用來記錄目前有多少個行程是以可寫入的模式開啟此檔案的為什麼需要這個值呢? 因為系統沒辦法支持可以對一個檔案寫入而又同時將這個檔案映像為MAP_DENYWRITE的模式所以用這個字段來代表目前有多個行程可對此inode做寫入的動作或是有多少個行程將它映像成MAP_DENYWRITE的模式它的值有以下三種情形:
  
  : 沒有行程將它開啟為可寫入也沒有行程對它做MAP_DENYWRITE的映像
  
  < 0: 有-i_writecount個行程對它做MAP_DENYWRITE的映像。tW.wiNGWIt.cOM
  
  > : 有i_writecount個行程將它開啟為可寫入模式
  
  至於i_mmap這個字段就是用來做內存映像的字段

From:http://tw.wingwit.com/Article/program/Oracle/201311/18094.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.