Окрім того, що існує багато систем Unix, які працюють на багатьох різних платформах, просто врахуйте проблеми, з якими стикається програмне забезпечення Windows від цього способу розповсюдження, хоча вони дійсно мають турбуватися лише про одну версію Windows та одну платформу (ПК) ).
Навіть за допомогою ПК, який турбується, є ще дві архітектури: 32-бітна та 64-бітна. Якщо ви помітили, переважна більшість програмного забезпечення Windows просто ігнорує 64-бітне програмне забезпечення і передає лише 32-бітне програмне забезпечення, залишаючи вас оптимальним програмним забезпеченням, якщо у вас 64-бітна система. Потім є бібліотеки. Один постачальник програмного забезпечення не хоче, щоб у вас виникали дивні помилки при спробі запустити їх програму, якщо у вас немає встановленої належної бібліотеки, тому вони просто включають бібліотеку зі своєю програмою (збільшуючи завантаження, навіть якщо у вас вже є ця бібліотека ). Друга програма робить те саме, але з іншою версією бібліотеки. У кращому випадку програма B містить більш нову версію бібліотеки, яка є сумісною назад, тому якщо ви встановите програму B післяУ програмі A все працює, але встановлення їх у зворотному порядку дає вам старішу версію бібліотеки, і програма B перерветься. Хоча часто постачальник бібліотеки вносить зміни, які не сумісні з зворотним ходом і не турбуються про зміну назви бібліотеки, тому незалежно від того, в якому порядку ви встановите дві програми, перша буде зламана. Це називається "dll hell".
На жаль, щоб уникнути цього, більшість програмного забезпечення Windows вдалося перевезти всі свої бібліотеки у власний каталог програм замість спільного каталогу, тому кожна програма має всі власні приватні бібліотеки і ніколи не ділиться між собою, що перемагає ціле в першу чергу, ви отримаєте набагато більше оперативного та дискового простору та часу, завантажуючи всі копії бібліотек.
Ось чому програмне забезпечення з відкритим кодом публікується у вихідному вигляді, і виробники ОС придумали менеджерів пакетів, які розбирають проблеми залежностей та завантажують лише попередньо складені бінарні файли, які вам потрібні, без дублювання бібліотек. Це також стосується того, що існує багато різних систем Unix, які працюють на багатьох різних платформах.
apt
речі?