Un ordenador debe su
funcionamiento a dos elementos básicos, el hardware y el software, esenciales
para el desarrollo de un trabajo preciso y eficaz. Estos son, gracias a su
complementariedad, los encargados de todas las tareas que se desempeñan en el
equipo. Pero, ¿qué significa hardware? ¿Y software?
¿Qué
es el hardware?
El hardware hace referencia
a todos los componentes materiales y físicos de un dispositivo, es decir,
aquellos que se pueden ver y tocar. El monitor, el ratón, la CPU, el teclado o
la memoria RAM son algunos ejemplos de aquellas partes que, en su conjunto,
forman el hardware. Este término tiene su origen etimológico en el inglés,
donde “hard” significa “duro” y “ware”, “cosas”, por lo que se podría definir
incluso como “las partes duras de una computadora”. Se distinguen dos tipos:
Interno: se encuentra dentro
de la torre del ordenador, como los cables, los circuitos, la unidad central de
procesamiento o los dispositivos de almacenamiento.
Algunos de los elementos de
hardware que se considerarían internos son:
La unidad central de
procesamiento, microprocesador o CPU
Las unidades de disco duro o
HDD
Las unidades de estado
sólido o SSD
Las unidades de disco duro
híbrido o SSHD
Las unidades de lectura de
disco (CD, DVD, Blue Ray, disquetes, etcétera)
La memoria RAM
Los ventiladores
El sistema de refrigeración
líquida
El chipset o circuito
integrado auxiliar
Las tarjetas de expansión de
audio, vídeo o red
El módem
La fuente de alimentación
La tarjeta gráfica o GPU
Puertos, enchufes y
conectores
Periféricos: están situados
en el exterior de la torre del ordenador. Entre ellos tenemos los periféricos
de entrada, que dan información al sistema, como el ratón o el teclado; los
periféricos de salida, que muestran las operaciones realizadas en el ordenador,
como por ejemplo el monitor o la impresora; y los periféricos de
entrada-salida, que realizan las dos funciones anteriores, como los USB.
En cuanto al hardware
externo, algunos de los componentes que cabe destacar son:
Los monitores y pantallas
auxiliares
Los joysticks, mandos de
control para videojuegos o gamepads, y paneles de control físicos
El teclado
El ratón o mouse
Los auriculares, headsets y
altavoces
El micrófono
La cámara web
La impresora, el escáner y
el fax
Los discos duros externos y
pendrives USB
El proyector
El touchpad y la tableta
digitalizadora o tableta gráfica
El casco de realidad virtual
o VR headset
Aparatos especializados como
lectores de códigos de barras, sensores y similares
Cuando categorizamos todos
estos elementos, una primera clasificación del hardware se puede realizar en
base a su ubicación en el sistema informático. Así se hace una división entre
el hardware interno, generalmente el que se incluye dentro de una torre, y el
hardware externo, todo aquel que no tiene lugar asignado dentro de la caja del
ordenador y se sitúa por lo tanto en el rango de acción del usuario, pero fuera
de la envolvente de la máquina.
Entre todos estos
componentes, el hardware se divide en básico, para referirse a aquellos
dispositivos que son imprescindibles para el funcionamiento del equipo, como la
placa base, el teclado, la CPU, la memoria RAM o el monitor; y en
complementario, que desarrolla funciones adicionales concretas, como es el caso
de las impresoras o los pendrives.
En los últimos tiempos,
además, está cobrando fuerza el concepto de hardware libre. Éste término se
emplea para definir a los componentes del hardware cuyos diseños y esquemas son
accesibles para todo el mundo, ya sea gratis o mediante algún tipo de pago. Sin
embargo, ésta es todavía una idea que genera confusión hasta en los autores que
tratan de definirla.
Existe otra posible
clasificación que se basa en el cometido de los componentes. Así, todos los
elementos de hardware previamente listados se pueden incorporar a alguna de las
categorías que se hacen constar a continuación:
Elementos
de procesamiento: son los encargados de recibir las
instrucciones eléctricas, interpretarlas mediante cálculos y lógica, y emitir
nuevas señales eléctricas en consonancia.
Elementos
de almacenamiento: son dispositivos capaces de acumular
información de forma electromagnética o lógica para usarla según lo necesite el
sistema informático.
Dispositivos
de entrada: son periféricos que transforman los comandos
del usuario en señales eléctricas interpretables por la máquina.
Dispositivos
de salida: son periféricos que transforman las señales eléctricas
emitidas por los elementos de procesamiento para presentarlas de tal forma que
el usuario las pueda interpretar fácilmente.
Dispositivos
de entrada y salida: son periféricos mixtos que aúnan las
particularidades tanto de los dispositivos E (de entrada) como el de los
dispositivos S (de salida), cerrando un ciclo de intercambio de información con
la CPU.
Ejemplos de dispositivos de
entrada y salida
Algunos ejemplos sencillos
de dispositivos de E/S son los siguientes:
Impresoras multifuncionales.
Estuvieron muy de moda a principios de la década del 2000, y permitían tanto
imprimir documentos (salida), como escanearlos (entrada). E incluso tenían
función de fotocopiado (entrada/salida).
Pantallas táctiles. Como la
que posee nuestro teléfono móvil, en la que podemos ver la información que el
sistema emite para nosotros (salida) y al mismo tiempo ingresarle información
presionándola con nuestros dedos (entrada).
Dispositivos de redes.
Módems y tarjetas de red son dispositivos que permiten conectar nuestro sistema
a redes informáticas más vastas, de las que puede extraer o descargar
información (entrada) o bien puede enviarla (salida), como cuando añadimos una
foto a un correo electrónico.
Cascos de Realidad Virtual.
Estos aparatos se colocan en la cabeza para simular una presencia real en un
entorno virtual, emitiendo un mundo virtual en los visores dispuestos delante
de nuestros ojos (salida) y recibiendo respuestas de nuestro comportamiento al mover
la cabeza (entrada) en un proceso de retroalimentación que puede verse
perfectamente en los videojuegos.
Los elementos que se usen
para montar el ordenador y, especialmente, la forma en la que estos se
instalen, tienen un efecto determinante sobre el tipo de ordenador resultante.
Así, el uso de piezas ligeras con factores de forma pequeños, todas ellas
integradas de forma muy compacta dan lugar a portátiles y netbooks; mientras
que componentes más voluminosos, potentes, modulares y diseñados
deliberadamente para su montaje en caja o bastidor resultan en ordenadores de
sobremesa.
¿Qué
es el software?
El software es la parte
digital del ordenador, es decir, el conjunto de instrucciones, programas y
reglas informáticas que el equipo requiere para funcionar. No tiene, por
consiguiente, una existencia física, sino que es intangible e inmaterial, como
los programas para el procesamiento de textos o el sistema operativo. Este
término fue acuñado por el matemático John Wilder Tukey en 1958 para referirse
a los programas que hacían trabajar a las calculadoras electrónicas. El
software se clasifica en:
Software de sistema:
conjunto de programas que permiten al usuario comunicarse con el sistema en sí.
Son los sistemas operativos, los controladores de dispositivos y los programas
utilitarios para el mantenimiento de la computadora.
Software de aplicación:
programas diseñados para que el usuario desarrolle una tarea específica, como
escribir. Los procesadores de texto, las hojas de cálculo, el antivirus o el
reproductor de películas son algunos ejemplos.
Software de programación:
herramientas empleadas por el informático para escribir nuevos programas
gracias a un lenguaje específico.
Finalmente, cabe destacar
que, aquí sí, el concepto de software libre está más asentado que en el caso
del hardware. Esta definición se refiere a las posibilidades que tiene el
usuario de ejecutar, copiar, distribuir, estudiar y cambiar el software, tanto
gratis como mediante el pago de una determinada cantidad.
Dentro del software
informático encontramos aplicaciones, programas, sistemas operativos y muchas
otras tipologías. Para otorgar cierto orden a todo este conjunto por lo general
se usan tres divisiones: software de sistema, software de programación y
software de aplicación.
El software de sistema es la
plataforma sobre la que se asienta el hardware y las aplicaciones informáticas.
Este tipo de programa informático está escrito con un lenguaje de programación
de características de bajo nivel o de primera generación; esto es, un lenguaje
cuyas instrucciones controlan sin intermediarios el hardware como es el caso en
el lenguaje de máquina y los lenguajes ensambladores.
El sistema operativo de un
equipo informático es un claro ejemplo de software de sistema. El usuario no
opera directamente la OS, sino que interactúa con la interfaz gráfica de
usuario o GUI proporcionada por este y mediante las aplicaciones instaladas
sobre el sistema operativo.
Aparte de los sistemas
operativos, dentro del software de sistema también se encuentran las siguientes
clases de programas:
Antivirus
Utilidades de control de
disco (herramientas de formateo y similares)
Controladores de hardware o
drivers
Traductores de lenguajes
informáticos
Cargadores de programas
Algunas BIOS y UEFI
Gestores de arranque o
bootloaders
Hipervisores
Por otra parte, el software
de aplicación, software utilitario para usuario final o apps (denominación
generalista que comienza a coger tracción últimamente debido a la tecnología
móvil), son todos aquellos programas que ejecutan tareas concretas para las que
han sido desarrollados específicamente.
Finalmente, el software de
programación permite al usuario desarrollar sus propias herramientas a través
de un lenguaje más cercano al humano. Dentro de este apartado se encontrarían
herramientas como lenguajes de programación, compiladores, herramientas de
debugging o depurado y similares.
Dado que hay mil y una
aplicaciones posibles para el software, es difícil establecer una clasificación
robusta y libre de interpretaciones según su utilidad.
Una lista de algunos ejemplos
Aplicaciones de mercado
Aplicaciones colaborativas
Aplicaciones de conferencia
Aplicaciones de conferencia
vía web
Aplicaciones de correo
electrónico
Redes sociales para empresas
Aplicaciones para equipos de
trabajo
Aplicaciones de
planificación y gestión de trabajos
Aplicaciones de gestión de
contenido empresarial
Aplicaciones de gestión de
contenido persuasivo
Aplicaciones de localización
electrónica
Portales empresariales
Aplicaciones de colaboración
y contenidos compartidos
Aplicaciones de gestión de
recursos empresariales
Aplicaciones financieras
Aplicaciones de
financiamiento y contabilidad
Aplicaciones de gestión de
riesgos y tesorería
Aplicaciones de gestión de
viajes y gastos
Aplicación de impuestos
corporativos
Aplicaciones de gestión de
recursos humanos
Aplicaciones centrales de
recursos humanos
Aplicaciones para
contratación
Aplicaciones de gestión de
compensaciones
Aplicaciones de gestión del
rendimiento de plantilla
Aplicaciones de gestión de
formación
Aplicaciones de gestión de
plantilla
Aplicaciones de gestión de
pagos
Aplicaciones de negociación
Aplicaciones de gestión de
pedidos
Aplicaciones de gestión de
rendimiento empresarial
Aplicaciones de gestión de
proyectos y portafolios
Aplicaciones de gestión de
la cadena de aprovisionamiento
Aplicaciones logísticas
Aplicaciones de
planificación de la producción
Aplicaciones de gestión de
inventarios
Aplicaciones de producción y
operaciones
Aplicaciones de gestión de
redes de producción
Aplicaciones de operaciones
del sector público e industria de servicios
Otras aplicaciones de
operaciones
Aplicaciones de ingeniería
Aplicaciones de diseño
asistido por ordenador
Aplicaciones de ingeniería
asistida por ordenador
Aplicaciones de fabricación
asistida por ordenador
Aplicaciones de gestión
colaborativa de datos sobre productos
Otras aplicaciones de
ingeniería
Aplicaciones de gestión de
relaciones clientelares
Aplicaciones de gestión y
productividad de ventas
Aplicaciones de gestión de
campañas de marketing
Aplicaciones de atención al
cliente
Aplicaciones para desarrollo
y presentación en mercado
Software de análisis e
inteligencia artificial
Software de análisis,
reporte y petición al usuario final
Herramientas analíticas
predictivas y avanzadas
Plataformas de software con
IA
Herramientas de búsqueda y
análisis de contenidos
Software de gestión de
información
Sistemas de gestión de bases
de datos relacionales
Sistemas de gestión de bases
de datos no relacionales
Sistemas de gestión de bases
de datos de usuarios finales
Sistemas de gestión de bases
de datos navegacionales
Sistemas de gestión de bases
de datos orientadas a objetos
Sistemas de gestión de bases
de datos con múltiples valores
Sistemas de gestión de datos
dinámicos
Sistemas de bases de datos
orientadas a documentos
Sistemas de bases de datos
accesibles por clave
Sistemas de gestión de bases
de datos con representación gráfica
Gestores de recopilación de
datos escalables
Productos de visualización,
análisis y gestión de datos según tipo
Herramientas de gestión y
desarrollo de bases de datos
Herramientas de
administración de bases de datos
Herramientas de replicación
de bases de datos
Herramientas de modelado de
datos
Herramientas de archivado y
gestión del ciclo de vida de la información para base de datos
Herramientas de optimización
y desarrollo de bases de datos
Herramientas de seguridad
para bases de datos
Gestores de datos
distribuidos en red
Software de integridad e
integración de datos
Software de volcado de
grandes volúmenes de datos
Software de volcado de datos
dinámicos
Software de calidad de datos
Software de infraestructura
para el acceso de datos
Software de espacio de
trabajo para datos compuestos
Software de control y
definición de datos maestros
Software de gestión de
metadatos
Software de preparación de
autoservicio de datos
Gestores de información
espacial
Software de orquestación e
integración
Middleware B2B
Middleware de entrada B2B
Servicios de gestión B2B y
redes B2B
Software de integración
Software de gestión API
Plataformas de integración
Software plug-in y
adaptadores de conectividad
Middleware activado por
eventos
Middleware orientado a
mensajes
Software para retransmisión
de analíticas
Software de funciones
Gestor de transferencia de
archivos
Software de desarrollo de
aplicaciones
Herramientas, entornos y
lenguas de desarrollo
Componentes constructivos de
software
Sistemas de gestión de
normas empresariales
Herramientas de modelado y
arquitectura
Herramientas de modelado de
objetos
Herramientas de modelado de
procesos empresariales
Herramientas de arquitectura
empresarial
Herramientas de ciclo de
vida y calidad del software
Herramientas automatizadas
de calidad de software
Gestión de configuración y
cambios de software
Plataformas de aplicación
Plataformas de aplicación
orientadas a presentación
Plataformas de aplicación de
software de servidor
Plataformas de aplicación en
la nube orientadas a presentación
Plataformas de aplicación
motivadas por modelo
Monitorización de
transacciones
Software de automatización
de tareas robóticas
Software de infraestructura
de sistemas
Software de gestión de
sistema y servicios
Gestores de operaciones IT
Gestores de configuración y
automatización IT
Gestores de carga de trabajo
Controladores de
aplicaciones y centro de datos del sistema
Gestores del servicio IT
Software de entrega de
aplicaciones de red
Software de seguridad
Software de certificación
digital e identidad
Software de seguridad para
mensajes
Software de seguridad de red
Herramientas de seguridad e
inspección de contenido web
Herramientas de
orquestación, respuesta, inteligencia y análisis de seguridad
Otros programas de seguridad
Software de almacenamiento
Software de replicación y
protección de datos
Software de protección de
datos
Software de reporte,
recuperación y respaldo
Software de replicación de
almacenamiento
Software de replicación
basado en hipervisor o host
Software de migración de
sistemas y datos
Software de replicación
basado en aplicaciones y marcos de interfaz de programación Fabric
Software de replicación
matriciales
Software de gestión de
replicación
Software de archivado
Software de archivado de
correos electrónicos
Software de archivado de
ficheros y similares
Software de gestión de
almacenamiento y dispositivos
Software de gestión de SRM y
SAN heterogéneos
Software de gestión de SRM y
SAN homogéneos
Software de gestión de
dispositivos de almacenamiento
Otros programas de gestión
de almacenamiento
Software de infraestructura
de almacenamiento
Software de federación y
virtualización
Software de gestión de
volúmenes y sistemas de archivos basados en el host
Software de gestión de rutas
y accesos al almacenamiento
Software de jerarquización
automatizada del almacenamiento
Software de aceleración del
almacenamiento
Controladores de
almacenamiento definidos por software
Controladores de
almacenamiento definidos por software basado en bloques
Controladores de
almacenamiento definidos por software basado en archivos
Controladores de
almacenamiento definidos por software basado en objetos
Controladores de
almacenamiento definidos por software hiperconvergente
Gestión de punto final
Herramientas de gestión de
salida
Gestores de dispositivos
Gestores de impresión
Gestores de salida
empresarial
Gestores de punto final del
cliente
Software de computación
virtual y física
Sistemas y subsistemas
operativos
Núcleos de los sistemas
operativos
Clientes de los sistemas
operativos
Sistemas operativos
industriales embebidos
Herramientas de computación
definidas por software
Máquinas virtuales
Contenedores de
infraestructura
Sistemas en la nube
Clientes para computación
virtual
Otros programas de
computación
Esta clasificación está orientada a especialistas en el segmento de
mercado dedicado al desarrollo de software que necesitan tener un control
exhaustivo y absoluto sobre su catalogación.
Para aplicaciones a nivel de
usuario, la siguiente clasificación puede ser más explicativa:
Procesadores de texto
Gestores de bases de datos
Gestores de hojas de cálculo
Reproductores multimedia
Gestores de presentaciones
Sistemas de gestión de
relaciones clientelares
Software de planificación y
gestión de recursos
Programas educativos
Simuladores
Exploradores de contenido
Herramientas de diseño
asistido por ordenador (CAD)
Software de control
Gestores de comunicaciones
Otra posible clasificación
del software se refiere a la forma en la que este se entrega al público.
Atendiendo a esta característica podemos diferenciar los siguientes segmentos:
Shareware. Se refiere a los
programas distribuidos en calidad de demostración; es decir, su uso el gratuito
durante un periodo de prueba, al término de este es necesario adquirir una
licencia para continuar usando el software. Hay una clara intencionalidad de
venta, pues.
Liteware. En este caso
hablamos de una variedad de shareware en la que el programa completo está
deshabilitado hasta que se realiza la adquisición por parte del usuario, pero
las funcionalidades básicas del software están disponibles sin necesidad de
pagar.
Freeware. Se trata de
software que se puede usar de forma totalmente gratuita, sin embargo su
distribución está sujeta a derechos de autor, licencias de distribución o
protecciones comerciales.
Public Domain Software o
programas de dominio público. Es la evolución lógica del freeware, además de
resultar gratuitos para el usuario, no hay ninguna restricción sobre su
distribución.
Open Source Software o
programas de código abierto. Además de gratuitos y de libre distribución, los
bloques de código que conforman este tipo de programas son públicos y su
modificación queda a juicio de la comunidad de usuarios.
La terminación –ware,
claramente asociada a la palabra software, se reconoce a menudo en varios
grupos de programas cuyo fin tiene un efecto adverso sobre la experiencia de
usuario. Resumimos a continuación los tipos más comunes de software malicioso
que emplean esta terminación:
Malware. Se habla de malware
al definir cualquier programa que tiene una intención maliciosa. Es un término
generalista.
Spyware. Este tipo de
malware está especializado en recopilar información sobre el equipo informático
en el que se haya instalado desadvertidamente y sobre su usuario. Algunos de
los objetivos de este tipo de programas son las costumbres de navegación, la
información confidencial o las credenciales de acceso.
Adware. Hablamos de adware
en el caso de que el malware esté diseñado para forzar anuncios de forma
constante y habitual al usuario. Los desarrolladores de adware pueden salir
beneficiados a través de la publicidad o mediante las propias ventas generadas.
Ransomware. Son programas
que bloquean el funcionamiento del ordenador mientras no se pague un rescate.
Se puede describir como un chantaje informático. En tiempos recientes el caso
más mediático de ransomware ha sido WannaCry. La existencia de este tipo de
software es suficiente justificación para mantener copias de seguridad
redundantes de nuestros preciados archivos.
Bloatware. Se trata de
programas innecesarios que se instalan durante la descarga de otro software.
Dado que el usuario no requiere su uso, el código yace en las unidades de disco
ocupando memoria. El desperdicio de espacio en memoria, junto con su
instalación indeseada e inutilidad, son las características que lo validan como
software
Al listado de software
malicioso hay que añadir todo un abanico de virus informáticos: troyanos,
gusanos, bombas lógicas, recyclers, hoaxes y otros.
El último software especial
que vamos a introducir al lector es el middleware. También se conoce como
lógica de intercambio de información entre aplicaciones, denominación que se
justa mejor a la labor que desempeña: servir como puente entre cualquier par de
aplicaciones, paquetes de programas, OS, componente de hardware o redes.
Un software de calidad es
aquel que cumple con su funcionalidad, dispone de procedimientos de instalación
sencillos, resulta previsible, su diseño prioriza la usabilidad y es
extensible. La iteración de versiones que criben los errores de funcionamiento
(bugs y glitches) y la certificación también aportan seguridad. Sin embargo,
estas características no siempre son tan habituales en el mundo del software,
ya que se trata de herramientas tremendamente complejas al nivel más básico.
¿En qué se diferencian el
hardware y el software?
Estos dos elementos básicos
de una computadora se retroalimentan. Es decir, ambos se dan instrucciones para
el desempeño de tareas y, sin uno de ellos, no sería posible el funcionamiento
de un ordenador. Sin embargo, pese a esta complementariedad, su diferencia es
más que patente, ya que mientras el hardware se puede ver y tocar, el software
responde a elementos digitales y, por tanto, intangibles, que carecen de una
forma física.
Fuentes
https://softwarelab.org
https://www.profesionalreview.com