Normalmente, o que geralmente chamamos de sistema operacional é uma combinação de software que envolve um kernel , cuja tarefa é gerenciar os recursos da máquina e alguns aplicativos executados no topo do kernel, denominados userland (que contém navegadores, compiladores, leitores de pdf, qualquer coisa que não seja o kernel, ou um driver, ou talvez um hypervisor vm).
O restante desta pergunta não pode ser respondido sem algum contexto histórico. Richard Stallman anunciou o Projeto GNU em 27 de setembro de 1983. O objetivo era fornecer o software necessário para desenvolver um sistema operacional semelhante ao UNIX (e a terra do usuário que o acompanha) como software livre . Em 1992, o Projeto GNU havia completado quase todas as peças essenciais para seu software - exceto uma: o kernel. Ao mesmo tempo, Linus Torvalds lançou seu kernel Linux (versão 0.12) como software livre, licenciado sob a licença GPL . Portanto, pela primeira vez, seria possível executar um computador composto (quase) inteiramente por software livre.
Linux (como mencionado) é um kernel e, embora seja a base definitiva do software que permite que você use seu computador, não é de muita utilidade sozinho. Você deve emparelhá-lo com algum tipo de aplicativo (userland) para que ele seja executado. É o que as distribuições GNU / Linux como Debian ou Ubuntu e similares fazem.
Vale ressaltar que um kernel é importante e sem importância ao mesmo tempo. Permita-me explicar. A maioria das pessoas que usa um computador está acostumada com a terra do usuário e não com o kernel. O kernel é principalmente transparente, e a maioria das pessoas usaria outro kernel com a mesma área de usuário e pode nem perceber a diferença (a menos que, é claro, estejam dependendo de um recurso fornecido por um kernel específico).
Portanto, quando você usa Linux , você realmente está usando uma realização do sistema operacional GNU; esse é o kernel do Linux e a área de usuário do GNU (GNOME, GNU Compiler Collection, depurador GNU, GNU Coreutils, GNU binutils, etc). É por isso que a FSF insiste em chamá-la GNU / Linux (na minha opinião, um pedido justo).
Você pode, é claro, usar o Linux sem a terra do usuário GNU (dica: Android, Busybox ) e, é claro, usar a terra do usuário GNU sobre outros kernels (kfreebsd, hurd, etc.).
Quanto ao Unix é open source e afins, essa é uma pergunta que pode envolver bastante discussão. No entanto, você pode encontrar algumas informações úteis aqui