Changes between Version 3 and Version 4 of kernel_tty0
- Timestamp:
- Dec 5, 2014, 3:29:07 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
kernel_tty0
v3 v4 3 3 [[PageOutline]] 4 4 5 The [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'' function takes the lock protecting exclusive access.5 The [source:soft/giet_vm/giet_common/tty0.c tty0.c] and [source:soft/giet_vm/giet_common/tty0.h tty0.h] files define the functions used to access the kernel terminal TTY[0]. The ''_put*'' functions do not take the lock protecting exclusive access to TTY0. The ''_printf'' function takes the lock protecting exclusive access to TTY0.. 6 6 7 7 They are prefixed by "_" to remind that they can only be executed by a processor in kernel mode. 8 8 9 === void _puts( char* string ) ===9 === void '''_puts'''( char* string ) === 10 10 Displays a ''string'' on kernel TTY0. This function does NOT take the TTY0 lock. 11 11 12 === void _putx( unsigned int value ) ===12 === void '''_putx'''( unsigned int value ) === 13 13 Displays a 32 bits word as an hexadecimal string on kernel TTY0. This function does NOT take the TTY0 lock. 14 14 15 === void _putl( unsigned long long value ) ===15 === void '''_putl'''( unsigned long long value ) === 16 16 Displays a 64 bits word as an hexadecimal string on kernel TTY0. This function does NOT take the TTY0 lock. 17 17 18 === void _putd( unsigned int value ) ===18 === void '''_putd'''( unsigned int value ) === 19 19 Displays a 32 bits word as an decimal string on kernel TTY0. This function does NOT take the TTY0 lock. 20 20 21 === void _getc( char* byte ) ===21 === void '''_getc'''( char* byte ) === 22 22 This blocking function uses a polling strategy on the TTY0 status register to get a single character. 23 24 === void '''_printf'''( char* format, ... ) === 25 This function displays a formated string on TTY0, after taking the simple_lock_t to get exclusive access. Only the following formats are supported: 26 * %s : character string (0 terminated) 27 * %x : hexadecimal representation for an unsigned int (32 bits) 28 * %l : hexadecimal representation for an unsigned long long (64 bits) 29 * %d : decimal representation for a signed int (32 bits) 23 30 24