1. Meskipun pengguna masuk ke proses tunggal (shell yang merupakan antarmuka baris perintah mereka), pengguna akhirnya menjalankan banyak proses sebagai hasil dari tindakan seperti:
-> Menjalankan tugas non-interaktif di latar belakang.
-> Beralih di antara tugas interaktif melalui kontrol pekerjaan.
-> Memulai beberapa proses yang bekerja bersama melalui pipa.
-> Menjalankan sistem windowing seperti sistem X window yang memungkinkan beberapa terminal windows dibuka.
2. Untuk menangani semua proses ini, kernel perlu membentuk kelompok proses yang terdiri dari proses-proses ini.
3. Untuk mengatur grup proses ini lebih jauh sesuai dengan pengguna, grup ini dibagi menurut pengguna ke dalam sesi (Catatan: pengguna bukan pengguna linux, tetapi shell atau terminal singkatan dari pengguna. Dua terminal pada mesin yang sama dicatat oleh pengguna linux yang sama singkatan 2 pengguna yang berbeda dan dengan demikian 2 sesi pengguna berbeda di sini. Terminal dapat mengendalikan terminal hanya untuk satu sesi).
Proses yang menjalankan shell untuk "pengguna" atau sesi itu dikenal sebagai pemimpin sesi.
4. Perhatikan juga terminal penutupan dengan menekan tombol 'x' tidak membuat Anda keluar dari terminal itu. Terminal itu terus berjalan di latar belakang. Jika Anda ingin melewati sesi dari terminal, Anda harus keluar dari sana dengan menekan CTRL + D atau keluar.
5. Ketika Anda keluar dari terminal, kernel mengirimkan sinyal SIGHUP (mirip dengan kill -1) untuk memprosesnya yaitu ketua sesi. Sekarang setiap proses lain yang berjalan di terminal adalah anak dari ketua sesi ini. Proses anak ini telah membentuk kelompok proses yang dikendalikan oleh proses pemimpin sesi ini (proses induk).
6. Proses pemimpin sesi mengirim SIGHUP ke setiap proses anak, beberapa proses berakhir, sementara beberapa dapat memilih untuk tidak mengakhiri (yang ditangguhkan atau berjalan di latar belakang). Mereka memilih untuk tidak berhenti menjadi yatim piatu sebagai sesi overs dan segera diadopsi oleh proses init (induk dari semua proses di mesin linux).
Untuk lebih banyak lihat Tautan Model Proses Pengembangan Linux