Czy moze się tak zdarzyć, że instrukcja zostanie pominięta?

0

Chodzi mi o takie bardzo ekstremalne przypadki na które programista nie ma za bardzo wpływu.

Nie, że ktoś coś majstrował przy kompilatorze/ide/OS, itd., tylko np.

int i = 5;
i = 10;
cout << i << endl;

I wyświetliłoby się 5?

0

Gdyby komputery miały takie błędy powodować, to raczej były by bezużyteczne. ;)

0
furious programming napisał(a):

Gdyby komputery miały takie błędy powodować, to raczej były by bezużyteczne. ;)

tzn. Kiedyś coś takiego czytałem i się zastanawiam czy w/w sytuacja (o zmianie wartości) jest możliwa na podobnej zasadzie

Bitsquatting polega na rejestracji domeny o jeden bit innej niż oryginalna i oczekiwaniu na małopopularne (ale wciąż mające niekiedy miejsce) zdarzenie zmiany bitu wywołanej z powodu przegrzania układu pamięci lub uderzenia cząstek wchodzących w skład promieniowania kosmicznego. Niektóre statystyki mówią, że można się spodziewać jednego takiego błędu dziennie na każde 4GB pamięci.

https://niebezpiecznik.pl/post/bitsquatting-czyli-promieniowanie-kosmiczne-i-bledy-w-nazwach-domen/

2

Intrygujący artykuł. Czytając kiedyś o częstości bit flipów przeraziłem się skalą potencjalnych uszkodzeń danych, dlatego zrobiłem eksperyment. Mam uruchomione 24/7 serwer dedykowany w kimsufi z 16 gb ramu bez ecc, a także raspberry pi. Przeznaczyłem na nich odpowiednio 4 i 0,5gb pamięci na eksperyment, podczas którego zapełniłem pamięć dwiema kopiami tych samych danych, a następnie co jakiś czas porównywałem je między sobą. W ciągu dwóch miesięcy nie wystąpiły różnice. Próba jest dosyć mała, więc nie można pewnie uogólniać tych wyników, ale pokazują, że niekoniecznie jest powód do paniki.
Kod którego użyłem: https://4programmers.net/Pastebin/8541

0

@WeiXiao: A może ludzie robili literówkę w adresie strony?

8

Takie rzeczy mogą się dziać, chociaż raczej w szczególnych sytuacjach. Z takich ciekawostek

  1. https://en.wikipedia.org/wiki/Row_hammer -> fizyczny problem z pamieciami RAM, który sprawia że wielokrotne odczyty mogą spowodować bitflip i jest to powtarzalne
  2. Środowiska z promieniowaniem jonizujacym -> z tego powodu np. statki kosmiczne czy systemy krytyczne mają zwykle rozwiązania w stylu tripple redundancy, gdzie 3 CPU wykonują te same operacje równolegle i porównują wyniki i ten poprawny wybierają przez głosowanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1