Bir etkileşimli kabuğun temel amacı kullanıcının uçbiriminden komutları okumak ve bu komutlarla belirtilen yazılımları çalıştırarak süreçler oluşturmaktır. Kabuk bunu
fork (
Bir Sürecin Oluşturulması) ve
exec (
Bir Dosyanın Çalıştırılması) işlevlerini kullanarak yapabilir.
Tek bir komut sadece bir süreci çalıştırmalı gibi düşünülebilir ama çoğunlukla bir komut çeşitli süreçleri kullanır. Bir kabuk komutunda | işlecini kullanarak, doğrudan kendi süreçleri içinde çeşitli uygulamaları çalıştırabilirsiniz. Ama sadece tek bir uygulamayı çalıştırmak istemiş olsanız bile bu uygulama dahili olarak çok sayıda süreci kullanabilir. Örneğin, cc -c foo.c gibi tek bir komut (normalde iki olmasına rağmen) genellikle dört süreç gerektirir. Hele bir make komutunu vardır ki, onun işi ayrı süreçler halinde başka uygulamaları çalıştırmaktır.
Tek bir komuta bağlı olarak çalışan süreçlere süreç grubu ya da iş denir. Bu hepsinin aynı anda çalışmasından dolayıdır. Örneğin, C-c tuşlayıp SIGINT sinyali göndererek önalan süreç grubundaki tüm süreçleri sonlandırabilirsiniz.
Bir
oturum geniş bir süreçler grubudur. Normalde tüm süreçler tek bir oturum açılışında aynı oturuma ait olarak oluşturulurlar.
Her süreç bir süreç grubuna aittir. Bir süreç oluşturulduğu zaman, onun ata süreci ile aynı süreç grubunun ve oturumun bir üyesi haline gelir. Onu aynı oturuma ait bir süreç grubu olan başka bir süreç grubuna setpgid işlevini kullanarak koyabilirsiniz.
Bir süreci başka bir oturuma yerleştirmenin tek çaresi onu yeni bir oturumun ilk süreci ya da
setsid işlevini kullanarak bir
oturum lideri yapmaktır. Bu işlem ayrıca oturum liderini yeni bir süreç grubuna yerleştirir ve artık onu bu süreç grubundan tekrar dışarı taşıyamazsınız.
Çoğunlukla, yeni oturumları sistemin login komutu oluşturur ve oturum lideri kullanıcının oturum açma kabuğunu çalıştıran süreç olur.
İş denetimi desteği olan bir kabuk, her an uçbirimi kullanabilecek işi denetleyecek düzenlemeyi yapmalıdır. Aksi takdirde uçbirimden okumayı deneyen çok sayıda iş olabilir ve kullanıcı tarafından yazılan girdileri hangi sürecin alacağı konusunda karışıklık çıkar. Bundan kaçınmak için kabuk, bu oylumda bahsedilen protokolü kullanarak uçbirim sürücüsü ile işbirliği yapmalıdır.
Kabuk, bir defada sadece bir sürece denetim uçbiriminde sınırsız erişim verebilir. Denetim uçbirimine sınırsız erişim yapabilen sürece
önalan işi denir. Kabuk tarafından yönetilen ve uçbirime bu tür bir erişimi olmayan diğer süreç gruplarına ise
artalan işleri denir.
Eğer artalan işlerinden biri denetim uçbiriminden okuma yapmak ihtiyacı duyarsa, uçbirim sürücüsü tarafından
durdurulur; eğer
TOSTOP kipi etkinse, yazmak istediğinde de durdurulur. Bir önalan işini bir kullanıcı
SUSP karakterini kullanarak durdurabileceği gibi bir süreç de bir
SIGSTOP sinyali göndererek durdurabilir. İşler durduğunda uyarmak, bunlar hakkında kullanıcıyı uyarmak ve durdurulan işlerin kullanıcı ile etkileşimli olarak sürdürülmesini ve artalan işleri ile önalan işi arasında geçişi mümkün kılmak için mekanizmalar sağlamak kabuğun sorumluluğudur.