The Kernel Kit Table of Contents The Kernel Kit Index

Miscellaneous Functions and Constants

Declared in: be/kernel/OS.h (unless otherwise noted)


Functions


clear_caches()

Declared in: be/kernel/image.h
                                                         
  

void clear_caches(void *addr, size_t len, uint32 flags)

This function clears or invalidates the instruction and data caches. You should only need this function if you're generating code on the fly, or if you're performing a timing loop and you want to start with fresh caches (to get a "worst case" estimate).

The argument are:

By invalidating a section of the instruction cache, you cause the instructions in that section to be reloaded next time they're needed. Flushing the data cache causes the in-memory copy of the data to be written out to the cache.


debugger()

                                                         
  

void debugger(const char *string)

Throws the calling thread into the debugger. The string argument becomes the debugger's first utterance.


disable_debugger()

                                                         
  

int disable_debugger(int state)

Instructs the kernel to send a signal for all exceptions, even those that don't normally trigger the debugger. If the application doesn't have a handler installed for the exception, the team dies without triggering the debugger. state should be nonzero to turn on this functionality or 0 to turn it off.


set_alarm()

                                                         
  

bigtime_t set_alarm(bigtime_t when, uint32 mode)

Tells the kernel to send the SIGALRM signal at some point in the future, as defined by the arguments. When the signal is sent, the SIGALRM handler is invoked (you set the signal handler through the normal means,


set_signal_stack()

Declared in: posix/signal.be.h
                                                         
  

void set_signal_stack(void *ptr, size_t size)

Sets the location and size of the stack that's used by the thread's signal handlers.


Constants


B_INFINITE_TIMEOUT

B_INFINITE_TIMEOUT

The inifinite timeout value can be used to specify, to timeout-accepting functions, that you're willing to wait forever.


B_OS_NAME_LENGTH

B_OS_NAME_LENGTH

This constant gives the maximum length of the name of a thread, semaphore, port, area, or other operating system bauble.


B_PAGE_SIZE

B_PAGE_SIZE

The B_PAGE_SIZE constant gives the size, in bytes, of a page of RAM.


The Kernel Kit Table of Contents The Kernel Kit Index


The Be Book,
...in lovely HTML...
for BeOS Release 4.5.

Copyright © 1999 Be, Inc. All rights reserved.

Text last modified June 4, 1999.