The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

pmadvise (1)
  • >> pmadvise (1) ( Solaris man: Команды и прикладные программы пользовательского уровня )
  •  

    NAME

    pmadvise - applies advice about memory to a process
     
    

    SYNOPSIS

    pmadvise -o option[,option] [-F] [-l] [-v] pid...
    

     

    DESCRIPTION

    pmadvise applies advice about how memory is used in the specified process using madvise(3C).

    pmadvise allows users to apply advice to a specific sub-range at a specific instant in time. pmadvise differs from madv.so.1(1) in that madv.so.1(1) applies the advice throughout execution of the target program to all segments of a specified type.  

    OPTIONS

    The following options are supported:

    -F

    Force by grabbing the target process even if another process has control.

    You should exercise caution when using the -F option. See proc(1).

    -l

    Show unresolved dynamic linker map names.

    -o

    Specify advice to apply in the following form:

    private=advice
    shared=advice
    heap=advice
    stack=advice
    address[:length]=advice
    

    where the advice can be one of the following:

    normal
    random
    sequential
    willneed
    dontneed
    free
    access_lwp
    access_many
    access_default
    

    An address and length can be given to specify a subrange to apply the advice.The address should be hexadecimal and the length should be in bytes by default.

    If length is not specified and the starting address refers to the start of a segment, the advice is applied to that segment. length can be qualified by K, M, G, T, P, or E to specify kilobytes, megabytes, gigabytes, terabytes, or exabytes respectively as the unit of measure.

    -v

    Print verbose output. Display output as pmap(1) does, showing what advice is being applied where. This can be useful when the advice is being applied to a named region (for example, private, shared, and so forth) to get feedback on exactly where the advice is being applied.

    pmadvise tries to process all legal options. If an illegal address range is specified, an error message is printed and the offending option is skipped. pmadvise quits without processing any options and prints a usage message when there is a syntax error.

    If conflicting advice is given on a region, the order of precedence is from most specific advice to least, that is, most general. In other words, advice specified for a particuliar address range takes precedence over advice for heap and stack which in turn takes precedence over advice for private and shared memory.

    Moreover, the advice in each of the following groups are mutually exclusive from the other advice within the same group:

    MADV_NORMAL, MADV_RANDOM, MADV_SEQUENTIAL
    MADV_WILLNEED, MADV_DONTNEED, MADV_FREE
    MADV_ACCESS_DEFAULT, MADV_ACCESS_LWP, MADV_ACCESS_MANY
    

     

    OPERANDS

    The following operands are supported:

    pid

    Process ID.

     

    EXAMPLES

    Example 1 Applying Advice to a Segment at Specified Address

    The following example applies advice to a segment at a specified address:

    % pmap $$
    100666: tcsh
    00010000     312K r-x--  /usr/bin/tcsh
    0006C000      48K rwx--  /usr/bin/tcsh
    00078000     536K rwx--    [ heap ]
    FF100000     856K r-x--  /lib/libc.so.1
    FF1E6000      32K rwx--  /lib/libc.so.1
    FF1EE000       8K rwx--  /lib/libc.so.1
    FF230000     168K r-x--  /lib/libcurses.so.1
    FF26A000      32K rwx--  /lib/libcurses.so.1
    FF272000       8K rwx--  /lib/libcurses.so.1
    FF280000     576K r-x--  /lib/libnsl.so.1
    FF310000      40K rwx--  /lib/libnsl.so.1
    FF31A000      24K rwx--  /lib/libnsl.so.1
    FF364000       8K rwxs-    [ anon ]
    FF370000      48K r-x--  /lib/libsocket.so.1
    FF38C000       8K rwx--  /lib/libsocket.so.1
    FF3A0000       8K r-x--  /platform/sun4u-us3/lib/libc_psr.so.1
    FF3B0000     176K r-x--  /lib/ld.so.1
    FF3EC000       8K rwx--  /lib/ld.so.1
    FF3EE000       8K rwx--  /lib/ld.so.1
    FFBE6000     104K rw---    [ stack ]
    %
    % pmadvise -o 78000=access_lwp $$
    
    %
    

    Example 2 Using the -v Option

    The following example displays verbose output from pmadvise:

     
    % pmadvise -o heap=access_lwp,stack=access_default -v $$
    1720:   -sh
    00010000      88K r-x--  /sbin/sh
    00036000       8K rwx--  /sbin/sh
    00038000      16K rwx--    [ heap ]           <= access_lwp
    FF250000      24K r-x--  /lib/libgen.so.1
    FF266000       8K rwx--  /lib/libgen.so.1
    FF272000       8K rwxs-    [ anon ]
    FF280000     840K r-x--  /lib/libc.so.1
    FF362000      32K rwx--  /lib/libc.so.1
    FF36A000      16K rwx--  /lib/libc.so.1
    FF380000       8K r-x--  /platform/sun4u-us3/lib/libc_psr.so.1
    FF390000      64K rwx--    [ anon ]
    FF3B0000     168K r-x--  /lib/ld.so.1
    FF3EA000       8K rwx--  /lib/ld.so.1
    FF3EC000       8K rwx--  /lib/ld.so.1
    FFBFE000       8K rw---    [ stack ]          <= access_default
    

     

    EXIT STATUS

    The following exit values are returned:

    0

    Successful completion.

    non-zero

    An error occurred.

     

    FILES

    /proc/*

    Process files

    /usr/prob/lib/*

    proc tools support files

     

    ATTRIBUTES

    See attributes(5) for descriptions of the following attributes:

    ATTRIBUTE TYPEATTRIBUTE VALUE

    AvailabilitySUNWesu

    Interface Stability

    The command syntax is Evolving. The output formats are Unstable.  

    SEE ALSO

    madv.so.1(1), pmap(1), proc(1), madvise(3C), attributes(5)


     

    Index

    NAME
    SYNOPSIS
    DESCRIPTION
    OPTIONS
    OPERANDS
    EXAMPLES
    EXIT STATUS
    FILES
    ATTRIBUTES
    SEE ALSO


    Поиск по тексту MAN-ов: 




    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру