Windows 95 a Windows 98 se po třech desetiletích znovu objevily, a to na nečekaném místě: v operačním systému MacOS, na kterém běží všechny počítače Apple.
Americká společnost Photon, která se specializuje na integraci agentů umělé inteligence do platforem pro zasílání zpráv, objevila chybu – programovou chybu -, která způsobuje, že jakýkoli Mac zcela ztratí připojení k internetu, pokud zůstane zapnutý déle než 49 dní, 17 hodin, 2 minuty a 47 sekund. Jediný způsob, jak obnovit připojení, je restartovat počítač.
Časovač s datem vypršení platnosti
Příčina problému spočívá v interním časovači operačního systému, který měří čas uplynulý od spuštění počítače. Toto počítadlo měří v milisekundách a je navrženo jako 32bitový číselný formát, který určuje maximální strop: může dosáhnout pouze 4 294 967 295. Pokud toto číslo převedeme na reálný čas, dostaneme přesně 49 dní, 17 hodin, 2 minuty a 47 sekund. Přesně v tomto okamžiku dosáhne čítač svého limitu a dostane se do chybného stavu, který zkreslí výpočty času v systému. macOS tak ztratí referenci, kterou potřebuje ke správnému zpracování části síťového provozu.
Přímý důsledek ovlivňuje způsob, jakým systém čistí již ukončená síťová spojení. Za normálních podmínek systém macOS tato ukončená spojení po krátké době odstraní, aby uvolnil prostředky a uvolnil místo novým spojením. Při přeplnění počítadla si však systém mylně vykládá, že tato stará spojení ještě nemají být odstraněna, přestože již byla ukončena. Toto plýtvání se hromadí, dokud není dostupné místo vyčerpáno, a v tu chvíli Mac není schopen navázat novou internetovou komunikaci, i když se navenek zdá, že je zapnutý a funguje normálně.
Jak byla chyba objevena
Výzkumníci společnosti Photon na chybu narazili při používání sady Maců k monitorování služeb iMessage. Několik počítačů náhle přestalo přijímat síťová připojení, ačkoli nadále reagovaly na požadavky ping – kontrolní zprávy odesílané zařízení, které mají ověřit, zda je v síti stále aktivní. Právě tato odezva ping ztěžovala diagnostiku, protože se zdálo, že zařízení udržují stávající připojení v chodu, i když ve skutečnosti neměla přístup k internetu.
Technici společnosti byli nuceni postižená zařízení restartovat. Krátce poté, když se další várka strojů přiblížila k 49,7 dnům nepřetržité aktivity, mohli ověřit hypotézu: po dosažení této časové hranice Mac, který měl na starosti neustálé vytváření nových připojení, jednoduše přestal, aniž by zobrazil jakoukoli chybovou zprávu.
Déjà vu na dobu před 30 lety
Odborníci z Photon potvrzují, že jediným řešením je v současné době restart počítače, i když prý vyvíjejí alternativu. Zarážející je, že stejná chyba byla známa již dříve: Windows 95 i Windows 98 trpěly naprosto stejným problémem při 49,7 dnech provozu. Microsoft jej definitivně opravil s vydáním Windows XP. To, že Apple přenesl identickou chybu do svého operačního systému až do dnešních dnů, ukazuje, že některé chyby, podobně jako dobrá vína, někdy prostě mění sklepy.
