Changes between Initial Version and Version 1 of kernel_tty0


Ignore:
Timestamp:
Oct 9, 2014, 12:55:41 PM (11 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • kernel_tty0

    v1 v1  
     1= GIET-VM / TTY0 access functions =
     2
     3[[PageOutline]]
     4
     5The [source:soft/giet_vm/giet_common/utils.c utils.c] and [source:soft/giet_vm/giet_common/utils.h util.h] files define the functions used to access the kernel terminal TTY[0]. The ''_put'' functions do not take the lock protecting exclusive access. The ''_printf''s function takes the lock protecting exclusive access.
     6
     7They are prefixed by "_" to remind that they can only be executed by a processor in kernel mode.
     8
     9 === void _puts( char* string ) ===
     10Displays a ''string'' on kernel TTY0. This function does NOT take the TTY0 lock.
     11
     12 === void _putx( unsigned int value ) ===
     13Displays a 32 bits word as an hexadecimal string on kernel TTY0. This function does NOT take the TTY0 lock.
     14
     15=== void _putl( unsigned long long value ) ===
     16Displays a 64 bits word as an hexadecimal string on kernel TTY0. This function does NOT take the TTY0 lock.
     17
     18 === void _putd( unsigned int value ) ===
     19Displays a 32 bits word as an decimal string on kernel TTY0. This function does NOT take the TTY0 lock.
     20
     21 === void _printf( char* format, ... ) ===
     22Display a format on kernel TTY0. To provide an atomic display, this function takes the lock protecting
     23exclusive access to TTY0, entering a critical section until the lock is released.
     24Only a limited number of formats are supported:
     25 * %d : 32 bits signed   decimal
     26 *  %u : 32 bits unsigned decimal
     27 *  %x : 32 bits unsigned hexa
     28 *  %l : 64 bits unsigned hexa
     29 *  %c : char
     30 *  %s : string
     31
     32 === void _getc( char* byte ) ===
     33This blocking function uses a polling strategy on the TTY0 status register to get a single character.
     34 
     35