Cuál es la diferencia entre una actualización del sistema y una actualización del software?

Bueno, esa es una pregunta interesante y difícil, porque lleva varias trampas. Las primeras respuestas son en realidad técnicamente incorrectas.

Así que, vamos a ver.

En primer lugar, en Windows todo se llama actualización y en Linux hay una actualización y una mejora.

Lo primero es lo primero: Linux utiliza toneladas de bibliotecas de código compartido. Sólo para que lo entiendas mejor, piensa en diálogos de apertura y guardado de archivos aquí, que son utilizados por varias aplicaciones. Esto sólo araña la superficie de esto. Pero es una forma sencilla de imaginarlo. Ahora, el problema es que esto entrelaza todo el sistema. Hay una versión del kernel, que necesita ciertas versiones de librerías de código, que son necesarias para ciertas versiones de aplicaciones. Esta es una) de las razones por las que es difícil crear sistemas de versiones fijas como Ubuntu. Porque se necesitan toneladas de gestión para crear un snapshot, para que el sistema sea igualado y estable. Esto es b) por qué las distros de Linux suelen venir con repositorios de software dedicados. Porque en ellos están las versiones de software que se ajustan a tu sistema y lo mantienen estable.

Así que, en Linux la actualización sólo obtiene el estado de los repositorios de software dedicados y las versiones de software actualmente disponibles. La actualización por otro lado es el proceso que instala el software en tu PC en caso de que haya versiones más nuevas que las instaladas en los repositorios de software dedicados que utiliza tu sistema en ese momento. Así que, si en tu sistema está instalada la versión 2, si preguntas qué versiones están disponibles y el repo dice, tengo la versión 3 (y tu gestión de paquetes lo registra) => esa es la actualización. Si dices, ok entonces instala la versión 3 => ¡esa es la actualización! Es entonces cuando pasas de la versión 2 a la 3 en tu PC. Por lo tanto, la actualización es una especie de flujo de noticias y la actualización es el cambio real. En Ubuntu por ejemplo hay dos comandos diferentes (apt update y apt upgrade) y por eso también los usas y por eso emites el update antes del upgrade.

Ahora, aquí hay otra diferencia entre Windows y Linux:

Microsoft con Windows suele ofrecerte un sistema básico sin apenas nada y sólo unas pocas aplicaciones básicas como un editor de texto y quizás un cliente de correo electrónico. Hay unos pocos componentes de software básicos que vienen con el sistema. Y el resto de controladores y aplicaciones están separados del sistema. Bueno, la verdad es que ahora mismo Windows está tratando de ponerse al día con Linux. Como por ejemplo añadiendo SSH a la línea de comandos, intentando conseguir un sistema de rolling release para Windows, o tiendas de aplicaciones dedicadas, creando una capa de compatibilidad para los binarios de Linux (WSL) como hace WINE en Linux para los binarios de Windows... estas son cosas que han existido con Linux durante décadas. Lamentablemente, en este momento todavía hay toneladas de problemas con estas cosas. Pero por el bien del argumento, vamos a retroceder un poco en términos de versiones de Windows y decir, que el propio Windows y las aplicaciones están separadas.

En ambos casos se puede realmente actualizar aplicaciones particulares o tal vez un montón de ellas. Lo que pasa es que en Linux realmente puedes hacerlo todo a la vez y en Windows tienes que actualizar/instalar una tras otra en la mayoría de los casos, porque normalmente se ejecuta a través del instalador que viene con Windows y en esos momentos bloquea lo mismo para otras aplicaciones. Si se ejecuta una actualización del sistema en Windows, normalmente sólo se actualiza el propio Windows. No las aplicaciones que vienen con él. Así que, aquí está tu primera pista.

Si actualizas un software específico en Windows, normalmente le das un nombre al bebé. Como por ejemplo, ejecutar una actualización de office. Es decir, actualizar la suite ofimática. Un montón de ellos sería técnicamente "actualizar aplicaciones" o una actualización de aplicaciones o actualizar un montón de aplicaciones. La cuestión interesante es quién lo llama así. Así que sí, algunas personas lo llamarían una actualización de software. Lo cual no es técnicamente correcto. Y a eso llegaré en un momento.

Sin embargo, si echamos un vistazo al extremo de Linux, las cosas se complican un poco más. Dado que las distribuciones de Linux vienen con repositorios de software dedicados y un sistema de gestión de paquetes, en realidad se puede actualizar paquetes específicos uno por uno, paquetes específicos un montón de ellos en una sola vez, o su puede ejecutar una actualización completa. Y no he dicho actualización completa del sistema a propósito. Porque ahora estamos en un pequeño aprieto. Porque las distribuciones de Linux ya no separan el sistema y el software, sino que lo tienen todo en un solo repositorio de software y actualizan TODO lo que han instalado desde este repositorio de una sola vez. Y ahora, las cosas del sistema como el kernel y las aplicaciones que vienen con tu configuración o que has instalado encima, se actualizan de una sola vez. Por otro lado, la mejor manera es siempre, ejecutar una actualización completa del sistema para asegurarse de que todo coincide correctamente. Y Arch Linux lo demuestra vívidamente por los usuarios que una y otra vez lo declaran en el foro. Si usted no está acostumbrado a eso, esto puede realmente a través de usted en el principio. Y vas a luchar con eso hasta que realmente sigas las instrucciones. En ese momento Arch Linux se convierte en un paseo suave.

Y esto se pone aún peor en caso de que utilice algún ayudante como yay y lo utilice para ejecutar una actualización completa. Porque yay primero va a emitir una actualización completa de pacman y después de eso comienza a actualizar las aplicaciones que instalaste desde el repo de la comunidad.

Así que técnicamente, una actualización del sistema sería de componentes específicos y en Windows eso está bastante claro, porque la actualización de Windows es para Windows, es decir, ¡el sistema solamente! En Linux, a pesar de que el término se utiliza realmente, es un poco difícil de definir, lo que es el ugprade real del sistema. Pero es probable que se refiera a una actualización completa utilizando su sistema de gestión de paquetes. Y en este caso TODO el material involucrado se actualiza. Con Ubuntu, por ejemplo, los PPAs que añades se añaden a una lista general de repos de software para tu sistema de gestión de paquetes. Por lo tanto, la ejecución de una actualización completa del sistema SIEMPRE actualizará todo lo que las nuevas versiones están disponibles en una sola vez, si usted emite una actualización completa del sistema.

Así que, dejemos que esto sea UNA pista de que Windows y Linux definitivamente NO son lo mismo.

Ahora, vamos a echar un vistazo más de cerca al término actualización de software o actualización de software preferido. Aunque a menudo se utiliza para referirse a las actualizaciones de aplicaciones, esto no es técnicamente correcto. Veamos eso.

El hardware es técnicamente todo lo que se puede tocar. Como la carcasa de tu PC, tu monitor, tu teclado, tu disco duro, tu unidad de DVD... eso es hardware.

El software es técnicamente todo lo digital que no puedes tocar directamente. El software es en realidad un ESTADO del hardware o, para ser más precisos, un estado del medio en los dispositivos de almacenamiento. El software consiste técnicamente en una u otra representación que llamaríamos unos y ceros. Así pues, dos ESTADOS, que en el proceso se convierten en energía y no energía para un ordenador. Eso es realmente y todo lo que hace un ordenador. Unos y ceros o poder y no-poder.

Y si miras más profundamente, aprenderás, que no importa, si eso es tu kernel, tu sistema operativo, tus aplicaciones, tus fotos, tus videos, Windows o Linux. Técnicamente TODO es una colección de los dos estados de unos y ceros. ¡EL FIN! Y eso es lo que es el SOFTWARE. Así que técnicamente, tu sistema operativo, tu kernel, tus aplicaciones, tus fotos... ¡todo es SOFTWARE!

Por lo tanto, una actualización de software puede referirse en realidad a CUALQUIER cosa en tu ordenador que no sea hardware. Aunque, por lo general, no es muy probable que vayas a actualizar una foto que tomaste, sino que vas a tomar y añadir nuevas fotos. PERO... puedes actualizar y mejorar una tabla de Excel, ¿verdad? Actualizar => cambias los datos dentro de la tabla. Actualizar => cuando lo copias de un lugar a otro. Versión antigua, versión nueva. PERO... realmente es más probable utilizar el término actualización de software para los programas (como en el teatro). Es decir, componentes del sistema y aplicaciones. No tanto datos de usuario como fotos y hojas de cálculo.

Así que técnicamente, el término actualización de software en realidad es el término padre para todo tipo de actualizaciones de software, que podría ser software del sistema, así como aplicaciones. Y definitivamente se está utilizando para esos dos. Quizá no tanto para los datos de los usuarios, como las tablas e imágenes de Excel. Y sí, hay mucha gente por ahí que utiliza este término específicamente para las actualizaciones de aplicaciones. Pero eso no es técnicamente correcto. Al menos si se piensa, que este es un término preciso para las actualizaciones de aplicaciones y nada más.