İşletim sistemi, bilgisayar donanımının doğrudan denetimi ve yönetiminden, temel sistem işlemlerinden ve uygulama yazılımlarını çalıştırmaktan sorumlu olan sistem yazılımıdır.
İşletim sistemi, bütün diğer yazılımların belleğe, girdi/çıktı aygıtlarına ve kütük sistemine erişimini sağlar. Birden çok yazılım aynı anda çalışıyorsa, işletim sistemi her yazılıma yeterli sistem kaynağını ayırmaktan ve birbirleri ile çakışmamalarını sağlamaktan da sorumludur.
2005 yılı itibari ile, en yaygın olarak kullanılan işletim sistemleri iki ana grupta toplanabilir: Microsoft Windows grubu ve UNIX benzeri işletim sistemlerini içeren grup (Linux, Mac OS vb.)
UNIX, akademik çevrelerde ve sunucu olarak kullanılmaktayken, Windows ise evde ve ofislerde masaüstünde tercih edilmektedir. Masaüstü bilgisayarlarında Windows, diğer işletim sistemlerinden çok daha yaygın olarak kullanılmaktadır ve çeşitli araştırmalar Windows'un masaüstünde pazar payının %90 ile %98 arasında olduğunu göstermektedir. [kaynak belirtilmeli] Linux, sunucularda yaygın olarak kullanılmaktayken, evlere ve ofis masaüstlerine de yavaş yavaş girmektedir. UNIX'in ana kısımlarından yararlanan Mac OS ve onun öncülleri ise daha çok masaüstü yayıncılıkta kullanılmaktadır.
Anabilgisayarlar ve gömülü sistemler ise çoğu Windows ve UNIX'le doğrudan bağlantısı olmayan pek çok değişik işletim sistemi kullanmaktadır.
Türleri ve terminoloji
Bir işletim sistemi, kavramsal olarak, üç grupta toplanabilecek bileşenlerden oluşur: kullanıcı arayüzü (bu bir grafik kullanıcı arayüzü ve/ya da komut satırı yorumlayıcısı ["kabuk" da denir] olabilir), alt düzey sistem işlevleri, ve bir çekirdek. Çekirdek, işletim sisteminin kalbidir. Adından da anlaşılabileceği gibi, "kabuk", çekirdeğin çevresini sararken, donanımla iletişim kurmak da çekirdeğin işidir.
Kimi işletim sistemlerinde kabuk ve çekirdek tümüyle ayrı bileşenlerken, kimilerinde bu ayrım yalnızca kavramsaldır.
Çekirdek tasarımları, yekpare (monolithic) çekirdekler, mikro-çekirdekler ve ekzo-çekirdekler olarak üç ana gruba ayrılabilir. UNIX ve Windows gibi geleneksel ticari sistemler ve Linux gibi daha yeni yaklaşımlar monolitik çekirdek kullanırken, QNX, BeOS, Windows NT gibi yeni sistemlerin çoğu mikroçekirdek yaklaşımını kullanır. Araştırma amacıyla geliştirilen işletim sistemlerinin çoğu da mikro-çekirdek kullanırlar. Ekzo-çekirdekler ise henüz araştırma aşamasındadır.