• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 200, comments - 8, trackbacks - 0, articles - 0

            mmap詳解(轉(zhuǎn))

            Posted on 2013-01-06 10:37 鑫龍 閱讀(599) 評論(0)  編輯 收藏 引用 所屬分類: linux編程

            mmap函數(shù)是unix/linux下的系統(tǒng)調(diào)用。

            mmap系統(tǒng)調(diào)用并不是完全為了用于共享內(nèi)存而設(shè)計的。它本身提供了不同于一般對普通文件的訪問方式,進(jìn)程可以像讀寫內(nèi)存一樣對普通文件的操作。而Posix或系統(tǒng)V的共享內(nèi)存IPC則純粹用于共享目的,當(dāng)然mmap()實現(xiàn)共享內(nèi)存也是其主要應(yīng)用之一。
                      mmap系統(tǒng)調(diào)用使得進(jìn)程之間通過映射同一個普通文件實現(xiàn)共享內(nèi)存。普通文件被映射到進(jìn)程地址空間后,進(jìn)程可以像訪問普通內(nèi)存一樣對文件進(jìn)行訪問,不必再調(diào)用read(),write()等操作。mmap并不分配空間, 只是將文件映射到調(diào)用進(jìn)程的地址空間里(因為并不分配空間所以所映射的文件必須已經(jīng)具有大小,空文件會產(chǎn)生錯誤), 然后你就可以用memcpy等操作寫文件, 而不用write()了.寫完后用msync()同步一下, 你所寫的內(nèi)容就保存到文件里了. 不過這種方式?jīng)]辦法增加文件的長度, 因為要映射的長度在調(diào)用mmap()的時候就決定了.

            久久久久久久人妻无码中文字幕爆| 久久噜噜久久久精品66| 国产麻豆精品久久一二三| 97久久综合精品久久久综合| 国产高清国内精品福利99久久| 亚洲国产成人久久一区久久| 性欧美丰满熟妇XXXX性久久久| 伊人久久大香线焦综合四虎| 一极黄色视频久久网站| 国产精品一区二区久久| 国产aⅴ激情无码久久| 国产亚洲精久久久久久无码AV| 色综合久久无码五十路人妻 | 欧美久久亚洲精品| 青青草原精品99久久精品66| 国产福利电影一区二区三区久久久久成人精品综合 | 久久久黄片| 久久99久久99小草精品免视看 | 7777久久亚洲中文字幕| 狠狠色丁香婷婷久久综合| 国产女人aaa级久久久级| 97精品久久天干天天天按摩| 精品人妻伦九区久久AAA片69| 精品久久综合1区2区3区激情| 国产成年无码久久久久毛片| 色青青草原桃花久久综合| 久久影院久久香蕉国产线看观看| 粉嫩小泬无遮挡久久久久久| 亚洲精品乱码久久久久久中文字幕| 久久九色综合九色99伊人| 久久99精品国产麻豆蜜芽| 国产精品欧美久久久久天天影视| 久久久久免费精品国产| 精品久久久久久综合日本| 久久91精品久久91综合| 国产精品久久毛片完整版| 久久99国内精品自在现线| 久久99精品国产| 久久这里只精品国产99热| 国内精品免费久久影院| 婷婷久久综合九色综合九七|