Ето как Windows 95 предотвратяваше хаоса в системата, причинен от външни инсталатори на програми

Най-четени

Емил Василев
Емил Василев
Емил Василев редовно превежда сложни научни теми на достъпен език — от въпроси като „Какво е имало преди Големия взрив?" до практическото приложение на биотехнологиите в лечението на болести. Тази комбинация от технологична и научна журналистика го прави един от най-разностранните автори в екипа на Kaldata.

Бившият инженер на Microsoft Реймънд Чен разкри малко известен защитен механизъм в Windows 95, чиято цел е била да се бори с некачествените инсталатори на програми. За да предотврати замяната на критично важни системни файлове с остарели версии, Windows 95 тихомълком ги възстановяваше обратно след приключване на инсталацията.

В епохата на Windows 95 инсталационните пакети на програмите често включваха свои собствени копия на системни компоненти на Windows. Официалната спецификация на Microsoft диктуваше, че инсталаторът трябва първо да провери дали такъв компонент вече съществува в системата и да инсталира своя само ако този файл липсва или версията му е по-стара.

Въпреки това много разработчици игнорираха това правило и просто презаписваха системните файлове със свои копия, без да се съобразяват с версията. Това водеше до чести случаи на „връщане“ на системните компоненти към по-стари версии, поради което друг софтуер, зависещ от тези компоненти се разваляше, а цялата система можеше да изпадне в нестабилно състояние.

Като решение Microsoft създаде в каталога C:\Windows\SYSBCKUP резервни копия на често презаписваните компоненти. След всяка инсталационна операция Windows 95 сравняваше версията на файла в системата с версията в SYSBCKUP. Ако инсталаторът записваше остаряла версия, системата тихо я заместваше с правилната от резервното копие. Ако пък се инсталираше наистина нова версия, резервното копие в SYSBCKUP се актуализираше. В резултат на това инсталаторът смяташе, че е актуализирал успешно файла, докато Windows коригираше действията му зад кулисите.

Чен разказа, че преди това Microsoft е пробвала по-прости, но груби методи. Първият – просто да блокира презаписването на системните файлове, но това водеше до грешки при инсталирането, с които обикновените потребители не можеха да се справят. Вторият – да се създаде виртуален файл, за да се заблуди инсталаторът, но много програми проверяваха целостта на файловете и откривайки подмяната, също завършваха с грешка. В сравнение с тях схемата SYSBCKUP позволяваше както на инсталатора да свърши своята работа, така и да гарантира актуалността на системните файлове.

Въпреки че този механизъм беше примитивен, в епохата на хаотичното разпространение на софтуер той ефективно помагаше за поддържането на стабилността на Windows 95.

Интересно е да се наблюдава как още преди 30 години Microsoft се сблъскваше с проблеми със съвместимостта и стабилността, които в една или друга форма са актуални и до днес. Тази „патерица“ в Windows 95 е отличен пример за прагматично инженерно решение, когато технически идеалното се оказа неприемливо от гледна точка на потребителското преживяване.

АбонаментВсичко важно от света на технологиите, директно в пощата ти.

С абонирането приемате нашите Условия и Политика за поверителност. Може да се отпишете с един клик по всяко време.


Коментирайте статията в нашите Форуми. За да научите първи най-важното, харесайте страницата ни във Facebook, и ни последвайте в Google Новини, TikTok, Telegram и Viber или изтеглете приложението на Kaldata.com за Android, iPhone, Huawei, Google Chrome, Microsoft Edge и Opera!

Абонирай се
Извести ме за
guest

3 Коментара
стари
нови оценка

Нови ревюта

Подобни новини