Bu oylumda çeşitli örnekler halinde verilen kabuk yazılımı, yazılımın tamamı değildir. Yazılımın çok küçük bir kısmının örneklenmesi dışında job ve program veri yapılarının nasıl ayrıldığı ve ilklendirildiği de dahil olmak üzere, hemen hiçbir şey söylenmedi.
Gerçek kabukların çoğu, bir komut dili, değişkenler, kısaltmalar, ikameler, dosya isimleri üzerinde kalıp eşleme gibi pek çok desteği içeren oldukça karmaşık bir kullanıcı arayüzü içerir. Tüm bunların verilmesi için doğaldır ki, burası yeri değildir. Bunun yerine süreç oluşturulması ile ilgili gerçekleme ve iş denetimi işlevlerinin böyle bir kabuk içinden çağrılmasını gösteren bir özet verdik.
Şimdiye kadar sunduğumuz ana konuları şöyle özetleyebiliriz:
-
void init_shell (void)
-
void launch_job (job *j, int foreground)
-
void do_job_notification (void)
-
void continue_job (job *j, int foreground)
Süphesiz, gerçek bir kabuk işlerin yönetilmesi için daha fazlasını gerektirir. Örneğin, tüm etkin işleri listeleyen ya da bir işe bir sinyal gönderen (SIGKILL gibi) komutlar içermesi faydalı olurdu.