Changes between Version 48 and Version 49 of io_operations
- Timestamp:
- Jan 19, 2018, 1:28:18 PM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
io_operations
v48 v49 142 142 '''1)''' The TXT[0] terminal is reserved for the kernel. It is normally used by the kernel to display log and/or debug messages. It can only be used by the user processes for debug, through some specific system calls such as the panic() or display_xxx() functions, that should not be used in normal exploitation. 143 143 144 '''2)''' The other (NB_TXT_CHANNELS - 1) terminals TXT[i] are shared resources used by alluser processes. During kernel initialization, ALMOS-MKH creates the first INIT user process, that creates itself (NB_TXT_CHANNELS -1) KSH user processes (one shell per user text terminal). All processes created by a KSH[i] process share the same TXT[i] terminal as the parent process, and belong to the same group of process.144 '''2)''' The other (NB_TXT_CHANNELS - 1) terminals TXT[i] are shared resources used by user processes. During kernel initialization, ALMOS-MKH creates the first INIT user process, that creates itself (NB_TXT_CHANNELS -1) KSH user processes (one shell per user text terminal). All processes created by a KSH[i] process share the same TXT[i] terminal as the parent process, and belong to the same group of process. 145 145 146 146 '''3)''' In the present implementation, the INIT process and the the KSH[i] processes are never deleted : they do not call the exit() scale, and cannot be killed. 147 147 148 '''4)''' Regarding the WRITE accesses, all processes attached to the same TXT_TX[i] terminal can atomically display character strings. There is no guaranty on the order, when these strings are displayed by different processes, because these strings are simply sequentialized by the kernel thread associated to the shared TXT_TX[i] device.148 '''4)''' Regarding the WRITE accesses, all processes attached to the same TXT_TX[i] terminal can atomically display character strings. There is no guaranty on the order, when these strings are issued by different processes, because these strings are simply sequentialized by the kernel thread associated to the shared TXT_TX[i] device. 149 149 150 150 '''5)''' Regarding the READ accesses, only one process in the group of process attached to the TXT[i] terminal (called ''foreground'' process) is the owner of the TXT_RX[i] terminal, and can read characters . The other processes (called ''background'' processes) should not try to read characters. If a background process P try to read, it receives a SIGSTOP signal, and will keep blocked until the user uses the ''fg'' shell command to give P the ownership of the TXT_RX[i] terminal.