J'ai quelques centaines d'ordinateurs exécutant une application. Sur un ordinateur, deux instances d'un seul bit ont été incorrectement définies sur certaines chaînes que je retire de SQLite. Si c'était mon ordinateur de développement je suppose que j'ai un bug quelque part, mais il y a certainement un certain nombre d'installations à quel point je vais commencer à voir des erreurs matérielles rares.Probabilité de corruption de disque ou de mémoire liée au matériel?
Cela dépend certainement de combien d'IO je fais, mais y a-t-il des règles générales pour quand il y a une chance décente de voir ce genre de choses? Par exemple, pour les paquets TCP, this paper a déterminé qu'une corruption non détectée et silencieuse se produira dans "environ 1 sur 16 à 10 milliards de paquets".
Malheureusement, l'exécution d'un vérificateur mem/disk sur la machine en question n'est pas susceptible de se produire.
Vous devez également ajouter une vérification du pilote ou contrôleur IO si vous travaillez sur un système d'exploitation personnalisé. – Quibblesome
Bon conseil! heureusement, les erreurs matérielles sont beaucoup plus faciles à éliminer rapidement en commutant simplement le matériel de test et en voyant si le défaut bouge. Si le matériel est assez différent et que vous échouez toujours, il y a de fortes chances que ce ne soit pas du matériel. –
Le matériel, les disques et la RAM de mon expérience sont tellement défectueux. Ce n'est pas 99,99%. –