• <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 - 297,  comments - 15,  trackbacks - 0

            NAME
                   brk, sbrk - change data segment size

            SYNOPSIS
                   #include <unistd.h>

                   int brk(void *end_data_segment);

                   void *sbrk(intptr_t increment);

            DESCRIPTION
                   brk()  sets the end of the data segment to the value specified by end_data_segment,
                   when that value is reasonable, the system does have enough memory and  the  process
                   does not exceed its max data size (see setrlimit(2)).

                   sbrk() increments the program's data space by increment bytes.  sbrk() isn't a sys-
                   tem call, it is just a C library wrapper.  Calling sbrk() with an  increment  of  0
                   can be used to find the current location of the program break.

            RETURN VALUE
                   On  success,  brk()  returns zero, and sbrk() returns a pointer to the start of the
                   new area.  On error, -1 is returned, and errno is set to ENOMEM.

            CONFORMING TO
                   4.3BSD

                   brk() and sbrk() are not defined in the C Standard and  are  deliberately  excluded
                   from the POSIX.1 standard (see paragraphs B.1.1.1.3 and B.8.3.3).

            NOTES
                   Various  systems  use  various  types for the parameter of sbrk().  Common are int,
                   ssize_t, ptrdiff_t, intptr_t.  XPGv6 obsoletes this function.

            SEE ALSO
                   execve(2), getrlimit(2), malloc(3)

                The brk() and sbrk() functions are used to change the amount of memory
                allocated in a process's data segment. They do this by moving the loca-
                tion of the ``break''. The break is the first address after the end of  
                the process's uninitialized data segment (also known as the ``BSS'').


            brk and sbrk設(shè)置的是BSS里的邊界,具體什么是BSS呢
            bss = "Block Started by Symbol" (由符號(hào)啟始的區(qū)塊)

            Dennis Ritchie 曾說(shuō)過(guò):
            這個(gè)縮寫(xiě)也許有其它說(shuō)法,但事實(shí)上我們采用這個(gè)縮寫(xiě)的本意是
            "Block Started by Symbol"。它是 FAP 上的偽指令,F(xiàn)AP
            (Fortran Assembly [-er?] Program) 是指 IBM 704-709-7090-7094
            這種機(jī)型的組譯器。這個(gè)指令可定義自己的標(biāo)號(hào),并且預(yù)留一定數(shù)目
            的字組空間。還有另一個(gè)偽指令 BES,是 "Block Ended by
            Symbol",跟 BSS 指令幾乎一樣,不同點(diǎn)在于標(biāo)號(hào)是定義在預(yù)留字組
            空間尾端的地址 + 1 的地方。在這些機(jī)器上,F(xiàn)ortran 的數(shù)組是以反
            方向儲(chǔ)存,而且數(shù)組的索引是從 1 算起。

            這種用法是合理的,因?yàn)檫@跟 UNIX 上標(biāo)準(zhǔn)的程序加載器一樣,程序
            碼當(dāng)中并非真的放入這一整塊預(yù)留空間,而是先用一個(gè)數(shù)目表示,在
            加載時(shí)才真的把所需的預(yù)留空間定出來(lái)。
            from:
            Linux man page and
            http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=linuxK&Number=300677&page=16&view=collapsed&sb=5&o=all&fpart=

            posted on 2010-02-18 19:23 chatler 閱讀(665) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): Linux_Coding
            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            留言簿(10)

            隨筆分類(lèi)(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺(jué)這個(gè)博客還是不錯(cuò),雖然做的東西和我不大相關(guān),覺(jué)得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久久九九99精品| 久久久久久久国产免费看| 久久人与动人物a级毛片| 久久久久久久波多野结衣高潮| 亚洲欧美另类日本久久国产真实乱对白 | 综合网日日天干夜夜久久| 久久国产免费直播| 久久精品嫩草影院| 国产69精品久久久久APP下载 | 中文字幕久久亚洲一区| 久久er99热精品一区二区| 精品久久久久久国产牛牛app| 性做久久久久久久久| 久久免费视频观看| 伊人久久大香线焦AV综合影院| 曰曰摸天天摸人人看久久久| 久久AV无码精品人妻糸列| 久久精品亚洲男人的天堂| 97久久精品国产精品青草| 久久亚洲日韩看片无码| 久久久久亚洲AV无码专区桃色| 国产V综合V亚洲欧美久久| 97精品伊人久久久大香线蕉| 久久受www免费人成_看片中文 | 久久综合亚洲鲁鲁五月天| 色综合久久88色综合天天| 久久久国产精华液| 国产精品久久久久久久久软件| 久久成人精品| 久久九九亚洲精品| 狠狠狠色丁香婷婷综合久久五月| 久久综合偷偷噜噜噜色| 无夜精品久久久久久| 日本高清无卡码一区二区久久| 麻豆精品久久精品色综合| 亚洲午夜久久影院| 久久精品免费观看| 久久精品国产WWW456C0M| 色综合合久久天天给综看| 尹人香蕉久久99天天拍| 蜜桃麻豆WWW久久囤产精品|