Многозадачность - это выполнение неопределенное количество программ в одно время(условно).
⠀
Каждая программа - это процесс со своим собственным островком памяти с каким-то количеством пальм(потоков). Если есть один процесс, то в нем обязательно будет один поток. Процессы нужны для группировки ресурсов программы, которыми смогут в последующем воспользоваться потоки.
⠀
В процессе могут располагаться несколько потоков. Они как пальмы на острове, которые пользуются песком, как материалом для своих действий. Так и потоки пользуются адресным пространством процесса для своих нужд. Так же потоки, как пальмы не могут расти в море, значит и потоки не могут выходить за адресное пространство процесса.
⠀
Поток в одной программе может делать много вещей. Процесс в одном компьютере много разных программ.
⠀
Процессы не знаю друг о друге. Если зависнет плеер, то текстовый редактор будет спокойно работать и в ус не дуть. А если в одном потоке, что-то не так, то в теории он может убить всю программу(процесс).
⠀
Параллельно процессы и потоки выполняются только в видимости. Все они просто играют в пошаговую стратегию сначала один кусок потом второй и так далее.