¿Por qué las computadoras parecen tener una mente propia?

¡También me he preguntado sobre esto! Se supone que las computadoras ejecutan una secuencia precisa de pasos, escrita por algún programador, y las computadoras tampoco cometen errores, ¿verdad?

Incorrecto. Lo que sucede en su computadora es esencialmente aleatorio . Claro, cada programa por separado puede ser no aleatorio (buena suerte; las computadoras no cometen errores, los programadores lo hacen), pero esto solo es cierto si se les permite ejecutarse en completo aislamiento. En realidad, sucede algo diferente:

  • El mundo externo comienza a llamar: llamadas “solicitudes de interrupción”, cuando el hardware quiere que la CPU deje de hacer lo que está haciendo en este momento y preste atención a algo más, como un paquete que llega a su tarjeta de red. Estos eventos son al azar. También pueden interrumpirse entre sí . Para manejar tales solicitudes, la mayoría de los programas de usuario pueden pausarse y reanudarse en cualquier momento, sin su consentimiento.
  • Todos los programas cargados deben competir por los recursos de hardware: para crear la ilusión de que se ejecutan más programas de los que tiene núcleos de CPU, solo obtienen segmentos de tiempo de CPU y se intercalan en algún orden (determinado por el algoritmo de programación). Dependiendo de qué programa retiene qué recursos, esto puede dar lugar a situaciones en las que se esperan mutuamente para liberar algo, ambos incapaces de continuar (esto se llama un punto muerto). Este es un proceso aleatorio, ya que es posible que desee comenzar cualquier cosa en cualquier momento y usarla de cualquier manera.
  • Todos los programas usan el mismo sistema operativo y pueden querer cosas diferentes: instalan y eliminan bibliotecas compartidas (código), escriben y leen valores de configuración en una ubicación compartida (carpeta o registro), intentan conectarse a diferentes lugares en el sistema operativo … de nuevo, esto es algo que no se ejecuta de acuerdo con ningún plan: el orden en que instalará y desinstalará los programas es aleatorio.

Las computadoras en realidad no tienen una mente propia, están completamente programadas y son más o menos 100% deterministas.

Los humanos tienen una mente propia. Si alguna vez podemos replicar eso algún día con computadoras … entonces Terminator.

El sistema informático es una gran pila con una tonelada de niveles diferentes que van desde hardware de metal desnudo hasta aplicaciones de alto nivel. Cada capa debe adherirse a interfaces bien definidas para que funcione todo el sistema. Ninguna parte puede realmente actuar con una mente propia.

No he respondido a su pregunta en absoluto ya que no estoy de acuerdo con la premisa básica. = (

Editar:

Lo siento, creo que mi respuesta fue un poco superficial y poco convincente. No quería que pareciera que estabas equivocado. Pero estaba preocupado si realmente pensabas que las computadoras tenían una mente propia, entonces quizás tu comprensión fundamental de las computadoras podría estar apagada.

Editar # 2:

Hola, vi tu actualización de la descripción de la pregunta. Todavía es un poco vago, pero puedo darte una pequeña idea de cómo las cosas pueden comportarse de manera diferente en diferentes momentos. Aquí hay un par de posibilidades, y todo gira en torno al contexto :

1. Hay ciertos tipos de errores que no son 100% reproducibles, por ejemplo, a veces ocurren y otras no. La razón principal por la que existe el error todavía se debe a un error humano, pero podría manifestarse de formas extrañas que son inconsistentes para un usuario.

2. El estado de su computadora, teléfono, etc. cambia constantemente. Los teléfonos inteligentes y las computadoras en estos días reciben actualizaciones automáticas, por lo que a veces no eres consciente de que un programa podría haberse actualizado. Tal vez se solucionó un problema, o tal vez se introdujo un error, con una actualización automática. Esto podría explicar un comportamiento diferente.

3. ¿Qué más se está ejecutando? La computadora es un sistema completo y en cualquier momento tiene muchas cosas ejecutándose en su computadora. Un día puede que tengas 5 programas en ejecución y tu juego Flappy Bird está funcionando muy bien. Tal vez el segundo día tengas 500 programas en ejecución, y por alguna razón tu juego Flappy Bird no puede comenzar. Es posible que la computadora no tenga recursos, por ejemplo, memoria, y no pueda funcionar como usted espera.

“Por ejemplo, por qué puedes hacer algo en una computadora un día, pero al día siguiente haces exactamente lo mismo y no funciona, o hace otra cosa”. , ¿Cómo llegaste a esa conclusión? Ejecute una aplicación hoy y luego vuelva a ejecutarla mañana, el resultado seguirá siendo el mismo.

Las computadoras hacen lo que los programadores les dicen que hagan, nada más. Ciertamente no tienen una mente propia. Si su computadora se comporta de esta manera, le sugiero que ejecute un análisis de malware de inmediato .

Ellos no. La computadora se comporta de acuerdo con su programación. Cualquier comportamiento contrario a la intención del usuario suele ser el resultado de que el usuario hace algo incorrectamente o no comprende lo que realmente está haciendo y espera resultados que en el contexto serían incorrectos.

Podría ponerlo como una variación de la tercera ley de Clarke (“Cualquier tecnología lo suficientemente avanzada es indistinguible de la magia”): cualquier sistema o proceso suficientemente complejo que no sea bien entendido por el operador es indistinguible de una IA malévola empeñada en atormentarlos. .