¿Qué son el software y el hardware de una computadora?
La palabra "software" llegó del extranjero a principios de los años 1960. La palabra inglesa "software" se traduce como "productos blandos" y "software", y ahora la gente generalmente la llama software. En la actualidad, se cree generalmente que el software es una parte más del sistema informático y es interdependiente del hardware. Es una colección completa de programas, datos y documentación relacionada. Entre ellos, un programa es una secuencia de instrucciones ejecutadas de acuerdo con requisitos funcionales y de rendimiento prediseñados; los datos son una estructura de datos que permite que el programa opere la información normalmente; los documentos son materiales gráficos relacionados con el desarrollo, mantenimiento y uso del programa. ⑵En las discusiones habituales entre académicos, el término software de computadora a menudo se confunde con programas de computadora. Sin embargo, según la definición de software de computadora en las "Cláusulas estándar para la protección de software de computadora" (OMPI) de 1978 publicadas por la Organización Mundial de la Propiedad Intelectual (OMPI), el software de computadora incluye tres partes: (1) Programa de computadora: incluida la fuente código, código objeto, programas informáticos, incluidos microcódigos adjuntos a cualquier medio y completados en cualquier idioma, caracteres o símbolos (2) Descripción del programa: incluida la estructura de datos, reglas de deducción y diagramas de flujo (3) Materiales auxiliares: incluidas instrucciones y operaciones del programa; Manuales, manuales de usuario. En China, el software informático se refiere a programas informáticos y documentos relacionados. Un programa de computadora se refiere a una secuencia de instrucciones codificadas que pueden ejecutarse mediante un dispositivo de procesamiento de información, como una computadora, para obtener un resultado específico, o una secuencia de instrucciones simbólicas o una secuencia de declaraciones simbólicas que pueden convertirse automáticamente en una secuencia de instrucciones codificadas. El programa fuente y el programa objeto de un mismo programa informático son el mismo trabajo. La documentación se refiere a materiales escritos y diagramas utilizados para describir el contenido, composición, diseño, funciones, especificaciones, desarrollo, resultados de pruebas y uso de un programa, como instrucciones de diseño de programas, diagramas de flujo, manuales de usuario, etc. (3) Por lo tanto, el software de computadora incluye programas de computadora y no se limita a programas de computadora, sino que también incluye instrucciones de programas relacionados y materiales auxiliares. El software informático tiene las siguientes características:
1. El software informático es una entidad lógica, no una entidad física específica. El software informático es abstracto y claramente diferente del hardware informático y otros objetos de ingeniería. Las personas pueden registrarlo en papel o en la memoria de una computadora, o en discos, cintas y discos ópticos, pero no pueden ver la forma del software en sí. Sólo a través de la observación, el análisis, el pensamiento y el juicio profesionales podemos comprender sus funciones, desempeño y otras características.
2. El software de computadora es diferente del hardware. El desarrollo de software informático no tiene un proceso de fabricación obvio y, a diferencia del hardware, una vez desarrollado con éxito, se puede fabricar repetidamente y se puede realizar un control de calidad durante el proceso de fabricación. El software transforma el conocimiento y la tecnología en productos de información a través de actividades intelectuales humanas. Una vez que un proyecto de software se ha desarrollado con éxito, se puede copiar en grandes cantidades, por lo que el control de calidad del software debe centrarse primero en el desarrollo del software. Precisamente gracias a la facilidad de copia de software ha surgido la protección de los productos de software.
3. El funcionamiento y uso del software informático no provocará desgaste mecánico ni envejecimiento del hardware. Durante el uso de cualquier equipo mecánico y electrónico, la tasa de fallas sigue principalmente la "curva de la bañera": cuando se pone en uso por primera vez, los componentes no coinciden bien y no funcionan de manera flexible, y es probable que ocurran problemas, pero se estabilizan después. un período de operación. A medida que el equipo funciona durante mucho tiempo, se desgastará y envejecerá, y la tasa de fallas será cada vez más grave. Cuando alcanza cierto nivel, es el final de la vida. Pero no hay ningún problema de desgaste del software, sólo de degradación. Durante el ciclo de vida del software, para permitirle superar problemas no descubiertos previamente y adaptarse a los cambios en el entorno de software y hardware y a los nuevos requisitos del usuario, el software debe modificarse (mantenerse) varias veces, y cada modificación inevitablemente introduce nuevos errores. a un aumento en las tasas de fallas del software y a una degradación gradual del software.
4. El desarrollo y funcionamiento del software informático a menudo están restringidos por el sistema informático, y muchos programas dependen del sistema informático en diversos grados. Es imposible que el software se deshaga por completo del hardware y se mueva de forma independiente. Algunos programas tienen fuertes dependencias y, a menudo, están dedicados a un determinado tipo de computadora, mientras que otros dependen de un determinado sistema operativo.
5. El desarrollo de software informático aún no se ha deshecho del modelo de desarrollo manual. Los productos de software están en su mayoría "hechos a la medida" y pocos pueden ensamblarse a partir de componentes disponibles en el mercado. En los últimos años, aunque la tecnología de software ha logrado grandes avances y se han propuesto muchos métodos de desarrollo nuevos, como el uso de tecnología de reutilización de software disponible en el mercado y sistemas de generación automática para desarrollar algunas herramientas de desarrollo de software y entornos de desarrollo de software eficaces, en la adopción de software. las tasas en los proyectos siguen siendo bajas.
Dado que el desarrollo manual tradicional todavía domina, la eficiencia del desarrollo de software es naturalmente limitada.
6. El software en sí es muy complejo. La complejidad del software puede provenir de la complejidad de los problemas reales que refleja, como las leyes naturales o las cosas de la sociedad humana que refleja tienen una cierta complejidad, por otro lado, también puede provenir de la complejidad de la lógica del programa; estructura . El desarrollo de software, especialmente el desarrollo de software de aplicaciones, a menudo implica experiencia en otros campos, lo que impone grandes exigencias a los desarrolladores de software. Cada vez es más evidente que la complejidad del software no es compatible con el desarrollo de la tecnología del software.
7. Los costes de desarrollo de software son bastante elevados. El desarrollo de software requiere mucho trabajo mental complejo y de alta intensidad, por lo que su costo es relativamente alto. Estados Unidos invierte decenas de miles de millones de dólares en desarrollo de software cada año.
8. Una cantidad considerable de trabajo de software involucra factores sociales. El desarrollo y operación de muchos software involucra instituciones, sistemas, métodos de gestión e incluso conceptos y psicología humanos. ⑷
El software informático se clasifica por función, incluido el software del sistema y el software de aplicación.
La función del software del sistema es proporcionar un puente de comunicación entre humanos y computadoras, convertir los comandos del usuario en programas ejecutables de la computadora, hacer que la computadora realice el trabajo y luego enviar los resultados al usuario. El software del sistema incluye principalmente sistemas operativos, programas de traducción, enlazadores, cargadores, programas comunes, lenguajes de programación, sistemas de gestión de bases de datos y programas de monitoreo.
El software de aplicación se utiliza principalmente para solucionar algunos problemas específicos, con diversos tipos y usos.