rust-shell - 評価

評価スケール

基本評価 (100点満点)

項目 配点 評価基準
コンパイル 10点 `cargo build --release`
コマンド実行 20点 外部コマンド動作
組み込みコマンド 25点 5コマンド各5点
リダイレクション 20点 入出力、追記
パイプ 15点 複数段パイプ
エラー処理 10点 適切なエラーメッセージ

ボーナス評価 (最大30点)

項目 配点
ジョブ制御 10点
シグナル処理 10点
ヒストリー 10点

課題の目的

学習目標

  • プロセス管理
- fork/exec モデル - プロセス間通信

  • ファイルI/O
- ファイルディスクリプタ - リダイレクション

  • シェルの内部動作
- パース処理 - 環境変数

評価手順

1. 基本コマンド

# 外部コマンド
minishell> ls -la /tmp
minishell> cat /etc/passwd

# 組み込みコマンド
minishell> cd /
minishell> pwd
/
minishell> echo $HOME
minishell> env | head

2. リダイレクション

# 出力リダイレクト
minishell> echo "test" > /tmp/test.txt
minishell> cat /tmp/test.txt
test

# 追記
minishell> echo "line2" >> /tmp/test.txt

# 入力リダイレクト
minishell> wc -l < /tmp/test.txt
2

3. パイプ

# 単一パイプ
minishell> cat /etc/passwd | head -5

# 複数パイプ
minishell> cat /etc/passwd | grep root | wc -l

減点対象

項目 減点
セグフォ -20点
ゾンビプロセス -15点
ファイルリーク -10点
不正なパス処理 -5点

合格基準

  • マンダトリーパート: 80点以上
  • 基本的なコマンドが正常動作すること