SISTEMAS OPERATIVOS
• Conceptos generales
Un sistema operativo es un conjunto de programas que permite manejar la memoria, disco, medios de
almacenamiento de información y los diferentes periféricos o recursos de nuestra computadora, como son
el teclado, el mouse, la impresora, la placa de red, entre otros.
Historia de los Sistemas Operativos
Para encontrar los primeros sistemas operativos debemos viajar a la década de los años 50 del Siglo XX.
Anteriormente, durante los años 40, los programas se introducían directamente sobre el hardware de la
máquina a través de una serie de micro interruptores. En los años 50 surgen algunas tecnologías que
permiten una interacción más “sencilla” entre el usuario y ordenador.
Monitor residente: se trata de un sistema que carga el programa en el ordenador, leyéndolo desde una
cinta o tarjetas perforadas. Esta tecnología da lugar al considerado como primer sistema operativo de la
Historia, creado en 1956 para un ordenador IBM 704, que se encargaba de cargar programas sucesivamente
(empezaba con el siguiente cuando el anterior había terminado de cargarse), reduciendo el tiempo de
trabajo necesario.
Almacenamiento temporal: se trata de un sistema que, igualmente, trataba de aumentar la velocidad,
simultaneando la carga de programas con la ejecución de tareas.
En los años 60, la aparición del circuito integrado lanza la potencia de los ordenadores, y los sistemas
operativos responden haciéndose cada vez más complejos y ofreciendo nuevas técnicas.
Multiprogramación: en esta técnica, la memoria principal ya alberga más de un programa, y el sistema
operativo se encarga de asignar los recursos de la máquina para ejecutar tareas en función de las
necesidades existentes.
Tiempo compartido: se trata de un sistema que asigna la ejecución de aplicaciones dentro de un grupo de
usuarios que trabajan en línea.
Tiempo real: utilizado sobre todo en el área de las telecomunicaciones, se encarga de procesar sucesos
externos al ordenador, de forma que, una vez transcurrido un tiempo determinado sin éxito, los considera
fallidos.
Multiprocesador: son sistemas que tratan de gestionar las lecturas y escrituras que realizan en la memoria
dos programas que se estén ejecutando simultáneamente, con el fin de evitar errores. Como indica su
nombre, están diseñados para el uso en equipos que utilicen más de un procesador.
En los años 70, las TI continúan haciéndose cada vez más complejas, dando lugar a las primeras versiones de
algunos de los sistemas operativos que han servido como base para muchos de los que utilizamos hoy en
día, como UNIX.
Los sistemas operativos de esta década siguen estando al alcance tan solo de usuarios muy cualificados, y su
complejidad conlleva que consuman una gran cantidad de recursos. Entre los más destacados, además de
UNIX, encontramos MULTICS, BDOS y CP/M, ampliamente utilizado en equipos con microprocesador Intel.
La década de los años 80 da lugar al boom de la informática comercial. La llegada de los ordenadores a
miles de oficinas y domicilios cambia el enfoque de los sistemas operativos, obligando a desarrollar sistemas
más amigables con el usuario, que introducían elementos gráficos, como los menús.
En esta década el desarrollo es tal que se da lugar a algunos sistemas operativos ya legendarios, y que
contribuyen al auge de la informática en décadas posteriores, como C++, SunOS (desarrollado por Sun
Microsystems y derivado de UNIX), AmigaOS (desarrollado para los Commodore Amiga) y algunos clásicos
como los dos siguientes:
MS-DOS: desarrollado por Microsoft para los equipos PC de IBM, y que contribuyó enormemente a la
popularización de la informática y dio origen a los sistemas Windows.
Mac OS: sistema propio de los ordenadores Macintosh desarrollados por Apple Inc, lanzados en 1984, y que
incluía una novedosa interfaz gráfica y el uso del ratón (toda una rareza por aquella época para usuarios
acostumbrados a teclear los comandos).
La década de los años 90 continúa con la línea explosiva marcada en los años 80, dando lugar a muchos de
los sistemas operativos que, en versiones más modernas, utilizamos hoy en día:
GNU/Linux: desarrollado en base a UNIX, y que supone uno de los mayores exponentes del software libre.
En la actualidad, GNU/Linux es ampliamente utilizado en todo el mundo, teniendo una preeminencia
cercana al 100% en campos tan llamativos como el de las supercomputadoras.
Solaris: también desarrollado en base UNIX por Sun Microsystems para servidores y estaciones de trabajo.
Microsoft Windows: que ha dado lugar a una popular familia de sistemas operativos de gran éxito
comercial, utilizados por millones de usuarios alrededor de todo el mundo.
En la primera década del presente Siglo siguen sucediéndose nuevos sistemas operativos, tal vez con menor
impacto que los surgidos en la década anterior, pero que encuentran su propio lugar. Entre los más
destacados podemos citar SymbOS, MorphOS, Darwin, Mac OS, Haiku u OpenSolaris
Así llegamos a la presente década, la de los años 10 de este Siglo, en la que el auge de los dispositivos
móviles da entrada a algunos sistemas operativos muy populares, entre los que destacan Android,
desarrollado por Google o iOS, creado por Apple.
La Historia de los sistemas operativos es relativamente breve, pero ha sido muy intensa y no se detiene.
Como tampoco lo hace Pandora FMS.
• Estructura y servicios básicos del Sistema Operativo
Estructura de los sistemas operativos
La estructura interna de los sistemas operativos pueden ser muy diferentes, ya que se debe tener en cuenta
las metas de los usuarios (fácil uso, confiable, rápido, etc.) y las del sistema (fácil de diseñar, implementar y
mantener, eficiente, etc.). Veremos 3 posibles diseños del sistema.
• Sistema Monolítico Estos sistemas no tienen una estructura definida, sino que son escritos como una
colección de procedimientos donde cualquier procedimiento puede invocar a otro. Ejemplos de estos
sistemas pueden ser MS-DOS o Linux (aunque incluye algo de capas). Es importante tener en cuenta que
ningún sistema es puramente de un tipo.
• Sistema en capas El diseño se organiza en una jerarquía de capas, donde los servicios que brinda una capa
son consumidos solamente por la capa superior. La capa 0 es del Hardware y la N es la de los procesos de
Usuario. Estos sistemas tienen como ventaja que son modulares y la verificación se puede hacer a cada capa
por separado (son más mantenibles). Sin embargo el diseño es muy costoso y es menos eficiente que el
sistema monolítico ya que pierde tiempo pasando por cada capa.
• Sistema con micronúcleo La idea consiste en tener un núcleo que brinde los servicios mínimos de manejo
de procesos, memoria y que provea la comunicación entre procesos. Todos los restantes servicios se
construyen como procesos separados del micronúcleo, que ejecutan en modo usuario. Estos sistemas
tienen como ventaja un diseño simple y funcional, que aumenta la portabilidad y la escalabilidad. Para
agregar un nuevo servicio no es necesario modificar el nucleo, y es más seguro ya que los servicios corren
en modo usuario.
Servicios del Sistema Operativo
El sistema brindará un entorno de ejecución de programas donde se dispondrá de un conjunto de servicios.
Los servicios principales serán:
• Ejecución de programas (el SO deberá ser capaz de cargar un programa a memoria y ejecutarlo. El
programa deberá poder finalizar, de forma normal o anormal)
• Operaciones de E/S (el SO deberá proveer un mecanismo de acceso ya que por eficiencia y protección los
usuarios no accederán directamente al dispositivo)
• Manipulación del Sistema de archivos (se deberá tener acceso al sistema de archivos y poder, como
mínimo, leer, escribir, borrar y crear)
• Comunicación entre procesos (los procesos deberán poder comunicarse, ya sea que estén en el mismo
computador o el diferentes)
• Manipulación de errores (el sistema deberá tomar decisiones adecuadas ante eventuales errores que
ocurran, como fallo de un dispositivo de memoria, fallo en un programa, etc.)
Tipos de sistemas Operativos
Los tipos de sistema operativo varían según el hardware y la función de cada dispositivo. Existen algunos
para ordenadores y otros para dispositivos móviles.
Según el usuario pueden ser: multiusuario, sistema operativo que permite que varios usuarios
ejecuten simultáneamente sus programas; o monousuario, sistema operativo que solamente
permite ejecutar los programas de un usuario a la vez.
Según la gestión de tareas pueden ser: monotarea, sistema operativo que solamente permite
ejecutar un proceso a la vez; o multitarea, sistema operativo que puede ejecutar varios procesos al
mismo tiempo.
Según la gestión de recursos pueden ser: centralizado, sistema operativo que solo permite utilizar
los recursos de un solo ordenador; o distribuido, sistema operativo que permite ejecutar los
procesos de más de un ordenador al mismo tiempo.
Ejemplos de sistemas operativos
Microsoft Windows. De los más populares que existen, inicialmente se trató de un conjunto de
distribuciones o entornos operativos gráficos, cuyo rol era brindar a otros sistemas operativos más
antiguos como el MS-DOS una representación visual de soporte y de otras herramientas de
software. Se publicó por primera vez en 1985 y desde entonces se ha actualizado a nuevas
versiones.
MS-DOS. Se trata del Sistema Operativo de Disco de MicroSoft (siglas en inglés de MicroSoft Disk
Operating System), uno de los sistemas operativos más comunes para computadoras personales
IBM durante la década de 1980 y mediados de los 90. Contaba con una serie de comandos internos
y externos mostrados en una pantalla oscura de manera secuencial.
UNIX. Este sistema operativo fue desarrollado en 1969 para ser portable, multitarea y multiusuario.
Se trata realmente de una familia entera de SO similares, algunas de cuyas distribuciones se han
ofrecido comercialmente y otros en formato libre, siempre a partir del núcleo llamado Linux.
MacOS. Es el sistema operativo de los computadores Macintosh de Apple, también conocido como
OSX o Mac OSX. Basado en Unix y desarrollado y vendido en computadores Apple desde 2002, se
trata de la competencia más acérrima del popular Windows.
Ubuntu. Este sistema operativo es libre y de código abierto, o sea, todo el mundo puede modificarlo
sin violar derechos autorales. Toma su nombre de cierta filosofía surafricana ancestral, enfocada en
la lealtad del hombre hacia su propia especie por encima de todo. Basado en GNU/Linux, Ubuntu se
orienta hacia la facilidad de uso y la libertad total. La empresa británica que lo distribuye, Canonical,
subsiste brindando servicio técnico.
Android. Este sistema operativo basado en el núcleo Linux opera en teléfonos celulares y tablets y
otros artefactos dotados de pantalla táctil. Fue desarrollado por Android Inc. y comprado
posteriormente por Google, gracias a lo cual es tan popular que las ventas de sistemas informáticos
Android superan a las de IOS (para teléfonos celulares Macintosh) y a las de Windows Phone (para
teléfonos celulares MicroSoft).
• Sistemas de Archivos
Un sistema de archivos es el sistema de almacenamiento de un dispositivo de memoria, que estructura y
organiza la escritura, búsqueda, lectura, almacenamiento, edición y eliminación de archivos de una manera
concreta. El objetivo principal de esta organización es que el usuario pueda identificar los archivos sin lugar
a error y acceder a ellos lo más rápido posible. Los sistemas de archivos también otorgan a los archivos,
entre otras, las siguientes características:
Convenciones para nombrar a los archivos
Atributos de archivo
Control(es) de acceso
Asimismo, los sistemas de archivos son un componente operativo importante, ya que actúan como una
interfaz entre el sistema operativo y todos los dispositivos conectados al equipo (interno y externo, como
las memorias USB).
Para instalar un sistema de archivos, hay que formatear el soporte de datos. Los medios de
almacenamiento que se comercializan ya vienen formateados. En el pasado, era común que el propio
usuario tuviera que configurar los nuevos soportes de datos para almacenar y administrar los archivos.
• Máquinas virtuales
En informática, una máquina virtual es un software que simula un sistema de computación y puede
ejecutar programas como si fuese una computadora real. Este software en un principio fue definido como
"un duplicado eficiente y aislado de una máquina física". La acepción del término actualmente incluye a
máquinas virtuales que no tienen ninguna equivalencia directa con ningún hardware real.
Una característica esencial de las máquinas virtuales es que los procesos que ejecutan están limitados por
los recursos y abstracciones proporcionados por ellas. Estos procesos no pueden escaparse de esta
"computadora virtual".
Uno de los usos domésticos más extendidos de las máquinas virtuales es ejecutar sistemas operativos para
"probarlos". De esta forma podemos ejecutar un sistema operativo que queramos probar (GNU/Linux, por
ejemplo) desde nuestro sistema operativo habitual (Mac OS X por ejemplo) sin necesidad de instalarlo
directamente en nuestra computadora y sin miedo a que se desconfigure el sistema operativo primario.
Hipervisor
Las máquinas virtuales son software huésped ejecutado sobre un software especial llamado Hipervisor o
VMM (Virtual Machine Monitor). Esta VMM crea una capa de abstracción del hardware de la máquina física
(host) y se la ofrece al sistema operativo de la máquina virtual.
La capa de software VMM maneja, gestiona y arbitra los cuatro recursos principales de una computadora
(CPU, Memoria, Dispositivos Periféricos y Conexiones de Red). Así podrá repartir dinámicamente estos
recursos entre todas las máquinas virtuales definidas en el computador central. Esto hace que se puedan
tener varios ordenadores virtuales ejecutándose en el mismo ordenador físico.
Tipos de máquinas virtuales
Funcionamiento de la máquina virtual de Java, una de las máquinas virtuales de proceso más populares.
Funcionamiento de VMWare, una de las máquinas virtuales de sistema más populares.
Las máquinas virtuales se pueden clasificar en dos grandes categorías según su funcionalidad y su grado de
equivalencia a una verdadera máquina.
Máquinas virtuales de sistema (en inglés System Virtual Machine)
Máquinas virtuales de proceso (en inglés Process Virtual Machine)
Máquinas virtuales de sistema
Las máquinas virtuales de sistema, también llamadas máquinas virtuales de hardware son el tipo de
máquina virtual que se usa en la virtualización de hardware. Este tipo de virtualización permite a una
máquina física subyacente multiplicarse en varias máquinas virtuales, cada una ejecutando su
propio sistema operativo. A la capa de software que permite la virtualización se la llama monitor de
máquina virtual o hipervisor. Un monitor de máquina virtual puede ejecutarse o bien directamente sobre
el hardware o bien sobre un sistema operativo ("host operating system").
Máquinas virtuales de proceso
Una máquina virtual de proceso, a veces llamada "máquina virtual de aplicación" o PVM (siglas del
inglés Process-level Virtual Machine), se ejecuta como un proceso normal dentro de un sistema operativo
sirviendo de enlace entre un lenguaje de programación y el sistema operativo, realizando
una interpretación u otra técnica de enlace entre fuente y código máquina. La máquina se inicia
automáticamente cuando se lanza el proceso que se desea ejecutar o manualmente para ejecutar código
interactivamente y se detiene para cuando este finaliza o se le pide terminar al entorno de ejecución. Su
objetivo es el de proporcionar un entorno de ejecución independiente de la plataforma de hardware y del
sistema operativo, que oculte los detalles de la plataforma subyacente y permita que un programa se
ejecute siempre de la misma forma sobre cualquier plataforma.
El ejemplo más conocido actualmente de este tipo de máquina virtual es la máquina virtual de Java que
interpreta un código intermedio entre Java y código máquina. Otra máquina virtual muy conocida es la del
entorno .Net de Microsoft que se llama "Common Language Runtime".
Otros ejemplos de este tipo de máquinas virtuales son las usadas por herramientas de ofuscación de código
con virtualización, como por ejemplo VMProtect, Code Virtualizer y Themida
• Sistema Operativo Windows, Linux y Android
Windows.- Microsoft Windows (conocido generalmente como Windows o MS Windows), es el nombre de
una familia de distribuciones de software para PC, smartphone, servidores y sistemas empotrados,
desarrollados y vendidos por Microsoft y disponibles para múltiples arquitecturas, tales como x86 y ARM. La
primera versión de Microsoft Windows, versión 1.0, presentada en noviembre de 1985, compitió con el
sistema operativo de Apple.
Linux.- Linux es un sistema operativo completamente libre y por lo tanto, gratuito. Un producto que a
diferencia de Windows o macOS no es propiedad de una compañía, de ahí su gratuidad, sino de un gran
número de compañías o personas que contribuyen con su desarrollo y van creando sus propias distribuciones
Linux.
En definitiva, Linux es un sistema que nace de la combinación de varios proyectos entre los que destacan GNU y
la Free Software Foundation además del propio núcleo de Linux encabezado por Linus Torvalds. Su desarrollo es
uno de los mejores ejemplos del software libre, donde todo su código fuente puede ser utilizado, modificado y
distribuido libremente por cualquier bajo los términos de la licencia GPL o Licencia Pública General de GNU y
otras licencias.
Android.- El sistema operativo Android es sin duda el líder del mercado móvil en S.O, está basado en Linux
diseñado originalmente para dispositivos móviles como los teléfonos inteligentes pero después tuvo
modificación para ser usado en diferentes dispositivos como tablets. Actualmente se encuentra en
desarrollo para usarse en netbooks y PCs, el desarrollador de este S.O. es Google, fue anunciado en el 2007
y liberado en el 2008.
• Organización de la información
La forma en que un equipo organiza, da nombre, almacena y manipula los archivos se denomina sistema de
archivos o sistema de ficheros y suele depender del sistema operativo instalada en el mismo.
Sistema de Ficheros en Linux Sistema de Ficheros en Windows
Características generales de los archivos
1. Nombre y extensión: Cada archivo se identifica por un
nombre (que debería indicar su contenido) y por una
extensión (algunas veces opcional) que suele
identificar el tipo de archivo.
2. El nombre de los archivos permite normalmente hasta
256 caracteres, mientras que la extensión consta de 3 ó
4 caracteres.
3. Los archivos tiene un tamaño que se mide en bytes,
kilobytes, megabytes, gigabytes, … y que
depende de la cantidad de datos que contenga.
4. Los archivos pueden contener diferentes tipos de
información: archivos de texto, de imagen, de audio,
de vídeo, etc.
5. Los archivos se organizan en carpetas
(directorios) y subcarpetas (subdirectorios) de forma jerárquica. Véase ejemplo en la figura inferior
(Fuente: wikipedia)
6. No puede haber 2 archivos con el mismo nombre (y extensión) en la misma carpeta.
7. Nautilus es la aplicación del sistema que nos permite organizar nuestros ficheros. Nos permite
efectuar las operaciones más comunes con archivos y carpetas: copiar, mover, eliminar …
8. Otra forma de manipular archivos y carpetas es a través de su menú contextual, obtenido pulsando
con el botón derecho del ratón sobre el archivo o carpeta.
9. Especial cuidado debemos tener al arrastrar con el botón izquierdo un archivo o carpeta, porque
dependiendo del destino, se podrá copiar o mover esa información.
10. Toda la información que almacenamos en nuestra sesión de usuario está disponible en la carpeta
del sistema operativo /home/usuario
Configuración
En informática, la configuración es un conjunto de datos que determina el valor de algunas variables de
un programa o de un sistema operativo. Estas opciones generalmente son cargadas en su inicio y en algunos
casos se deberá reiniciar para poder ver los cambios, ya que el programa no podrá cargarlos mientras se
esté ejecutando, si la configuración aún no ha sido definida por el usuario (personalizada), el programa
o sistema cargará la configuración predeterminada.
Configuración predeterminada, típica o por defecto
La configuración predeterminada, típica o por defecto es la que no se ha definido aún, generalmente no es
la más recomendada, ya que por ese mismo motivo se le da la posibilidad al usuario de modificarla, una
configuración predeterminada tiene que estar preparada para:
Usuarios de todas las edades y ambos sexos.
Generalmente en inglés.
Nivel gráfico medio.
Seguridad media.
Esta configuración pretende ser lo más adaptable posible, pero siempre es mejor poseer una configuración
personalizada para adaptarla a nuestras necesidades.
Configuración personalizada
Una configuración personalizada es la definida especialmente por el usuario, esta es guardada
generalmente en un archivo o en una base de datos, puede estar cifrada para que solo se pueda modificar
por el programa a configurar, o puede ser texto plano para que también se pueda modificar sin depender
del programa (esto sucede más frecuentemente en sistemas unix).
Ejemplo de un archivo de configuración:
ArchivoConfig:
[Link] = azul;
botó[Link] = rojo;
El programa cargará en su inicio el color del fondo "azul" y el color del botón "rojo", de la siguiente manera
en un pseudocódigo:
Programa_Cargar
[Link] = [Link]
botó[Link] = [Link]ó[Link]
Terminar
El programa cargará el color de fondo y de botón indicados en el archivo de configuración.
Errores de configuración
Un error de configuración es generado por una escritura incorrecta de las líneas del archivo de
configuración o que el hardware este limitado a una configuración que no requiera de tantos recursos como
esta, esto conlleva a una ejecución defectuosa del programa informático o sistema operativo o a la
imposibilidad de ejecutarse.
Precauciones
Para evitar errores de configuración, es importante leer los requerimientos mínimos de una configuración y
que estos iguales o estén por debajo de los del hardware. De todas formas, un sistema operativo puede
restaurarse a una configuración anterior o iniciarse en modo a prueba de fallos para modificar su
configuración, cualquiera de estos dos métodos son válidos a la hora de enfrentarse a un problema de
configuración. Si ninguno de estos métodos funciona, deberemos reinstalar el sistema operativo o el
programa.
• Utilitarios (compresores, antivirus, desfragmentadores, clonación de discos y copias de seguridad)
Los utilitarios o utilidades, son programas diseñados para realizar una función determinada, por ejemplo un
editor, un depurador de código o un programa para recuperar datos perdidos o borrados accidentalmente
en el disco duro.
El término utilitario se refiere normalmente al software que resuelve problemas relacionados con la
administración del sistema de la computadora. Existen en nuestros medios programas utilitarios que nos
ayudan a resolver gran cantidad de problemas, entre ellos tenemos las llamadas utilidades:
ANTIVIRUS
En informática los antivirus son programas cuyo objetivo es detectar o eliminar virus informáticos. Nacieron
durante la década de 1980. Con el transcurso del tiempo, la aparición de sistemas operativos más
avanzados e internet, ha hecho que los antivirus hayan evolucionado hacia programas más avanzados que
no sólo buscan detectar virus informáticos, sino bloquearlos, desinfectar archivos y prevenir una infección
de los mismos. Actualmente son capaces de reconocer otros tipos de malware,
como spyware, gusanos, troyanos, rootkits, etc.
Métodos de contagio
Existen dos grandes grupos de propagación: los virus cuya instalación el usuario, en un momento dado,
ejecuta o acepta de forma inadvertida; y los gusanos, con los que el programa malicioso actúa replicándose
a través de las redes.
En cualquiera de los dos casos, el sistema operativo infectado comienza a sufrir una serie de
comportamientos anómalos o no previstos. Dichos comportamientos son los que dan la traza del problema
y tienen que permitir la recuperación del mismo.
Dentro de las contaminaciones más frecuentes por interacción del usuario están las siguientes:
Mensajes que ejecutan automáticamente programas, como el programa de correo que abre
directamente un archivo adjunto.
Ingeniería social, mensajes como «Ejecute este programa y gane un premio».
Entrada de información en discos de otros usuarios infectados.
Instalación de software que pueda contener uno o varios programas maliciosos.
A través de unidades extraíbles de almacenamiento, como memorias USB.
Seguridad y métodos de protección
Los métodos para contener o reducir los riesgos asociados a los virus pueden ser los denominados activos o
pasivos.
Tipos de antivirus
Sólo detección: son vacunas que sólo actualizan archivos infectados, sin embargo, no pueden
eliminarlos o desinfectarlos.
Detección y desinfección: son vacunas que detectan archivos infectados y que pueden
desinfectarlos.
Detección y aborto de la acción: son vacunas que detectan archivos infectados y detienen las
acciones que causa el virus.
Comparación por firmas: son vacunas que comparan las firmas de archivos sospechosos para saber
si están infectados.
Comparación de firmas de archivo: son vacunas que comparan las firmas de los atributos
guardados en tu equipo.
Por métodos heurísticos: son vacunas que usan métodos heurísticos para comparar archivos.
Invocado por el usuario: son vacunas que se activan instantáneamente con el usuario.
Invocado por la actividad del sistema: son vacunas que se activan instantáneamente por la
actividad del sistema operativo.
COMPRESOR
Un compresor es un programa informático empleado para reducir el tamaño de un fichero.
El objetivo de este tipo de compresores es buscar redundancias en el fichero original y eliminarlas, de forma
que la pérdida de información no implique una pérdida de calidad, o al menos ésta no sea demasiado
apreciable.
La eficiencia de un compresor se evalúa tanto por la estimación objetiva de la calidad del fichero resultante
(comparada con el original), como por medio de la "relación de compresión" (RC), que nos indica en qué
proporción ha sido reducida la información. Por ejemplo, un RC de 10:1 indica que por cada 10 bits del
fichero original solamente tenemos 1 bit en el fichero comprimido, es decir, el tamaño del fichero se habrá
reducido en 10 veces.
DESCOMPRESOR
Descomprimir es el proceso inverso a comprimir. En general, la información comprimida debe primero
descomprimirse para que pueda ser accedida, leída o modificada. En general, los archivos comprimidos
pueden descomprimirse con el mismo programa que se usó para comprimirlos. Por ejemplo, los archivos
comprimidos .zip ó .rar, pueden descomprimirse con WinRAR, WinZip o programas similares.
DESFRAGMENTADOR
Un Desfragmentador de Disco es un programa que restablece el orden en la superficie del disco duro o disco
rígido de las computadoras, resolviendo así el problema de la fragmentación y logrando un funcionamiento
optima en éstas.
Durante el proceso de copia de un archivo, el sistema operativo del equipo (generalmente Windows),
desmenuza la información y la reparte entre las unidades de espacio más pequeñas en que se divide el disco
conocidas comoclusters.
El problema es que el sistema copia los datos de forma secuencial en el primer cluster que encuentra
disponible, por lo que el contenido del archivo queda disperso en la superficie del disco. Este proceso recibe
el nombre de fragmentación.
El desfragmentador del disco para encargarse de este problema, copia en la memoria los fragmentos
dispersos de un archivo y posteriormente les busca un lugar libre a fin de agruparlos.
SOFTWARE DE RESPALDO
El software de respaldo / restauración es aquel que viene incluido en los equipos de marca, pueden ser dvd
´s, cd's ó una partición en el disco duro, cuando se trata de una partición en el disco duro, el pc trae
instalada una aplicación con el nombre de recovery ó restaurar software, esta sirve para crear los dvd´d ó cd
´s de restauración.
Cuando utilizas ese software te permite elegir entre dos opciones: restaurar a estado de fábrica (quedará
cómo la primera vez que se encendió el equipo <a nivel software<) y la opción de restauración de
aplicaciones, la cual te permite restaurar sólo las aplicaciones que desees.
SOFTWARE DE RECUPERACIÓN
El escenario más común de "recuperación de datos" involucra una falla en el sistema operativo (típicamente
de un solo disco, una sola partición, un solo sistema operativo), en este caso el objetivo es simplemente
copiar todos los archivos requeridos en otro disco. Esto se puede conseguir fácilmente con un Live CD, la
mayoría de los cuales provéen un medio para acceder al sistema de archivos, obtener una copia de respaldo
de los discos o dispositivos removibles, y luego mover los archivos desde el disco hacia el respaldo con un
administrador de archivos o un programa para creación de discos ópticos. Estos casos pueden ser mitigados
realizando particiones del disco y continuamente almacenando los archivos de información importante (o
copias de ellos) en una partición diferente del de la de los archivos de sistema en el sistema operativo, los
cuales son reemplazables.
Otro escenario involucra una falla a nivel de disco, tal como un sistema de archivos o partición de disco que
esté comprometido, o una falla en el disco duro. En cualquiera de estos casos, los datos no pueden ser
fácilmente leídos. Dependiendo de la situación, las soluciones pueden estar entre reparar el sistema de
archivos, la tabla de particiones o el registro maestro de cargado (MBR), o técnicas de recuperación del
disco duro que van desde la recuperación basada en software de los datos corruptos a el reemplazo del
hardware de un disco dañado físicamente. Si la recuperación del disco duro es necesaria, el disco de por sí
típicamente ha fallado de manera permanente, y el propósito en vez de una recuperación de una sola vez,
es el de rescatar cualquier dato que pueda ser leído.
En un tercer escenario, los archivos han sido "borrados" de un medio de almacenamiento. Típicamente, los
archivos borrados no son realmente eliminados de inmediato; en vez de ello, las referencias a ellos en la
estructura de directorios ha sido removida, y el espacio que éstos ocupan se hace disponible para su
posterior sobre-escritura.