Apple MacBook замедляют работу через 49 дней из-за "бомбы замедленного действия macOS"

Если Вы владеете MacBook Neo($599 на Amazon), MacBook Pro или даже iMac и редко перезагружаете этот компьютер, то через несколько недель Вы часто замечаете, что устройство замедляет работу, а некоторые приложения перестают работать так, как нужно. Фотон обнаружила ошибку, которая действует как бомба замедленного действия и, вероятно, является причиной некоторых из этих проблем.
Эта ошибка означает, что ровно через 49 дней, 17 часов, 2 минуты и 47,296 секунды с момента включения Mac сетевые соединения перестают корректно завершаться. Изначально это приводит к увеличению загрузки процессора, поскольку через некоторое время управляются сотни или даже тысячи соединений, которые на самом деле должны были быть завершены. Как только доступные порты, число которых обычно составляет 16 384, будут исчерпаны, новые соединения уже не смогут быть установлены.
С этого момента многие приложения перестают работать должным образом, хотя сетевые соединения, которые были установлены ранее, продолжают работать без проблем, и macOS также правильно отвечает на запрос ping. Перезагрузка сбрасывает этот отсчет и, таким образом, устраняет проблему ровно на 49 дней, пока она не возникнет снова. Этот срок не случаен, поскольку macOS использует 32-битный счетчик для определения времени и продолжительности сетевых соединений.
Поэтому он может хранить значения до 2³², что соответствует 4,294,967,295 наносекундам или 49 дням, 17 часам, 2 минутам и 47,296 секундам. Если это значение превышено, счетчик переполняется и перестает работать. По этой же причине Windows 95 и Windows 98 терпели крах через 49,7 дней, а некоторые производные Linux записывают секунды с 1 января 1970 года с помощью 32-битного счетчика, что может привести к ошибке 19 января 2038 года. Более подробную информацию о предпосылках этой ошибки можно найти на сайте в информативном отчете от Photon.






