Applov operacijski sistem macOS po vsem sodeč vsebuje skrajno zanimivo napako, zaradi katere začnejo računalniki Mac po 49,7 dneva neprekinjenega delovanja delovati napačno: njihova zmogljivost se poslabša, omrežne povezave se upočasnijo, sčasoma pa ne morejo vzpostaviti novih omrežnih povezav, tudi strežba obstoječih ne deluje več.
Na čudni hrošč je opozorila ekipa Photon, ki upravlja floto konfiguracij Mac za spremljanje storitve iMessage. Ekipa je opazila, da če računalnikov Mac dlje časa ne znova zaženejo, postanejo po določenem času preprosto neuporabni. Sprva niso mogli ugotoviti, zakaj se posamezni sistemi upočasnijo in izgubijo omrežno povezavo, čeprav so se na ping še odzivali, druge funkcije pa niso hotele delovati. Ker napake ob prvem poskusu niso našli, so se morali frustrirajoče odločiti za ponovni zagon sistemov, nato pa se je napaka spet pojavila, zato so se problema lotili do dna.
Hitro se je izkazalo, da težavo povzroča spremenljivka tcp_now, ki spada v plast TCP/IP sistema na osnovi Unixa in ima običajno nalogo meriti, koliko časa je minilo od zagona plasti TCP/IP, torej od zagona sistema. Ta spremenljivka mineli čas obravnava v obliki 32-bitnega nepredznačenega celega števila, torej kot unsigned 32-bit integer, merjenega v milisekundah. Zaradi 32-bitne osnove spremenljivka po 49 dneh, 17 urah, 2 minutah in 47 sekundah doseže največjo vrednost, nato pa se ne ponastavi na nič, kot bi pričakovali, ampak v bistvu zamrzne. To je težava, ker sistem zaprte povezave TCP v določenih intervalih zbere in odstrani, kar je pri macOS vsakih 30 sekund, za to pa uporablja vrednost spremenljivke tcp_now, ki ob polnitvi preneha delovati, s tem pa preneha delovati tudi zapiranje povezav.
Nato se obremenitev procesorja sistema poveča, ker poskuša žonglirati z razpoložljivimi prostimi vrati, katerih število je prav tako omejeno, ta dodatna obremenitev pa povzroči upočasnitev, sčasoma pa se sesuje tudi plast TCP/IP, kar pomeni konec omrežne komunikacije. Kako dolgo traja od polnitve spremenljivke tcp_now do padca zmogljivosti oziroma prenehanja omrežne komunikacije, je odvisno od tega, koliko omrežnega prometa poteka na zadevnem sistemu.
Napaka, ki jo imenujejo Time Bomb bug, je po vsem sodeč povezana tudi z drugimi hrošči, zato bo rešitev verjetno kmalu na voljo, čeprav ekipa Apple doslej o zadevi ni oblikovala uradnega odziva.






























