Якщо ви в часи Windows 7 не використовували шпалери, а обмежувалися однотонною заливкою, ваша ОС завантажувалася довше. Це результат того, як була написана функція завантаження шпалер у Windows 7, розповів екс-програміст Майкрософт Раймонд Чен.
Ще в 2009 році, приблизно в той же час, коли була випущена Windows 7, користувачі почали повідомляти про загадкову проблему : операційній системі іноді потрібно незвично багато часу, до 30 секунд, щоб екран вітання зник після входу в систему. У статті служби підтримки Microsoft пізніше було підтверджено, що ця проблема існує для користувачів Windows 7 і Windows Server 2008 R2 із суцільним кольоровим фоном.
Фон робочого столу, починаючи з Windows 95, часто заповнювали одним кольором для економії оперативної пам’яті і спрощення звітів про помилки.
Процес входу в систему Windows включає одночасне завантаження декількох компонентів, таких як панель задач, системні служби, значки на робочому столі фон. Система очікує, поки всі вони подадуть сигнал про свою готовність. Тільки після отримання такого повідомлення від усіх компонентів або після вичерпання 30 секунд очікування операційна система прибирає екран привітання і відображає робочий стіл.
Програмна функція, яка відповідає за встановлення фону робочого столу при завантаженні ПК, чудово працює, коли користувач встановив картинку у якості шпалер. Функція знаходить цю картинку на диску, завантажує її в оперативну пам’ять, виводить картинку на екран та повідомляє Windows про готовність.
Однак якщо користувач не встановлював картинку, натомість використавши фон робочого столу у вигляді однотонного кольору, функція встановлення шпалер не надсилала сигнал готовності. Windows не отримувала сигнал про готовність цієї функції і не могла продовжити завантаження ПК. ОС очікувала б сигналу від функції встановлення картинки шпалер безкінечно, але на такий випадок існував 30-секундний таймер очікування. Після його вичерпання Windows продовжувала завантаження.
Аналогічна проблема довгого очікування могла виникнути, якщо користувач включив групову політику “Приховати значки на робочому столі”. Код, який повідомляє про готовність значків на робочому столі, не виконувався, змушуючи ОС чекати вичерпання того ж 30-секундного таймеру.
Важливо розуміти, що сам процес входу в систему не обов’язково займав додаткові 30 секунд. Екран привітання просто залишався видимим протягом повного 30-секундного тайм-ауту, тому що один конкретний компонент не зміг повідомити про своє завершення, навіть якщо всі інші частини входу в систему завершили завантаження набагато раніше.
Як зазначено у статті служби підтримки Microsoft, оновлення, що усуває цю проблему, було випущено для Windows 7 і Windows Server 2008 R2 в листопаді 2009 року.