¿Puede haber una nueva forma de funcionamiento del sistema informático?

Tengo una novela de ciencia ficción con esa trama: Octágono de Fred Saberhagen. Pero es ficción. El mundo real no es así.

Sin embargo, es posible que le interese leer sobre El truco de Ken Thompson

Hubo un impulso para hacer un cambio “revolucionario” en el diseño de la computadora hace algunos años – Reducción de la computación del conjunto de instrucciones – pero al final prevaleció el deseo de compatibilidad posterior (querer seguir ejecutando el software de Windows 95) e Intel nunca redujo su conjuntos de instrucciones, simplemente agregaron más transistores para que pudieran hacer todo.

Como otros dijeron, la computación cuántica y las redes neuronales serían una forma completamente nueva de cómo funcionan las computadoras. El hardware de red neuronal nunca pareció despegar realmente (todos saben cómo programar máquinas de turing), y la computación cuántica todavía estamos esperando hardware.

Hay espacio para esto, pero no funcionaría de la manera que estás describiendo.

Como sugiere, había una suposición hecha en los primeros días de las computadoras que persiste hasta nuestros días.

Una suposición fue que, matemáticamente, una máquina universal de Turing (computadora) con 8 cintas (8 canales pci) no puede resolver matemáticamente nada más que una que tenga una sola cinta, que no era necesario hacerlas de esa manera. Un UTM con 8 cabezales de lectura (núcleos) no puede resolver matemáticamente nada más que uno que tenga un solo núcleo, por lo que no fue necesario hacerlo de esa manera. Esto persistió durante mucho tiempo en el diseño de nuestra computadora. Que abrir más ancho de banda no significaba resolver mejores problemas. Sí, cuesta más hacerlos de esta manera, pero podríamos haberlos hecho más de esta manera todo el tiempo.

Dado que los compiladores y los lenguajes de programación se centraron en que solo haya un procesador para cada proceso de forma predeterminada, no hay implementaciones de lenguaje de programación de uso común donde la concurrencia sea la predeterminada. Todos los lenguajes de programación imperativos se basan en la idea de que cada declaración tiene una secuencia de ejecución bien definida, incluso cuando realmente no importa. Por extensión, la mayoría de los programadores también piensan de esta manera.

Hay un par donde la concurrencia a menudo se sugiere como una optimización. Lenguajes más notablemente funcionales. En los lenguajes funcionales, declara qué funciones producen dada una entrada y la deja al compilador para sacar conclusiones sobre lo que puede suceder simultáneamente. Sin embargo, ningún compilador ha sido optimizado para abordar fácilmente los procesadores de 1024 núcleos porque no existen, porque son demasiado caros.

Otro problema inicial que parece haber persistido hasta hoy fue el problema de los filósofos de la comida. La forma en que se formuló el problema original, solo tenía una solución; Usted numera los recursos y los filósofos necesitan primero tomar el recurso con el número más bajo. Esto se convirtió en nuestra base para los mecanismos de bloqueo modernos que gobiernan la forma en que los procesadores se comunican entre sí y reservan el uso de recursos dentro de una computadora, como un disco duro. Sin embargo, más recientemente, eliminamos la restricción que dice que los filósofos (núcleos) no podían hablar entre ellos. En cambio, si se hablaran entre sí con semántica de mensajes, podría formular una forma de hablar para que, incluso si las personas hablaran una encima de la otra, todos estarían de acuerdo con quién obtiene los recursos.

Sospecho que en el futuro cercano, con todos trabajando en estos problemas, los límites que estamos encontrando actualmente; límites físicos de cuán rápido pueden viajar los electrones en un tiempo dado; tendrá suficientes soluciones y los lenguajes de programación se pondrán al día de manera similar.

Sin embargo, parece ser bastante difícil lograr que nuevos programadores se interesen en Haskell y Erlang a través de JavaScript. Entonces, probablemente pasará un tiempo antes de que veamos un cambio significativo en el lado humano de la informática.

Si esta es una de esas suposiciones de ‘si supiera lo que sé ahora’, entonces, por supuesto, podríamos hacerlo mucho mejor. Podríamos pasar directamente de tener poco o nada, directamente a algo que esté más cerca de lo óptimo, sin la necesidad del equipaje de compatibilidad con versiones anteriores. Gran parte de lo que se aplica a los diseños de computadoras y software está destinado a hacer que décadas de tecnología antigua funcionen en las máquinas más nuevas que terminan aumentando el costo y reduciendo la optimización. Parece que estamos disminuyendo un poco ese ciclo, ya que no se están produciendo tantos cambios en los últimos años.

¿Reemplazar binario con otra cosa?

Creo que sería extrañamente chistoso si fuera reemplazado por números romanos de alguna manera, y la compresión de archivos a este nivel podría reducirse drásticamente mediante el peligro que se aplica cuando las preguntas son un fragmento del tamaño de las respuestas, que cuando se calculan en el volar cuando se accede, eran la información original.

Extraño.

¿Qué quieres decir con “sabe códigos”?

Es poco probable que alguien que escribió código para las primeras computadoras pueda usar ese código para revolucionar la informática hoy en día, después de todo, la mayoría de ese código nunca se ejecutará (ya que las máquinas ya no existen).

Hay nuevas formas de hacer que las computadoras funcionen: por ejemplo, hay computadoras Quantum que no funcionan con dígitos binarios simples, pero usan la Mecánica Quantum para mantener y operar en más de un valor a la vez.

Para empezar, Intel y AMD trabajan en sus campos durante décadas. Lo más probable es que ambos hayan gastado millones de horas de trabajo humano optimizando sus diseños de Turing Machine: O

La probabilidad es muy escasa y la industria tiene grandes estandarizaciones, por ejemplo, IEEE, que aseguran que todo funcione bien en conjunto.

Estudiar los primeros comienzos de la informática definitivamente ampliará su comprensión de cómo funcionan las computadoras, sin embargo, dudo mucho que le permita revolucionar por completo el funcionamiento de los sistemas informáticos.

Personalmente, creo que la próxima gran revolución en la informática son las computadoras cuánticas. Estos tipos de computadoras cambiarán fundamentalmente no solo la arquitectura interna y la capacidad de procesamiento de las computadoras, sino también los lenguajes y paradigmas de programación que utilizamos.

¡Si y no!

Es posible, pero si encuentra una mejor manera de hacer una función o hacer un juego / programa que sea popular. Pero creo que es mucho más probable que una persona que es activa en la programación tenga una cadencia mucho mayor.