sync_instruction_memory man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

sync_instruction_memory(3Standard C Library Functiosync_instruction_memory(3C)

NAME
       sync_instruction_memory - make modified instructions executable

SYNOPSIS
       void sync_instruction_memory(caddr_t addr, int len);

DESCRIPTION
       The  sync_instruction_memory()  function	 performs  whatever  steps are
       required to make instructions modified by a program executable.

       Some processor architectures, including some   SPARC  processors,  have
       separate and independent instruction and data caches which are not kept
       consistent by hardware.	For example, if the instruction cache contains
       an  instruction	from  some  address  and the program then stores a new
       instruction at that address, the new instruction may not be immediately
       visible	to  the	 instruction fetch mechanism. Software must explicitly
       invalidate the instruction cache entries for new or changed mappings of
       pages  that  might  contain executable instructions.  The sync_instruc‐
       tion_memory() function performs this function, and/or any  other	 func‐
       tions  needed  to  make modified instructions between addr and addr+len
       visible. A program should call sync_instruction_memory() after  modify‐
       ing instructions and before executing them.

       On  processors with unified caches (one cache for both instructions and
       data) and pipelines which are flushed by a branch instruction, such  as
       the x86 architecture, the function may do nothing and just return.

       The changes are immediately visible to the thread calling sync_instruc‐
       tion_memory() when the call returns, even if the thread should  migrate
       to another processor during or after the call. The changes become visi‐
       ble to other threads in the same manner that stores do; that  is,  they
       eventually become visible, but the latency is implementation-dependent.

       The  result of executing sync_instruction_memory() are unpredictable if
       addr through addr+len-1 are not valid for the address space of the pro‐
       gram making the call.

RETURN VALUES
       No values are returned.

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

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │MT-Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       attributes(5)

SunOS 5.10			  12 Feb 1997	   sync_instruction_memory(3C)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net