XINU
main.c
Go to the documentation of this file.
1 
5 #include <xinu.h>
6 
19 {
20 
21  /* Run the Xinu shell */
22 
23  recvclr();
24  resume(create(shell, 8192, 50, "shell", 1, CONSOLE));
25 
26  /* Wait for shell to exit and recreate it */
27 
28  while (TRUE)
29  {
30  receive();
31  sleepms(200);
32  kprintf("\n\nMain process recreating shell\n\n");
33  resume(create(shell, 4096, 20, "shell", 1, CONSOLE));
34  }
35  return OK;
36 }
syscall kprintf(char *fmt,...)
ポーリングI/Oを使用して、フォーマットされた文字列をコンソールに出力する。
Definition: kprintf.c:98
全てのシステムヘッダファイルをインクルードする。
process shell(did32)
Definition: shell.c:54
#define CONSOLE
Definition: conf.h:28
#define OK
処理が成功した場合
Definition: kernel.h:77
umsg32 receive(void)
メッセージの受信を待ち、受信後にreceive()の呼び出し者にメッセージを返す。
Definition: receive.c:17
syscall sleepms(int32)
Definition: sleep.c:26
#define TRUE
Boolean True(1)
Definition: kernel.h:65
umsg32 recvclr(void)
受信メッセージをクリアし、待機している場合はメッセージを返す。
Definition: recvclr.c:14
pri16 resume(pid32)
プロセスを休止状態(サスペンド)からREADY状態に遷移させる。
Definition: resume.c:20
process main(void)
XINUシェルを起動する。
Definition: main.c:18
pid32 create(void *, uint32, pri16, char *, uint32,...)
関数の実行を開始するプロセスを作成する。
Definition: create.c:55
int32 process
プロセスの最上位レベル関数 返り値の型
Definition: kernel.h:53