• <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()的時候就決定了.

            国产精品久久久久aaaa| 久久精品国产亚洲av麻豆图片 | 精品久久777| 欧美一区二区精品久久| 久久亚洲欧洲国产综合| 亚洲国产精品无码久久久蜜芽 | 久久免费视频网站| 无码任你躁久久久久久老妇| 久久精品午夜一区二区福利| 精品人妻伦一二三区久久 | 国产精品福利一区二区久久| 久久国产免费直播| 亚洲乱码精品久久久久..| 国产精品伦理久久久久久| 久久久一本精品99久久精品88 | 奇米影视7777久久精品| 久久综合久久鬼色| 激情综合色综合久久综合| 欧美丰满熟妇BBB久久久| 亚洲另类欧美综合久久图片区| 91精品国产91久久综合| 久久久国产亚洲精品| 久久精品中文字幕一区| 国产A级毛片久久久精品毛片| 99久久99久久精品免费看蜜桃| 精品国产乱码久久久久久呢| 蜜桃麻豆www久久国产精品| 久久久青草久久久青草| 热re99久久6国产精品免费| 伊人久久大香线蕉亚洲| 中文字幕久久波多野结衣av| 中文字幕乱码久久午夜| 亚洲国产精品高清久久久| 亚洲乱码精品久久久久..| 日韩精品久久久久久免费| 久久精品亚洲精品国产色婷| 精品久久久久久久久午夜福利| 久久天堂AV综合合色蜜桃网| 亚洲狠狠婷婷综合久久久久| 国内精品伊人久久久久AV影院| 久久精品国产网红主播|