Вы находитесь на странице: 1из 41

FUNDAMENTOSHARDWARE2

ADMINISTRACINDE
SISTEMASINFORMTICOS
ENRED
INSTALACIN DE SOFTWARE DE UTILIDAD
Y PROPSITO GENERAL
PARA UN SISTEMA INFORMTICO

PROFESOR: Manuel Varn Casado


I. E. S. Francisco Javier de Burgos

Fundamentos Hardware: Software de Utilidad

ndice de contenido
Tipos de aplicaciones segn su licencia, distribucin y propsito. .....................................................4
Considerando el tipo de licencia software.
.........................................................................................................................................................4
Entornos operativos. ............................................................................................................................6
Sistemas operativos (Tipos y caractersticas)..................................................................................6
Gestin de procesos................................................................................................................6
Gestin de la memoria principal...........................................................................................6
Gestin del almacenamiento secundario................................................................................6
El sistema de E/S...................................................................................................................7
Sistema de archivos...............................................................................................................7
Sistemas de proteccin...........................................................................................................7
Sistema de comunicaciones....................................................................................................7
Programas de sistema............................................................................................................7
Gestor de recursos.................................................................................................................8
Instalacin y prueba de aplicaciones en sistemas operativos libres y propietarios. ............................8
Formas de instalacin en sistemas Windows...................................................................................8
Formas de instalacin en sistemas Linux-Unix-MAC.....................................................................9
Gestin de paquetes.........................................................................................................................9
Necesidades de los entornos de explotacin. .....................................................................................10
Requerimiento de las aplicaciones. ...............................................................................................10
Comparacin de aplicaciones. Evaluacin y rendimiento. ...........................................................11
Software de propsito general. .....................................................................................................16
Procesador de texto..............................................................................................................16
Hojas de clculo...................................................................................................................16
Bases de datos......................................................................................................................16
Visores pdf, postscript y libros electrnicos.........................................................................17
Programas de maquetacin. .................................................................................................17
Paquetes Ofimticos.............................................................................................................17
Ofimtica in the cloud (En la nube).....................................................................................17
Aplicaciones de trabajo con Imgenes.................................................................................18
Trabajo con sonido y audio..................................................................................................18
Trabajo con vdeo.................................................................................................................19
Programacin. ...............................................................................................................................19
LENGUAJES DE MQUINA.............................................................................................20
LENGUAJES ENSAMBLADORES...................................................................................21
LENGUAJES DE ALTO NIVEL.........................................................................................22
LENGUAJES COMPILADOS............................................................................................22
LENGUAJES INTERPRETADOS .....................................................................................23
LENGUAJES DE PROGRAMACIN DECLARATIVOS................................................23
PROGRAMACIN LGICA.............................................................................................23
PROGRAMACIN FUNCIONAL.....................................................................................24
PROGRAMACIN ORIENTADA A BASES DE DATOS.................................................24
LENGUAJES DE PROGRAMACIN IMPERATIVOS ...................................................25
LENGUAJES DE PROGRAMACIN ORIENTADOS A OBJETOS ...............................25
Clientes para servicios de Internet. ...............................................................................................26
Software a medida. .......................................................................................................................26
Instalacin de utilidades. ...................................................................................................................26
Compresores. ................................................................................................................................26
Diferencias entre compresin con y sin prdida..................................................................27
Monitorizacin y optimizacin del sistema. .................................................................................28

Fundamentos Hardware: Software de Utilidad

Gestin de ficheros y recuperacin de datos. ...............................................................................29


Gestin de discos. Fragmentacin y particionado. Conceptos. ....................................................29
Particionado..........................................................................................................................29
Tipos de particiones..............................................................................................................30
Particiones primarias............................................................................................................30
Particiones extendidas y lgicas...........................................................................................31
Razones para el uso de particiones.......................................................................................31
Fragmentacin interna..........................................................................................................33
Fragmentacin externa.........................................................................................................33
Desfragmentacin.................................................................................................................33
Aspectos de la desfragmentacin.........................................................................................33
Utilidades..............................................................................................................................34
Seguridad en sistemas informticos, utilidades. ...........................................................................34
Mtodos de contagio............................................................................................................34
Seguridad y mtodos de proteccin......................................................................................35
Antivirus (activo).................................................................................................................35
Tipos de vacunas..................................................................................................................35
Filtros de ficheros (activo)...................................................................................................36
Copias de seguridad (pasivo)...............................................................................................36
Planificacin.........................................................................................................................36
Consideraciones de software................................................................................................36
Consideraciones de la red.....................................................................................................37
Formacin: Del usuario........................................................................................................37
Antivirus...............................................................................................................................37
Firewalls...............................................................................................................................37
Reemplazo de software........................................................................................................37
Centralizacin y backup.......................................................................................................38
Empleo de sistemas operativos ms seguros........................................................................38
Temas acerca de la seguridad...............................................................................................38
Sistemas operativos ms atacados........................................................................................39
Inventariado del software instalado. .............................................................................................39
Desinstalacin de aplicaciones. Utilidades....................................................................................39
Aplicaciones portables. Caractersticas y casos prcticos. ...........................................................40
Microsoft Windows..............................................................................................................40
Macintosh.............................................................................................................................40
Sistemas basados en Unix....................................................................................................40
Referencias Bibliogrficas..................................................................................................................41

Fundamentos Hardware: Software de Utilidad

Tipos de aplicaciones segn su licencia, distribucin y


propsito.
1. Considerando el tipo de producto desarrollado, en la norma pueden dirigirse a tres
secciones independientes:
Entorno operativo
Denominacin que engloba al sistema operativo, a su
interfaz de usuario asociado y a algunas de las
aplicaciones que suelen venir con l (administrador de
archivos, programas de configuracin, etc.). Ejemplos:
Windows 98, MacOS, OS/2 y Linux.
Aplicaciones

Cualquier programa de uso general o a medida, como


podran ser un procesador de textos, un programa de
diseo, un juego, un compresor de archivos, etc.

Autopistas de la
informacin

Adems de los contenidos de las pginas web, incluye los


navegadores, los programas para correo electrnico y
cualquier otra herramienta asociada a los servicios de
Internet.

CONSIDERANDO EL TIPO DE LICENCIA SOFTWARE.


Software Libre o Free Software es un software disponible para cualquiera que desee
utilizarlo, copiarlo y distribuirlo, ya sea en su forma original o con modificaciones. La
posibilidad de modificaciones implica que el cdigo fuente est disponible. Si un programa
es libre, puede ser potencialmente incluido en un sistema operativo tambin libre. Es
importante no confundir software libre con software gratis, porque la libertad asociada al
software libre de copiar, modificar y redistribuir, no significa gratuidad. Existen programas
gratuitos que no pueden ser modificados ni redistribuidos. Y existen programas pagos.
Copyleft.
La mayora de las licencias usadas en la publicacin de software libre permite que los
programas sean modificados y redistribuidos. Estas prcticas estn generalmente prohibidas
por la legislacin internacional de copyright, que intenta impedir que alteraciones y copias
sean efectuadas sin la autorizacin del o los autores. Las licencias que acompaan al
software libre hacen uso de la legislacin de copyright para impedir la utilizacin no
autorizada, pero estas licencias definen clara y explcitamente las condiciones bajo las
cuales pueden realizarse copias, modificaciones y redistribuciones, con el fin de garantizar
las libertades de modificar y redistribuir el software registrado. A esta versin de copyright,
se le da el nombre de copyleft.
GPL.
La Licencia Pblica General GNU (GNU General Public License GPL) es la licencia que
acompaa los paquetes distribuidos por el Proyecto GNU, ms una gran varidad de software
que incluye el ncleo del sistema operativo Linux. La formulacin de GPL es tal que en vez
de limitar la distribucin del software que protege, llega hasta impedir que este software sea
integrado en software propietario. La GPL se basa en la legislacin internacional de
copyright, lo que debe garantizar cobertura legal para el software licenciado con GPL.
Debian.

Fundamentos Hardware: Software de Utilidad

La licencia Debian es parte del contrato realizado entre Debian y la comunidad de usuarios
de software libre, y se denomina Debian Free Software Guidelines (DFSG). En esencia, esta
licencia contiene criterios para la distribucin que incluyen, adems de la exigencia de
publicacin del cdigo fuente: (a) la redistribucin libre ; (b) el cdigo fuente debe ser
incluido y debe poder ser redistribuido; (c) todo trabajo derivado debe poder ser
redistribuido bajo la misma licencia del original; (d) puede haber restricciones en cuanto a la
redistribucin del cdigo fuente, si el original fue modificado; (e) la licencia no puede
discriminar a ninguna persona o grupo de personas, as como tampoco ninguna forma de
utilizacin del software; (f) los derechos otorgados no dependen del sitio en el que el
software se encuentra; y (g) la licencia no puede 'contaminar' a otro software.
Open Source. La licencia de Open Source Initiative deriva de Debian.
BSD. La licencia BSD cubre las distribuciones de software de Berkeley Software
Distribution, adems de otros programas. sta es una licencia considerada 'permisiva', ya
que impone pocas restricciones sobre la forma de uso, alteraciones y redistribucin del
software. El software puede ser vendido y no hay obligaciones de incluir el cdigo fuente.
Esta licencia garantiza el crdito a los autores del software pero no intenta garantizar que las
modificaciones futuras permanezcan siendo software libre.
X.org. El Consorcio X distribuye X Window System bajo una licencia que lo hace software
libre, aunque sin adherirse al copyleft. Existen distribuciones bajo la licencia de la X.org que
son software libre, y otras distribuciones que no lo son. Existen algunas versiones no-libres
del sistema de ventanas X11 para estaciones de trabajo y ciertos dispositivos de IBM-PC
que son las nicas funciones disponibles, sin otros similares que sean distribuidos como
software libre.
Software con Dominio Pblico. El Software con dominio pblico es software sin
copyright. Algunos tipos de copia o versiones modificadas pueden no ser libres si el autor
impone restricciones adicionales en la redistribucin del original o de trabajos derivados.
Software Semi-libre. El Software semi-libre es un software que no es libre pero permite
que otros individuos lo usen, lo copien, lo distribuyan y hasta lo modifiquen. Ejemplos de
software semi-libre son las primeras versiones de Internet Explorer de Microsoft, o algunas
versiones de browsers de Netscape, y StarOffice.
Freeware. El trmino freeware no posee una definicin ampliamente aceptada, pero es
utilizada para programas que permiten la redistribucin pero no la modificacin, y que
incluyen su cdigo fuente. Estos programas no son software libre.
Shareware. Shareware es el software disponible con el permiso para que sea redistribuido,
pero su utilizacin implica el pago. Generalmente, el cdigo fuente no se encuentra
disponible, y por lo tanto es imposible realizar modificaciones.
Software Propietario. El Software propietario es aquel cuya copia, redistribucin o
modificacin estn, en alguna medida, prohibidos por su propietario. Para usar, copiar o
redistribuir, se debe solicitar permiso al propietario o pagar.
Software Comercial. El Software comercial es el software desarrollado por una empresa
con el objetivo de lucrar con su utilizacin. Ntese que "comercial" y "propietario" no son lo
mismo. La mayor parte del software comercial es propietario, pero existe software libre que
es comercial, y existe software no-libre que no es comercial.

Fundamentos Hardware: Software de Utilidad

Entornos operativos.
El entorno operativo es el responsable fundamental de todos los elementos que
conforman la comunicacin bsica del hombre con la mquina. Adems, el desarrollo del
interfaz hombre-mquina ha cobrado una importancia fundamental en los ltimos aos.
Los usuarios que tienen ms problemas de accesibilidad son las personas con ceguera.
Todo lo que se ve en una pantalla est pensado y diseado para ser visto, especialmente
con los interfaces grficos, donde puede haber un sinfn de aplicaciones abiertas
simultneamente en diferentes ventanas y cada ventana tiene la complejidad que antes
tena toda una pantalla.
Pero tambin los usuarios con dificultades fsicas que utilizan dispositivos o programas
especiales (reconocimiento de voz, emulador de teclado, etc.) pueden tener limitado el
acceso, sobre todo por problemas de compatibilidad entre estas ayudas y el entorno
operativo o las aplicaciones.

SISTEMAS OPERATIVOS (TIPOS Y CARACTERSTICAS)


El sistema operativo es en parte el encargado de proporcionar y llevar a cabo la mayor
parte de tareas y aplicaciones para el entorno operativo.

Componentes de un sistema operativo


Gestin de procesos

Un proceso es simplemente, un programa en ejecucin que necesita recursos para realizar su tarea:
tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de:

Crear y destruir los procesos.


Parar y reanudar los procesos.
Ofrecer mecanismos para que se comuniquen y sincronicen.

La gestin de procesos podra ser similar al trabajo de oficina. Se puede tener una lista de tareas a
realizar y a estas fijarles prioridades alta, media, baja por ejemplo. Debemos comenzar haciendo las
tareas de prioridad alta primero y cuando se terminen seguir con las de prioridad media y despus
las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja
prioridad pueden que nunca lleguen a ejecutarse. y permanezcan en la lista para siempre. Para
solucionar esto, se puede asignar alta prioridad a las tareas ms antiguas.
Gestin de la memoria principal

La Memoria es una gran tabla de palabras o bytes que se referencian cada una mediante una
direccin nica. Este almacn de datos de rpido accesos es compartido por la CPU y los
dispositivos de E/S, es voltil y pierde su contenido en los fallos del sistema. El SO es el
responsable de:

Conocer qu partes de la memoria estn siendo utilizadas y por quin.


Decidir qu procesos se cargarn en memoria cuando haya espacio disponible.
Asignar y reclamar espacio de memoria cuando sea necesario.

Gestin del almacenamiento secundario

Un sistema de almacenamiento secundario es necesario, ya que la memoria principal

Fundamentos Hardware: Software de Utilidad

(almacenamiento primario) es voltil y adems muy pequea para almacenar todos los programas y
datos. Tambin es necesario mantener los datos que no convenga mantener en la memoria principal.
El SO se encarga de:

Planificar los discos.


Gestionar el espacio libre.
Asignar el almacenamiento.

El sistema de E/S

Consiste en un sistema de almacenamiento temporal (cach), una interfaz de manejadores de


dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el
almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.
Sistema de archivos

Los archivos son colecciones de informacin relacionada, definidas por sus creadores. stos
almacenan programas (en cdigo fuente y objeto) y datos tales como imgenes, textos, informacin
de bases de datos, etc. El SO es responsable de:

Construir y eliminar archivos y directorios.


Ofrecer funciones para manipular archivos y directorios.
Establecer la correspondencia entre archivos y unidades de almacenamiento.
Realizar copias de seguridad de archivos.

Existen diferentes Sistemas de Archivos, es decir, existen diferentes formas de organizar la


informacin que se almacena en las memorias (normalmente discos) de los ordenadores. Por
ejemplo, existen los sistemas de archivos FAT, FAT32, EXT3, NTFS, XFS, etc.
Desde el punto de vista del usuario estas diferencias pueden parecer insignificantes a primera vista,
sin embargo, existen diferencias muy importantes. Por ejemplo, los sistemas de ficheros FAT32 y
NTFS, que se utilizan fundamentalmente en sistemas operativos de Microsoft, tienen una gran
diferencia para un usuario que utilice una base de datos con bastante informacin ya que el tamao
mximo de un fichero con un Sistema de Archivos FAT32 est limitado a 4 gigabytes, sin embargo,
en un sistema NTFS el tamao es considerablemente mayor.
Sistemas de proteccin

Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO
se encarga de:

Distinguir entre uso autorizado y no autorizado.


Especificar los controles de seguridad a realizar.
Forzar el uso de estos mecanismos de proteccin.

Sistema de comunicaciones

Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envo y
recepcin de informacin a travs de las interfaces de red. Tambin hay que crear y mantener
puntos de comunicacin que sirvan a las aplicaciones para enviar y recibir informacin, y crear y
mantener conexiones virtuales entre aplicaciones que estn ejecutndose localmente y otras que lo
hacen remotamente.
Programas de sistema

Son aplicaciones de utilidad que se suministran con el SO pero no forman parte de l. Ofrecen un
entorno til para el desarrollo y ejecucin de programas, siendo algunas de las tareas que realizan:

Fundamentos Hardware: Software de Utilidad

Manipulacin y modificacin de archivos.


Informacin del estado del sistema.
Soporte a lenguajes de programacin.
Comunicaciones.

Gestor de recursos

Como gestor de recursos, el Sistema Operativo administra:

La CPU (Unidad Central de Proceso, donde est alojado el microprocesador).


Los dispositivos de E/S (entrada y salida)
La memoria principal (o de acceso directo).
Los discos (o memoria secundaria).
Los procesos (o programas en ejecucin).
y en general todos los recursos del sistema.

Tabla comparativa de sistemas operativos ms comunes.

Instalacin y prueba de aplicaciones en sistemas operativos


libres y propietarios.
FORMAS DE INSTALACIN EN SISTEMAS WINDOWS.
La instalacin de este sistema operativo se realiza a partir de medios como CD, DVD, o red
teniendo la clave de compra del producto. Los dispositivos de arranque adems de hacer una
instalacin desde cero, le servirn para reinstalar o reparar en caso de problemas posteriores del
software del sistema. Es muy importante tener en cuenta las especificaciones tcnicas del
fabricante del software para saber cuales sern los requisitos hardware y las incompatibilidades
que puede ofrecer el producto.

Actualizaciones ServicePack.
Los programas denominados como Service Pack (o en la sigla en ingls SP) consisten en un grupo
de parches que actualizan, corrigen y mejoran aplicaciones y sistemas operativos. Esta
denominacin fue popularizada por Microsoft cuando comenz a empaquetar grupos de parches que
actualizaban su sistema operativo Windows.
Se pueden clasificar en dos tipos:

Una en la que cada SP no contiene las actualizaciones anteriores, por lo que debe instalarse
el SP anterior antes de instalar el SP siguiente.
Y otra ms cmoda en la que cada SP contiene el SP anterior, lo que hace mucho ms fcil y
rpida la actualizacin. Microsoft Windows posee esta tcnica.

En la denominacin informtica generalmente se denominan SPx, donde la x representa la versin o


revisin. Por ejemplo SP3 implica que es el tercer Service Pack que se realiza al producto. Adems,
en ciertas ocasiones se acompaa con una letra denominando el estado evolutivo del mismo SP
(SP3a, que equivale a Service Pack 3 versin alfa).
- Instalacin de Aplicaciones. Para poder instalar aplicaciones debemos ser el administrador del
sistema operativo. Podemos instalar mediante archivos ejecutables o mediante archivos tipo CAB
(abreviatura de Cabinet) es el formato nativo de archivo comprimido de Microsoft Windows.
Soporta compresin y firma digital, y se utiliza en una variedad de motores de instalacin de
Microsoft: Setup API, Device Installer, AdvPack (para la instalacin de componentes ActiveX de
Internet Explorer) y Windows Installer.

Fundamentos Hardware: Software de Utilidad

FORMAS DE INSTALACIN EN SISTEMAS LINUX-UNIX-MAC.


La instalacin bsica de sistemas Linux, Unix y MAC , parte de un sistema de paquetes software
bsico, a partir del cul se realiza una instalacin bsica que luego puede ser complementada por la
descarga e instalacin del resto de las aplicaciones y actualizaciones requeridas. Cabe destacar que
dentro del proceso de instalacin es necesario realizar un sistema de particionado que dependiendo
del uso que se le vaya a dar al sistema tendremos que hacerlo de una forma o de otra. Los sistemas
Linux y Unix utilizan una particin especfica para la gestin del intercambio de memoria llamada
swap, que debera estar presente en casi todos los sistemas (sobre todo en los que tengamos poca
memoria RAM)

Sistemas de escritorio de usuario. Por lo general, en estos sistemas no es necesario ms que


la creacin de dos a tres particiones. La particin de intercambio, la particin raz / y algunas
veces la particin de cuentas de usuario /home (esto ltimo se hace para que si el usuario
llena su espacio de disco, esto no interfiera con el rendimiento de la ejecucin del sistema)

Sistemas de servicios especficos (servidores). Por lo general en estos sistemas se tienden a


separar las cuentas de usuario, la instalacin de las aplicaciones e incluso tendremos una
particin especfica para los directorios de trabajo de los servicios del sistema.

GESTIN DE PAQUETES
La organizacin del software en sistemas Linux viene dada por la organizacin y utilizacin de
paquetes de software, un paquete software es un conjunto de software (programas o libreras) que se
instalan en el sistema segn los requerimientos. Para cada distribucin tendremos un conjunto de
lugares en Internet llamados repositorios que es donde de una forma especfica se encuentran los
paquetes precompilados para nuestra distribucin especfica y listos para su instalacin en el
sistema. Los paquetes suelen estar relacionados entre s por lo que cuando instalamos uno nos el
sistema nos solicita instalar tambin sus dependencias (normalmente libreras)
Un sistema de gestin de paquetes, tambin conocido como gestor de paquetes, es una coleccin
de herramientas que sirven para automatizar el proceso de instalacin, actualizacin, configuracin
y eliminacin de paquetes de software. El trmino se usa comnmente para referirse a los gestores
de paquetes en sistemas Unix-like, especialmente GNU/Linux, ya que se apoyan considerablemente
en estos sistemas de gestin de paquetes.
En estos sistemas, el software se distribuye en forma de paquetes, frecuentemente encapsulado en
un solo fichero. Estos paquetes incluyen otra informacin importante, adems del software mismo,
como pueden ser el nombre completo, una descripcin de su funcionalidad, el nmero de versin, el
distribuidor del software, la suma de verificacin y una lista de otros paquetes requeridos para el
correcto funcionamiento del software. Esta metainformacin se introduce normalmente en una base
de datos de paquetes local.
Los sistemas de gestin de paquetes tienen la tarea de organizar todos los paquetes instalados en el
sistema y se encargan de mantener su usabilidad. Esto se consigue combinando las siguientes
tcnicas:

Comprobacin de la suma de verificacin para evitar que haya diferencias entre la versin
local de un paquete y la versin oficial
Comprobacin de la firma digital
Instalacin, actualizacin y eliminacin simple de paquetes
Resolucin de dependencias para garantizar que el software funcione correctamente
Bsqueda de actualizaciones para proveer la ltima versin de un paquete, ya que
normalmente solucionan bugs y proporcionan actualizaciones de seguridad.
Agrupamiento de paquetes segn su funcin para evitar la confusin al instalarlos o
mantenerlos

Fundamentos Hardware: Software de Utilidad

Muchos de los sistemas de gestin de paquetes ampliamente utilizados utilizan backends simples
para instalar los paquetes. Por ejemplo, YUM utiliza RPM como backend y APT utiliza dpkg.

Repositorios
El software normalmente se pone a disposicin de los usuarios en los repositorios, con el fin de
proporcionar a los usuarios de un sencillo control sobre los diferentes tipos de software que van a
instalar en su sistema y, en ocasiones, debido a razones legales o conveniencias por parte de los
distribuidores.

Tipos de paquetes mas comunes para Linux


Paquetes deb. Formato de paquete ya precompilado (binarios) para una distribucin y que es
utilizado por muchos tipos de distribuciones sobre todo las basadas en debian, Ubuntu y otras .
Paquetes rpm. Formato de paquetes similar al deb utilizado y popularizado por distribuciones
como Red-hat y Suse junto con las distribuciones que se basan en ellas.
Paquetes tgz(tar gz). Formato de paquete sin compilar. En este caso este paquete sirve para todas
las distribuciones, lo nico que ocurre es que no estn gestionados por el sistema interno de gestin
de la distribucin. Lo que tienen estos paquetes es el cdigo fuente junto con unos ficheros
especiales llamados Makefiles. El proceso de instalacin es el siguiente: se descomprimen, se
compilan y se instalan. Normalmente vienen acompaados de las instrucciones para realizar los tres
pasos anteriores.

Bsqueda de software
El proceso de bsqueda de software en sistemas Linux se basa en la bsqueda en las bases de datos
de los repositorios mediante herramientas como por ejemplo apt o synaptic para sistemas debian
yast2 para Suse , Yum para sistemas red-hat etc.

Necesidades de los entornos de explotacin.


REQUERIMIENTO DE LAS APLICACIONES.
Requerimientos de software
En aplicaciones de software y hardware, los requerimientos de software son las caractersticas que
debe tener el software instalado en una computadora para poder soportar y/o ejecutar una aplicacin
o un dispositivo especficos. Contrasta con los requerimientos de hardware.
Los requerimientos de software pueden ser:
* Requisitos de sistema operativo.
* Requisitos de aplicaciones especficas instaladas.
* Requisitos de ciertas aplicaciones no instaladas en el mismo sistema.
* Requisitos de determinadas configuraciones en el sistema operativo o en ciertas aplicaciones.
Ejemplo de requerimientos de software:
* Sistema operativo: Windows XP (o superior).
* Debe estar instalado: Flash Player 9 o superior.
* Debe estar instalada la mquina virtual JAVA 1.6 o superior.

Fundamentos Hardware: Software de Utilidad

10

Requerimientos de hardware.
En aplicaciones de software y hardware, los requerimientos de hardware son las caractersticas que
debe tener el hardware de una computadora para poder soportar y/o ejecutar una aplicacin o un
dispositivo especficos. Contrasta con los requerimientos de software.
Los requerimientos pueden ser:
* Requerimientos mnimos de hardware, que son las caractersticas mnimas (mnimo costo, y
mnima antigedad) indispensables para ejecutar la aplicacin correctamente.
* Requerimientos recomendados de hardware, que son las caractersticas ms apropiadas que debe
tener el hardware para poder ejecutar una aplicacin especfica.
Los requerimientos pueden ser:
* Requisitos de placa madre y de CPU.
* Requisitos de memoria.
* Requisitos de espacio disponible en disco duro.
* Requisitos de monitor y adaptador de video.
* Requisitos de unidades de CD, DVD, ratn, impresora, mdem, tarjeta de red, puertos
disponibles.
* Otros requisitos de hardware.
Los requerimientos de hardware de una aplicacin suelen prestarse a discusin entre los expertos;
por ejemplo, mientras los desarrolladores de la aplicacin dicen que la memoria RAM recomendada
para ejecutar una aplicacin es de 512 MB, otros expertos aseguran que la aplicacin slo
funcionara bien teniendo ms de 1 GB.
Ejemplo de requerimientos de hardware:
* Procesador Pentium 4 de 1 GHz con 256KB de cache (o superior)
* 256 MB SDRAM DIMM expandible a 1 GB
* 1 disco Ultra ATA100 de 100 GB de capacidad a 7200 rpm.
* Floppy Disk 3.5" y 1.44MB de capacidad.
* Unidad de CD-ROM de 48x.
* 1 placa Fast Ethernet 10/100.
* Placa aceleradora.

COMPARACIN DE APLICACIONES. EVALUACIN Y RENDIMIENTO.


Pruebas de rendimiento del software
En la ingeniera del software, las pruebas de rendimiento son las pruebas que se realizan, desde
una perspectiva, para determinar lo rpido que realiza una tarea un sistema en condiciones
particulares de trabajo. Tambin puede servir para validar y verificar otros atributos de la calidad
del sistema, tales como la escalabilidad, fiabilidad y uso de los recursos. Las pruebas de
rendimiento son un subconjunto de la ingeniera de pruebas, una prctica informtica que se
esfuerza por mejorar el rendimiento, englobndose en el diseo y la arquitectura de un sistema,
antes incluso del esfuerzo inicial de la codificacin.
Las pruebas de rendimiento pueden servir para diferentes propsitos. Pueden demostrar que el
sistema cumple los criterios de rendimiento. Pueden comparar dos sistemas para encontrar cual de
ellos funciona mejor. O pueden medir que partes del sistema o de carga de trabajo provocan que el
conjunto rinda mal. Para su diagnstico, los ingenieros de software utilizan herramientas como
pueden ser monitorizaciones que midan qu partes de un dispositivo o software contribuyen ms al
mal rendimiento o para establecer niveles (y umbrales) del mismo que mantenga un tiempo de

Fundamentos Hardware: Software de Utilidad

11

respuesta aceptable.
Es fundamental para alcanzar un buen nivel de rendimiento de un nuevo sistema, que los esfuerzos
en estas pruebas comiencen en el inicio del proyecto de desarrollo y se amplie durante su
construccin. Cuanto ms se tarde en detectar un defecto de rendimiento, mayor es el coste de la
solucin. Esto es cierto en el caso de las pruebas funcionales, pero mucho ms en las pruebas de
rendimiento, debido a que su mbito de aplicacin es de principio a fin.
En las pruebas de rendimiento, a menudo es crucial (y con frecuencia difcil de conseguir) que las
condiciones de prueba sean similares a las esperadas en el uso real. Esto es, sin embargo, casi
imposible en la prctica. La razn es que los sistemas en produccin tienen un carcter aleatorio de
la carga de trabajo y aunque en las pruebas se intente dar lo mejor de s para imitar el volumen de
trabajo que pueda tener el entorno de produccin, es imposible reproducir exactamente la
variabilidad de ese trabajo, salvo en el sistema ms simple.
Los nuevos conceptos en la implementacin de la arquitectura (por ejemplo: SOA) han aadido
complejidad adicional a las pruebas de rendimiento. Los servicios o recursos de la empresa (que
comparten infraestructura o plataforma) requieren pruebas de rendimiento coordinadas (con la
creacin del volumen y carga de todos los sistemas que comparten la infraestructura o plataformas)
para reproducir realmente el estado del entorno de produccin. Debido a la complejidad, coste y
tiempo necesario en torno a esta actividad, algunas organizaciones emplean herramientas que
pueden mostrar y crear condiciones (tambin conocido como "ruido") en los entornos de pruebas de
rendimiento para comprender la capacidad y las necesidades de recursos y verificar/validar los
niveles de calidad.

Pruebas de carga
Este es el tipo ms sencillo de pruebas de rendimiento. Una prueba de carga se realiza generalmente
para observar el comportamiento de una aplicacin bajo una cantidad de peticiones esperada. Esta
carga puede ser el nmero esperado de usuarios concurrentes utilizando la aplicacin y que realizan
un nmero especfico de transacciones durante el tiempo que dura la carga. Esta prueba puede
mostrar los tiempos de respuesta de todas las transacciones importantes de la aplicacin. Si la base
de datos, el servidor de aplicaciones, etc tambin se monitorizan, entonces esta prueba puede
mostrar el cuello de botella en la aplicacin.

Prueba de estrs
Esta prueba se utiliza normalmente para romper la aplicacin. Se va doblando el nmero de
usuarios que se agregan a la aplicacin y se ejecuta una prueba de carga hasta que se rompe. Este
tipo de prueba se realiza para determinar la solidez de la aplicacin en los momentos de carga
extrema y ayuda a los administradores para determinar si la aplicacin rendir lo suficiente en caso
de que la carga real supere a la carga esperada.

Prueba de estabilidad (soak testing)


Esta prueba normalmente se hace para determinar si la aplicacin puede aguantar una carga
esperada continuada. Generalmente esta prueba se realiza para determinar si hay alguna fuga de
memoria en la aplicacin.

Pruebas de picos (spike testing)


La prueba de picos, como el nombre sugiere, trata de observar el comportamiento del sistema
variando el nmero de usuarios, tanto cuando bajan, como cuando tiene cambios drsticos en su
carga. Esta prueba se recomienda que sea realizada con un software automatizado que permita
realizar cambios en el nmero de usuarios mientras que los administradores llevan un registro de los

Fundamentos Hardware: Software de Utilidad

12

valores a ser monitoreados.

Pre-requisitos para las pruebas de carga


Un desarrollo estable de la aplicacin instalado en un entorno lo ms parecido al de produccin.El
entorno de pruebas de rendimiento no debe cruzarse con pruebas de aceptacin de usuarios ni con el
entorno de desarrollo. Esto es tan peligroso que si las pruebas de aceptacin de usuarios, o las
pruebas de integracin o cualquier otra prueba se ejecutan en el mismo entorno, entonces los
resultados no son fiables. Como buena prctica, siempre es aconsejable disponer de un entorno de
pruebas de rendimiento lo ms parecido como se pueda al entorno de produccin.

Mitos de las pruebas de rendimiento


Algunos de los mitos ms comunes son los siguientes.
1. Las pruebas de rendimiento se hacen para romper el sistema: Las pruebas de estrs se
hacen para observar el punto de ruptura del sistema. Por el contrario, las pruebas normales
de carga se hacen generalmente para ver el comportamiento de la aplicacin bajo una carga
de usuarios esperada, y dependen de otros requisitos, tales como el aumento de carga
esperado, la carga continuada por un periodo prolongado de tiempo mientras la demanda
aumenta, la resistencia a las cadas o las pruebas de estrs.
2. Las pruebas de rendimiento slo deben hacerse despus de las pruebas de integracin
del sistema: Aunque esta es la norma comn en la industria, las pruebas de rendimiento
tambin pueden realizarse mientras se realiza el desarrollo inicial de la aplicacin. Este tipo
de enfoque se conoce como pruebas de rendimiento tempranas. Este enfoque garantizara un
desarrollo holstico de la aplicacin manteniendo los parmetros de rendimiento en mente.
Por lo tanto, la bsqueda de un problema en el rendimiento justo antes de la terminacin de
la aplicacin y el coste de corregir el error, se reduce en gran medida.
3. El probar el rendimiento slo implica la creacin de scripts y cualquier cambio en la
aplicacin solo puede causar una simple refactorizacin dichos scripts: Las pruebas de
rendimiento son en s mismas una ciencia evolucionada de la industria del software. En s
mismos, los scripts, aunque importantes, son slo uno de los componentes de las pruebas de
rendimiento. El principal desafo para cualquier persona que pruebe el rendimiento es
determinar el tipo de pruebas necesarias y analizar los distintos medidores de rendimiento
para determinar el cuello de botella de rendimiento.

Tecnologa
La tecnologa de las pruebas de rendimiento utiliza uno o ms PCs o servidores para actuar como
peticionarios. Cada uno emula la presencia de un nmero de usuarios y cada uno ejecuta una
secuencia automtica de las interacciones (registrada como una secuencia de comandos, o como una
serie de scripts para simular los distintos tipos de uso por parte de los usuarios) con la aplicacin
cuyo rendimiento se pone a prueba. Por lo general, un PC acta como gestor de prueba,
coordinando, recopilando las mtricas de cada uno de los ejecutores y acumulando los datos de
rendimiento para la realizacin de los informes. La secuencia habitual es incrementar la carga,
comenzando con un pequeo nmero de usuarios virtuales y aumentando el nmero durante un
periodo hasta alcanzar el mximo. El resultado de la prueba muestra la forma en que el rendimiento
vara con la carga, mostrando como el nmero de usuarios modifica el tiempo de respuesta. Existen
diversas herramientas disponibles para la realizacin de tales pruebas. Estas herramientas suelen
ejecutar un conjunto de pruebas que simulan usuarios reales utilizando el sistema. A veces los
resultados pueden revelar curiosidades, por ejemplo, si el promedio de tiempo de respuesta puede
ser aceptable, si existen valores anmalos en las peticiones que necesitan tiempos
considerablemente ms largo para ejecutarse - algo que puede ser causado por peticiones poco

Fundamentos Hardware: Software de Utilidad

13

eficientes a la base de datos, fotos, etc.


Las pruebas de rendimiento se pueden combinar con pruebas de estrs, con el fin de ver qu pasa
cuando una carga aceptable se supera Se cae el sistema? Cunto tiempo tarda en recuperarse si se
reduce una gran carga? Un fallo produce daos colaterales?
El modelo de anlisis de rendimiento es un mtodo para modelar el comportamiento de una
aplicacin en una hoja de clculo. El modelo se alimenta con las mediciones de los recursos
solicictados por las peticiones (CPU, IO, LAN, WAN), ponderado por el nivel de transaccin (las
peticiones realizadas por unidad de tiempo, habitualmente una hora).
La demanda de recursos de las peticiones son acumuladas para obtener la demanda de recursos por
unidad de tiempo y divididas por la capacidad total de recursos por la misma unidad, obteniendo as
la carga de recursos. Usando la formula de tiempo de respuesta (R=S/(1-U), R=tiempo de respuesta,
S=tiempo del servicio, U=carga), los tiempos de respuesta pueden ser calculados y calibrados con
los resultados de las pruebas de rendimiento. El modelo de anlisis del rendimiento permite la
evaluacin de diferentes opciones de diseo y dimensionamiento del sistema sobre la base actual o
la prevista del uso de la aplicacin. Por lo tanto, es mucho ms rpido y ms barato que las pruebas
de rendimiento, aunque requiere una alta comprensin de las plataformas de hardware.

Especificaciones del rendimiento


Es fundamental detallar las especificaciones de rendimiento (requisitos) y documentarlas en algn
plan de pruebas de rendimiento. Idealmente, esto se hace durante la fase de requisitos del desarrollo
de cualquier proyecto de desarrollo de sistemas, antes de cualquier esfuerzo de diseo.
Sin embargo, con frecuencia las pruebas de rendimiento no se realizan teniendo en cuenta alguna
especificacin, es decir, nadie ha expresado cul es el tiempo mximo de respuesta aceptable para
un nmero determinado de usuarios. Las pruebas de rendimiento se utiliza con frecuencia como
parte del proceso de ajuste de la ejecucin. La idea es identificar el "eslabn ms dbil" - hay,
inevitablemente, una parte del sistema que, si responde con mayor rapidez, eso se traducir en un
funcionamiento del sistema global ms rpido.
A veces es una difcil tarea determinar qu parte del sistema representa esta ruta crtica, y algunas
herramientas de prueba incluyen (o puede tener aadidos que lo proporcionan) instrumentos que se
ejecuta en el servidor (agentes) y que informan de tiempos de transaccin, nmero de accesos a
bases de datos, sobrecarga de la red, y otros monitores del servidor, que pueden ser analizados junto
con los datos principales de las estadsticas de rendimiento. Sin estos instrumentos se podra tener a
alguien encargado de observar el administrador de tareas de Microsoft Windows del servidor para
ver como se carga la CPU en las pruebas de rendimiento (suponiendo que se prueba un sistema de
Windows).
Hay una supuesta historia de una empresa que gast una gran cantidad para optimizar su software
sin haber realizado un anlisis adecuado del problema. La empresa termin reescribiendo el proceso
de sistema idle loop, que es donde haban encontrado que el pasaba la mayor parte de su tiempo,
pero incluso con el ms eficiente proceso de espera en el mundo, obviamente, no mejoraron el
rendimiento general ni un pice.
Las pruebas de rendimiento se pueden realizar a travs de la web, e incluso hacerse en diferentes
partes del pas, ya que es sabido que los tiempos de respuesta de Internet varan regionalmente.
Tambin se puede hacer en local, aunque el hardware de enrutamiento debe estar configurado para
introducir el desfase de lo que suele ocurrir en las redes pblicas. Las cargas deben ser realizadas en
puntos realistas del sistema. Por ejemplo, si el 50% de usuarios de un sistema accede a travs de una
conexin de mdem de 56K y la otra mitad a travs de una T1, entonces la carga simulada
(ordenadores que simulan los usuarios reales) se debe realizar, ya sea con las mismas conexiones
(caso ideal) o simular la latencia de la red de conexiones de este tipo, siguiendo el mismo perfil de
usuario.

Fundamentos Hardware: Software de Utilidad

14

Siempre es til disponer de una estimacin del pico de nmero de usuarios que se espera que
utilicen el sistema en las horas punta. Si puede ser tambin una estimacin del mximo tiempo de
respuesta permitido en el percentil 95, para que la configuracin de la ejecucin de las pruebas se
ejuste a estas especificaciones.
La especificacin de rendimiento, como mnimo, debera responder a las siguientes preguntas:

Cul es el alcance, en detalle, de la prueba de rendimiento? Qu subsistemas, interfaces,


componentes, etc estn dentro y fuera del mbito de ejecucin de esta prueba?

Para las interfaces de usuario involucradas, Cual es el nmero de usuarios concurrentes que
se esperan para cada uno (especificando picos y medias?

Cul es la estructura objetivo del sistema (hardware, especificandor todos los servidores de
red y configuraciones de dispositivo)?

Cul es la distribucin del volumen de trabajo de la aplicacin para cada componente? (por
ejemplo: 20% login, 40% buscando, 30% seleccionando elemento, 10% comprando).

Cual es la distribucin del trabajo del sistema? [Las cargas de trabajo mltiples pueden ser
simuladas en una sola prueba de eficacia] (por ejemplo: 30% del volumen de trabajo para A,
20% del volumen de trabajo para B, 50% del volumen de trabajo para C)

Cules son los requisitos de tiempo para cada uno y para todos los procesos por lotes
(especificando picos y medias)?

Tareas a realizar
Las tareas para realizar una prueba de este tipo seran las siguientes:

Decidir usar recursos internos o externos para ejecutar las pruebas, en funcin de la
experiencia de la casa (o falta de ella).
Reunir u obtener requisitos de rendimiento (especificaciones) de los usuarios y/o analistas.
Desarrollar un plan de alto nivel, incluyendo los requisitos, recursos, plazos e hitos.
Elaborar un plan de pruebas de rendimiento detallado (incluyendo los escenarios detallados
y casos de prueba, cargas de trabajo, informacin del entorno, etc).
Elegir la/s herramienta/s de prueba.
Especificar los datos de prueba necesarios y la distribucin de ellos (a menudo pasado por
alto, y a menudo el fracaso de una prueba de rendimiento vlida).
Desarrollar scripts de prueba de concepto para cada aplicacin/componente sometido a la
prueba, utilizando la herramienta de prueba elegida y estrategias.
Desarrollar un plan de prueba de rendimiento detallado, incluyendo todas las dependencias y
los plazos.
Instalar y configurar los simuladores de peticiones y controladores.
Configurar el entorno de prueba (lo ideal es que sea idntico hardware a la plataforma de
produccin), configurar los router, aislar la red (no queremos alterar los resultados por parte
de otros usuarios), desplegar la aplicacin en el servidor, desarrollar la base de datos de
prueba, etc.
Ejecutar las pruebas, probablemente en repetidas ocasiones (iterativamente), a fin de ver si
el desconocimiento de cualquier factor podra afectar a los resultados.
Analizar los resultados - ya sea de aceptando/rechazando, o investigacin el camino crtico y
recomendando medidas correctivas .

SOFTWARE DE PROPSITO GENERAL.


Denominamos software de propsito general a todas las aplicaciones de uso comn debido a que las
funcionalidades que proporcionan son de necesidad general para el trabajo cotidiano de un conjunto

Fundamentos Hardware: Software de Utilidad

15

amplio de usuarios. Podemos clasificar estas aplicaciones atendiendo a las funcionalidades para las
que han sido diseadas.

Ofimtica y documentacin electrnica.


Se llama ofimtica al equipamiento hardware y software usado para crear, coleccionar, almacenar,
manipular y transmitir digitalmente la informacin necesaria en una oficina para realizar tareas y
lograr objetivos bsicos. Las actividades bsicas de un sistema ofimtico comprenden el
almacenamiento de datos en bruto, la transferencia electrnica de los mismos y la gestin de
informacin electrnica relativa al negocio.[1] La ofimtica ayuda a optimizar o automatizar los
procedimientos existentes.
Los programas ms comunes dentro de la ofimtica son los siguientes:
Procesador de texto

No debe confundirse con editor de texto.(Escritura de texto sin formato utilizando un cdigo para
caracteres como Asccii , Unicode, etc.)
Un procesador de texto es una aplicacin informtica destinada a la creacin o modificacin de
documentos escritos por medio de una computadora. Representa una alternativa moderna a la
antigua mquina de escribir, siendo mucho ms potente y verstil que sta.
Funciones
Los procesadores de textos nos brindan una amplia gama de funcionalidades, ya sean tipogrficas,
idiomticas u organizativas, con algunas variantes segn el programa de que se disponga. Como
regla general, todos pueden trabajar con distintos tipos y tamaos de letra, formato de prrafo y
efectos artsticos; adems de brindar la posibilidad de intercalar o superponer imgenes u otros
objetos grficos dentro del texto.
Como ocurre con la mayora de las herramientas informticas, los trabajos realizados en un
procesador de textos pueden ser guardados en forma de archivos, usualmente llamados documentos,
as como impresos a travs de diferentes medios.
Los procesadores de texto tambin incorporan desde hace algunos aos correctores de ortografa y
gramtica, as como diccionarios multilinges y de sinnimos que facilitan en gran medida la labor
de redaccin.
Hojas de clculo

Una hoja de clculo es un programa que permite manipular datos numricos y alfanumricos
dispuestos en forma de tablas (la cual es la unin de filas y columnas). Habitualmente es posible
realizar clculos complejos con frmulas y funciones y dibujar distintos tipos de grficas.
Debido a la versatilidad de las hojas de clculo modernas, se utilizan a veces para hacer pequeas
bases de datos, informes, grficos estadsticos, clasificaciones de datos, entre otros usos. Las
operaciones ms frecuentes se basan en clculos entre celdas, las cuales son referenciadas
respectivamente mediante la letra de la columna y el nmero de la fila, por ejemplo =B1*C1.
Bases de datos

Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura
b. d.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemticamente
para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos
compuesta en su mayora por documentos y textos impresos en papel e indexados para su consulta.
En la actualidad, y debido al desarrollo tecnolgico de campos como la informtica y la electrnica,
la mayora de las bases de datos estn en formato digital (electrnico), que ofrece un amplio rango

Fundamentos Hardware: Software de Utilidad

16

de soluciones al problema de almacenar datos.


Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que
permiten almacenar y posteriormente acceder a los datos de forma rpida y estructurada. Las
propiedades de estos SGBD, as como su utilizacin y administracin, se estudian dentro del mbito
de la informtica.
Las aplicaciones ms usuales son para la gestin de empresas e instituciones pblicas. Tambin son
ampliamente utilizadas en entornos cientficos con el objeto de almacenar la informacin
experimental.
Visores pdf, postscript y libros electrnicos.

La mayor parte de la informacin documental se transfiere en un formato visible e imprimible


mediante formatos de archivos pdf (portable document format) y postscrip para que los documentos
intercambiados conserven el formato y la tipografa original con la que el autor realiz el
documento. Por ello es necesario tener herramientas software que permitan el trabajo con este tipo
de archivos.
Programas de maquetacin.

Para el diseo editorial, revistas, panfletos, cartelera y otros tipos de publicaciones, normalmente
no se utilizan los procesadores de texto, sino otro tipo software ms especfico para estas funciones,
a este software se le denomina programas de maquetacin. En la actualidad los programas ms
utilizados para este cometido son los siguientes: Adobe InDesign ,QuarkXPress, Scribus (libre),
Macromedia Freehand , PageMaker .
Paquetes Ofimticos.

Una suite ofimtica o suite de oficina es una recopilacin de programas, los cuales son utilizados
en oficinas y sirve para diferentes funciones como crear, modificar, organizar, escanear, imprimir,
etc. archivos y documentos. Son ampliamente usados en varios lugares, ya que al ser eso (una
recopilacin), hace que sea asequible adquirir toda la suite, que programa por programa, lo cual es
ms complejo, al tener que conseguir programa por programa, y en caso del software pagado, ms
caro.
Generalmente en las suites ofimticas, al incluir los programas en estas, no hay un estndar sobre
los programas a incluir; pero la gran mayora incluyen al menos un procesador de textos y una hoja
de clculo. Adicionalmente, la suite puede contener un Programa de presentacin, un sistema de
gestin de base de datos, herramientas menores de grficos y comunicaciones, un gestor de
informacin personal (agenda y cliente de correo electrnico) y un navegador web.
En la actualidad las suites ofimticas dominantes en el mercado son, por parte del software
propietario, Microsoft Office, la cual posee sus propios formatos cerrados de documentos para cada
uno de sus programas. Respecto al software libre, est OpenOffice, desarrollado por Sun
Microsystems, tambin con un formato para cada programa, pero de cdigo abierto. Debido a esto y
a la pobre compatibilidad entre las suites de Microsoft con otros formatos abiertos (como
OpenDocument), en cada suite ofimtica se hacen desarrollos que, generalmente, son poco
adaptables a los cambios que hace una y otra suite.
Ofimtica in the cloud (En la nube).

Cada vez es ms frecuente encontrar sitios web dedicados proporcionar aplicaciones ofimticas online capces de almacenar y organizar nuestros documentos, hojas de clculo,etc. Este tipo de
herramientas proporcionan la posibilidad de trabajar desde cualquier equipo con acceso a Internet,
as como la posibilidad de la construccin colaborativa de documentacin. Como ejemplos ms

Fundamentos Hardware: Software de Utilidad

17

relevantes podemos citar la suite ofrecida GoogleDocs o Zoho,etc.

Imagen, diseo y multimedia.


El trmino multimedia se utiliza para referirse a cualquier objeto o sistema que utiliza mltiples
medios de expresin (fsicos o digitales) para presentar o comunicar informacin. De all la
expresin "multi-medios". Los medios pueden ser variados, desde texto e imgenes, hasta
animacin, sonido, video, etc.
Aplicaciones de trabajo con Imgenes

Existe la posibilidad de trabajar con distintos tipos de aplicaciones para las imgenes. Si vamos a
trabajar y editar archivos de mapa de bits (fotos e imgenes) o si vamos a disear imgenes o logos
mediante grficos vectoriales. Disponemos de un conjunto amplio de aplicaciones entre las que
caben destacar.

Visores de imgenes. Normalmente vienen incorporados con los propios entornos operativos
y permiten la visualizacin y pequeas modificaciones de las imgenes como la rotacin la
impresin o el cambio de formato.

Editores de imgenes. Permiten funcionalidades ms especiales y concretas del trabajo con


imgenes, as como el trabajo y la modificacin por capas etc. Dentro de estos caben
destacar los dos ms abanzados ,como software propietario el Adobe Photoshop y como
sofware libre el GIMP.

Editores de grficos vectoriales. Una imagen vectorial es una imagen digital formada por
objetos geomtricos independientes (segmentos, polgonos, arcos, etc.), cada uno de ellos
definido por distintos atributos matemticos de forma, de posicin, de color, etc. Por
ejemplo un crculo de color rojo quedara definido por la posicin de su centro, su radio, el
grosor de lnea y su color. Este formato de imagen es completamente distinto al formato de
los grficos rasterizados, tambin llamados imgenes matriciales, que estn formados por
pxeles. El inters principal de los grficos vectoriales es poder ampliar el tamao de una
imagen a voluntad sin sufrir el efecto de escalado que sufren los grficos rasterizados.
Asimismo, permiten mover, estirar y retorcer imgenes de manera relativamente sencilla. Su
uso tambin est muy extendido en la generacin de imgenes en tres dimensiones tanto
dinmicas como estticas. Todos los ordenadores actuales traducen los grficos vectoriales a
grficos rasterizados para poder representarlos en pantalla al estar sta constituida
fsicamente por pxeles.
Este tipo de grficos son muy utilizados para el diseo grfico, tanto en 2D como en 3D.
Los formatos ms comunes de este tipo de grficos son los siguientes DXF, Drawing
eXchange Format y DWG, formatos de Autodesk AutoCAD,. SVG Scalable Vector
Graphics ,OpenOffice.org Draw (ODG) formatos libres.
En cuanto a los programas ms comunes de trabajo con este tipo de archivos podemos citar
AutoCAD (propietario), Adobe Ilustrator (propietario), DIA (libre) sagcad(libre) OpenOffice
Draw (libre) etc.

Trabajo con sonido y audio

Tenemos la posibilidad de trabajar y modificar sonidos de distintos formatos, dentro del software
para trabajar con este tipo de archivos vamos a destacar

Reproductores y conversores de audio. Programas que permiten la reproduccin de audio de


distintos tipos. No todos los archivos de audio (y video) utilizan la misma forma de
organizarse y de realizar muestreo, a estas formas de compresin u organizacin se les
denomina formato y codecs. Puesto que existen codecs que no son libres, puede que los

Fundamentos Hardware: Software de Utilidad

18

reproductores no puedan reproducir todos los formatos, por ello, en no pocas ocasiones
necesitaremos descargarlos para que nuestro sistema los pueda entender o realizar
conversiones entre tipos (conversores de audio).

Editores y capturadores de audio. Programas que permiten la edicin de ficheros de audio,


su amplificacin, recortarlos, etc. Entre los programas ms destacados podemos citar
Audacity (libre) y Cool Edit Pro (propietario).

Trabajo con vdeo

De la misma forma que con el audio, disponemos de la posibilidad de trabajar con distintos
formatos de video,

Reproductores y conversores de vdeos. Hay muchos programas preparados para la


reproduccin de vdeo, pero de la misma forma que ocurre con el audio, los plugins
(aadidos) de los codecs deben de estar instalados para que se pueda soportar la codifcacin
concreta de un formato. Entre los ms destacados podemos citar el VideoLan- VLC media
player (libre).

La edicin de vdeo es un proceso mediante el cual se elabora un trabajo audiovisual a partir


de las imgenes obtenidas de un soporte (archivo, cinta, disco ptico) de vdeo, grabadas
previamente. Para ello se necesita reproducir la fuente y realizar un troceado de la misma.
Una vez hecha la revisin de la fuente se seleccionan los fragmentos de vdeo y audio que
formarn parte del montaje. Como aplicaciones ms destacadas podemos citar las siguientes
MAGIX Video deluxe, Pinnacle Studio, Nero Vision, Windows Movie Maker y Avidemux
(libre).

PROGRAMACIN.
La programacin es el proceso de disear, escribir, probar, depurar y mantener el cdigo fuente de
programas computacionales. El cdigo fuente es escrito en un lenguaje de programacin. El
propsito de la programacin es crear programas que exhiban un comportamiento deseado. El
proceso de escribir cdigo requiere frecuentemente conocimientos en varias reas distintas, adems
del dominio del lenguaje a utilizar, algoritmos especializados y lgica formal. Programar no
involucra necesariamente otras tareas tales como el anlisis y diseo de la aplicacin (pero si el
diseo del cdigo), aunque si suelen estar fusionadas en el desarrollo de pequeas aplicaciones.

Historia y tipos de los lenguajes de programacin.


Los primeros lenguajes de programacin surgieron de la idea de Charles Babagge, la cual se le
ocurri a este hombre a mediados del siglo XIX. Era un profesor matemtico de la universidad de
Cambridge e inventor ingles, que la principio del siglo XIX predijo muchas de las teoras en que se
basan los actuales ordenadores. Consista en lo que l denominaba la maquina analtica, pero que
por motivos tcnicos no pudo construirse hasta mediados del siglo XX. Con l colaboro Ada
Lovedby, la cual es considerada como la primera programadora de la historia, pues realizo
programas para aqulla supuesta maquina de Babagge, en tarjetas perforadas.
Como la maquina no llego nunca a construirse, los programas de Ada, lgicamente, tampoco
llegaron a ejecutarse, pero si suponen un punto de partida de la programacin, sobre todo si
observamos que en cuanto se empez a programar, los programadores utilizaron las tcnicas
diseadas por Charles Babagge, y Ada, que consistan entre otras, en la programacin mediante
tarjetas perforadas. A pesar de ello, Ada ha permanecido como la primera programadora de la
historia. Se dice por tanto que estos dos genios de antao, se adelantaron un siglo a su poca, lo cual
describe la inteligencia de la que se hallaban dotados.

Fundamentos Hardware: Software de Utilidad

19

En 1823 el gobierno Britnico lo apoyo para crear el proyecto de una mquina de diferencias, un
dispositivo mecnico para efectuar sumas repetidas. Pero Babagge se dedico al proyecto de la
mquina analtica, abandonando la maquina de diferencias, que se pudiera programar con tarjetas
perforadas, gracias a la creacin de Charles Jacquard (francs). Este hombre era un fabricante de
tejidos y haba creado un telar que poda reproducir automticamente patrones de tejidos, leyendo la
informacin codificada en patrones de agujeros perforados en tarjetas de papel rgido. Entonces
Babagge intento crear la mquina que se pudiera programar con tarjetas perforadas para efectuar
cualquier clculo con una precisin de 20 dgitos. Pero la tecnologa de la poca no bastaba para
hacer realidad sus ideas. Si bien las ideas de Babagge no llegaron a materializarse de forma
definitiva, su contribucin es decisiva, ya que los ordenadores actuales responden a un esquema
anlogo al de la mquina analtica. En su diseo, la mquina constaba de cinco unidades bsicas: 1)
Unidad de entrada, para introducir datos e instrucciones; 2) Memoria, donde se almacenaban datos
y resultados intermedios; 3) Unidad de control, para regular la secuencia de ejecucin de las
operaciones; 4) Unidad Aritmtico-Lgica, que efecta las operaciones; 5) Unidad de salida,
encargada de comunicar al exterior los resultados. Charles Babbage, conocido como el "padre de la
informtica" no pudo completar en aquella poca la construccin del computador que haba soado,
dado que faltaba algo fundamental: la electrnica. El camino sealado de Babbage, no fue nunca
abandonado y siguindolo, se construyeron las primeras computadoras.

Clasificacin atendiendo a la cercana al hardware


LENGUAJES DE MQUINA

El lenguaje mquina de una computadora consta de cadenas de nmeros binarios (ceros y unos) y
es el nico que "entienden" directamente los procesadores. Todas las instrucciones preparadas en
cualquier lenguaje de mquina tienen por lo menos dos partes. La primera es el comando u
operacin, que dice a la computadora cul es la funcin que va a realizar. Todas las computadoras
tienen un cdigo de operacin para cada una de sus funciones. La segunda parte de la instruccin es
el operando, que indica a la computadora dnde hallar o almacenar los datos y otras instrucciones
que se van a manipular; el nmero de operandos de una instruccin vara en las distintas
computadoras. En una computadora de operando nico, el equivalente binario de "SUMAR 0814"
podra hacer que se sume el valor que se encuentra en la localidad de almacenamiento o direccin
0814 al valor que se encuentra en la unidad aritmtica lgica. En una mquina de dos operandos, la
representacin binaria de "SUMAR 0814 8672" podra hacer que se sume el valor que est en la
localidad 8672 al valor que est en la direccin 0814. El formato de operando nico es popular en
las microcomputadoras ms pequeas; la estructura de dos operandos se encuentra en casi todas las
dems mquinas.
Segn los estndares actuales, las primeras computadoras eran poco tolerantes. Los programadores
tenan que traducir las instrucciones de manera directa a la forma de lenguaje de mquina que
comprendan las computadoras. Por ejemplo, un programador que escribiera la instruccin
"SUMAR 0814" para una de las primeras mquinas IBM hubiera escrito:
000100000000000000000000000010111000
Adems de recordar las docenas de cdigos numricos para los comandos del conjunto de
instrucciones de la mquina, el programador tena que conocer las posiciones donde se almacenan
los datos y las instrucciones. La codificacin inicial muchas veces requera meses, por lo que era
costosa y era frecuente que originara errores. Revisar las instrucciones para localizar errores era casi
tan tedioso como escribirlas por primera vez. Adems, si era necesario modificar un programa
posteriormente, la tarea poda llevarse meses.

Fundamentos Hardware: Software de Utilidad

20

LENGUAJES ENSAMBLADORES

A principios de la dcada de 1950, y con el fin de facilitar la labor de los programadores, se


desarrollaron cdigos nemotcnicos para las operaciones y direcciones simblicas. La palabra
nemotcnico se refiere a una ayuda para la memorizacin. Uno de los primeros pasos para mejorar
el proceso de preparacin de programas fue sustituir los cdigos de operaciones numricos del
lenguaje de mquina por smbolos alfabticos, que son los cdigos nemotcnicos. Todas las
computadoras actuales tienen cdigos nemotcnicos aunque, naturalmente, los smbolos que se usan
varan en las diferentes marcas y modelos. La computadora sigue utilizando el lenguaje de mquina
para procesar los datos, pero los programas ensambladores traducen antes los smbolos de cdigo
de operacin especificados a sus equivalentes en lenguaje de mquina.
Este procedimiento prepar avances posteriores. Si la computadora era capaz de traducir smbolos
convenientes en operaciones bsicas, por qu no hacer tambin que realizara otras funciones
rutinarias de codificacin, como la asignacin de direcciones de almacenamiento a los datos? La
tcnica de direccionamiento simblico permite expresar una direccin no en trminos de su
localizacin numrica absoluta, sino en trminos de smbolos convenientes para el programador.
Durante las primeras etapas del direccionamiento simblico, el programador asigna un nombre
simblico y una direccin real a un dato. Por ejemplo, el programador podra asignar el valor total
de mercanca adquirida durante un mes por un cliente de una tienda de departamentos a la direccin
0063, y darle el nombre simblico TOTAL. Se podra asignar el valor de la mercanca devuelta sin
usar durante el mes a la direccin 2047 y drsele el nombre simblico CRDITO. As, durante el
resto del programa, el programador se referir a los nombres simblicos, ms que a las direcciones,
cuando fuera preciso procesar estos datos. Por ejemplo, se podra escribir la instruccin "S
CRDITO TOTAL" para restar el valor de las mercancas devueltas del importa total de compras
para obtener el importe de la factura mensual del cliente. A continuacin, el programa ensamblador
traducira la instruccin simblica a esta cadena de bits:

Ms adelante se hizo otra mejora. Se dej a la computadora la tarea de asignar y recordar las
direcciones de las instrucciones. Lo nico que tena que hacer el programador era indicar a la
computadora la direccin de la primera instruccin, y el programa ensamblador se encargaba de
almacenar, de manera automtica, todas las dems en forma secuencial a partir de ese punto. As, si
se agregaba ms tarde otra instruccin al programa, no era necesario modificar las direcciones de
todas las instrucciones que seguan al punto de insercin (como tendra que hacerse en el caso de
programas escritos en lenguaje de mquina). En vez de ello, el procesador ajustaba
automticamente las localidades de memoria la prxima vez que se ejecutaba el programa.
En la actualidad, los programadores no asignan nmeros de direccin reales a los datos simblicos,
simplemente especifican dnde quieren que se coloque la primera localidad del programa, y el
programa ensamblador se encarga de lo dems: asigna localidades tanto para las instrucciones como
para los datos.
Estos programas de ensamble, o ensamblador, tambin permite a la computadora convertir las
instrucciones en lenguaje ensamblador del programador en su propio cdigo de mquina. Un
programa de instrucciones escrito en lenguaje ensamblador por un programador se llama programa
fuente. Despus de que el ensamblador convierte el programa fuente en cdigo de mquina a ste se
le denomina programa objeto. Para los programadores es ms fcil escribir instrucciones en un
lenguaje ensamblador que en cdigos de lenguajes de mquina, pero es posible que se requieran dos
corridas de computadora antes de que se puedan utilizar las instrucciones del programa fuente para
producir las salidas deseadas.

Fundamentos Hardware: Software de Utilidad

21

Los lenguajes ensambladores tienen ventajas sobre los lenguajes de mquina. Ahorran tiempo y
requieren menos atencin a detalles. Se incurren en menos errores y los que se cometen son ms
fciles de localizar. Adems, los programas en lenguaje ensamblador son ms fciles de modificar
que los programas en lenguaje de mquina. Pero existen limitaciones. La codificacin en lenguaje
ensamblador es todava un proceso lento. Una desventaja importante de estos lenguajes es que
tienen una orientacin a la mquina. Es decir, estn diseados para la marca y modelo especfico de
procesador que se utiliza, y es probable que, para una mquina diferente, se tengan que volver a
codificar los programas.
LENGUAJES DE ALTO NIVEL

Los primeros programas ensambladores producan slo una instruccin en lenguaje de mquina por
cada instruccin del programa fuente. Para agilizar la codificacin, se desarrollaron programas
ensambladores que podan producir una cantidad variable de instrucciones en lenguaje de mquina
por cada instruccin del programa fuente. Dicho de otra manera, una sola macroinstruccin poda
producir varias lneas de cdigo en lenguaje de mquina. Por ejemplo, el programador podra
escribir "LEER ARCHIVO", y el programa traductor producira una serie detallada de instrucciones
al lenguaje de mquina previamente preparadas, con lo que se copiara un registro del archivo que
estuviera leyendo el dispositivo de entrada a la memoria principal. As, el programador no se tena
que ocupar de escribir una instruccin por cada operacin de mquina realizada.
El desarrollo de las tcnicas nemotcnicas y las macroinstrucciones condujo, a su vez, al desarrollo
de lenguajes de alto nivel que a menudo estn orientados hacia una clase determinada de problemas
de proceso. Por ejemplo, se han diseado varios lenguajes para procesar problemas cientficomatemtico, asimismo han aparecido otros lenguajes que hacen hincapi en las aplicaciones de
proceso de archivos.
A diferencia de los programas de ensamble, los programas en lenguaje de alto nivel se pueden
utilizar con diferentes marcas de computadores sin tener que hacer modificaciones considerables.
Esto permite reducir sustancialmente el costo de la reprogramacin cuando se adquiere equipo
nuevo. Otras ventajas de los lenguajes de alto nivel son:

Son ms fciles de aprender que los lenguajes ensambladores.


Se pueden escribir ms rpidamente.
Permiten tener mejor documentacin.
Son ms fciles de mantener.
Un programador que sepa escribir programas en uno de estos lenguajes no est limitado a
utilizar un solo tipo de mquina.

Clasificacin atendiendo a la forma de generar el programa.


LENGUAJES COMPILADOS

Naturalmente, un programa que se escribe en un lenguaje de alto nivel tambin tiene que traducirse
a un cdigo que pueda utilizar la mquina. Los programas traductores que pueden realizar esta
operacin se llaman compiladores. stos, como los programas ensambladores avanzados, pueden
generar muchas lneas de cdigo de mquina por cada proposicin del programa fuente. Se requiere
una corrida de compilacin antes de procesar los datos de un problema.
Los compiladores son aquellos cuya funcin es traducir un programa escrito en un determinado
lenguaje a un idioma que la computadora entienda (lenguaje mquina con cdigo binario).
Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft),
el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber
compilado el programa, ya no aparecen errores en el cdigo.

Fundamentos Hardware: Software de Utilidad

22

LENGUAJES INTERPRETADOS

Se puede tambin utilizar una alternativa diferente de los compiladores para traducir lenguajes de
alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el cdigo objeto que
se produce durante la corrida de compilacin para utilizarlo en una corrida de produccin futura, el
programador slo carga el programa fuente en la computadora junto con los datos que se van a
procesar. A continuacin, un programa intrprete, almacenado en el sistema operativo del disco, o
incluido de manera permanente dentro de la mquina, convierte cada proposicin del programa
fuente en lenguaje de mquina conforme vaya siendo necesario durante el proceso de los datos. No
se graba el cdigo objeto para utilizarlo posteriormente.
La siguiente vez que se utilice una instruccin, se le debe interpretar otra vez y traducir a lenguaje
mquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo, cada
instruccin del ciclo tendr que volver a ser interpretado cada vez que se ejecute el ciclo, lo cual
hace que el programa sea ms lento en tiempo de ejecucin (porque se va revisando el cdigo en
tiempo de ejecucin) pero ms rpido en tiempo de diseo (porque no se tiene que estar compilando
a cada momento el cdigo completo). El intrprete elimina la necesidad de realizar una corrida de
compilacin despus de cada modificacin del programa cuando se quiere agregar funciones o
corregir errores; pero es obvio que un programa objeto compilado con antelacin deber ejecutarse
con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de
produccin.

Clasificacin atendiendo a la forma de programar.


LENGUAJES DE PROGRAMACIN DECLARATIVOS

Se les conoce como lenguajes declarativos en ciencias computacionales a aquellos lenguajes de


programacin en los cuales se le indica a la computadora qu es lo que se desea obtener o qu es lo
que se esta buscando, por ejemplo: Obtener los nombres de todos los empleados que tengan ms de
32 aos. Eso se puede lograr con un lenguaje declarativo como SQL.
La programacin declarativa es una forma de programacin que implica la descripcin de un
problema dado en lugar de proveer una solucin para dicho problema, dejando la interpretacin de
los pasos especficos para llegar a dicha solucin a un intrprete no especificado. La programacin
declarativa adopta, por lo tanto, un enfoque diferente al de la programacin imperativa tradicional.
En otras palabras, la programacin declarativa provee el "qu", pero deja el "cmo" liberado a la
implementacin particular del intrprete. Por lo tanto se puede ver que la programacin declarativa
tiene dos fases bien diferenciadas, la declaracin y la interpretacin.
Es importante sealar que a pesar de hacer referencia a intrprete, no hay que limitarse a "lenguajes
interpretados" en el sentido habitual del trmino, sino que tambin se puede estar trabajando con
"lenguajes compilados".
PROGRAMACIN LGICA

La idea fundamental de la programacin lgica consiste en emplear la lgica como lenguaje de


programacin. La lgica no es imperativa porque no sirve para indicar cmo resolver un problema
(rdenes). La lgica es declarativa porque sirve para especificar qu problema resolver
(condiciones).
En la programacin lgica, se especifican las condiciones que satisfacen las soluciones, se deducen
las soluciones a partir de las condiciones y el nfasis de todo est en qu problema resolver. El
problema se describe especificando qu caracteriza a sus posibles soluciones.
La programacin lgica, junto con la funcional, forma parte de lo que se conoce como
programacin declarativa. En los lenguajes tradicionales, la programacin consiste en indicar cmo

Fundamentos Hardware: Software de Utilidad

23

resolver un problema mediante sentencias; en la programacin lgica, se trabaja de forma


descriptiva, estableciendo relaciones entre entidades, indicando no cmo, sino qu hacer. Se
establece entonces que la idea esencial de la programacin lgica es: algoritmos = lgica +
control. Es decir, un algoritmo se construye especificando conocimiento en un lenguaje formal
(lgica de primer orden), y el problema se resuelve mediante un mecanismo de inferencia (control)
que acta sobre aqul.
Al hacer un recorrido por la programacin lgica, aparece como uno de sus lenguajes ms
representativos, Prolog, que es un clsico de la inteligencia artificial y que se aplica de mltiples
formas en el desarrollo de software comercial.
PROGRAMACIN FUNCIONAL

La programacin funcional es un paradigma de programacin declarativa basado en la utilizacin


de funciones matemticas. El objetivo de la programacin funcional es conseguir lenguajes
expresivos y matemticamente elegantes, en los que no sea necesario bajar al nivel de la mquina
para describir el proceso llevado a cabo por el programa.
Los programas escritos en un lenguaje funcional estn constituidos nicamente por definiciones de
funciones, entendiendo stas no como subprogramas clsicos de un lenguaje imperativo (pues la
programacin funcional es declarativa), sino como funciones puramente matemticas, en las que se
verifican ciertas propiedades como la transparencia referencial (el significado de una expresin
depende nicamente del significado de sus subexpresiones), y por tanto, la carencia total de efectos
laterales.
Otras caractersticas propias de estos lenguajes son la no existencia de asignaciones de variables y
la falta de construcciones estructuradas como la secuencia o la iteracin (lo que obliga en la prctica
a que todas las repeticiones de instrucciones se lleven a cabo por medio de funciones recursivas).
Existen dos grandes categoras de lenguajes funcionales: los funcionales puros y los hbridos. La
diferencia entre ambos estriba en que los lenguajes funcionales hbridos son menos dogmticos que
los puros, al permitir conceptos tomados de los lenguajes imperativos, como las secuencias de
instrucciones o la asignacin de variables. En contraste, los lenguajes funcionales puros tienen una
mayor potencia expresiva, conservando a la vez su transparencia referencial, algo que no se cumple
siempre con un lenguaje hbrido.
PROGRAMACIN ORIENTADA A BASES DE DATOS

Las bases de datos son programas que administran informacin y hacen ms ordenada la
informacin, aparte de hacer la fcil de buscar y por supuesto de encontrar.
Las caractersticas de las bases de datos pueden ser ventajosas o desventajosas: pueden ayudar a
almacenar, organizar, recuperar, comunicar y manejar informacin en formas que seran imposibles
sin las computadoras, pero tambin afecta de alguna manera ya que existen enormes cantidades de
informacin en bases de datos de las que no se tiene control del acceso.
Las bases de datos tienen muchos usos: facilitan el almacenamiento de grandes cantidades de
informacin; permiten la recuperacin rpida y flexible de informacin, con ellas se puede
organizar y reorganizar la informacin, as como imprimirla o distribuirla en formas diversas.
Es claro que los lenguajes orientados a bases de datos son declarativos y no imperativos, pues el
problema es "qu" se quiere hacer o "qu" se necesita buscar y encontrar en la base de datos, y no
se enfatiza el "cmo".
Una base de datos tambin se puede definir como un banco de datos o conjunto de datos que
pertenecen al mismo contexto, almacenados sistemticamente para su posterior uso. En este sentido,
una biblioteca puede considerarse una base de datos compuesta en su mayora por documentos y
textos impresos en papel e indexados para su consulta.

Fundamentos Hardware: Software de Utilidad

24

En la actualidad, y gracias al desarrollo tecnolgico de campos como la informtica y la electrnica,


la mayora de las bases de datos tienen formato electrnico, que ofrece un amplio rango de
soluciones al problema de almacenar datos.
Los sistemas gestores de bases de datos (SGBD) permiten almacenar y posteriormente acceder a los
datos de forma rpida y estructurada.
LENGUAJES DE PROGRAMACIN IMPERATIVOS

En ciencias de la computacin se llama lenguajes imperativos a aquellos en los cuales se le ordena a


la computadora cmo realizar una tarea siguiendo una serie de pasos o instrucciones, por ejemplo:
Paso 1, solicitar nmero.
Paso 2, multiplicar nmero por dos.
Paso 3, imprimir resultado de la operacin.
Paso 4, etc,
El proceso anterior se puede realizar con un lenguaje imperativo como por ejemplo BASIC, C, C+
+, Java, Clipper, Dbase, C#, PHP, Perl, etc.
Dentro de la programacin imperativa, se tiene un conjunto de instrucciones que le indican al
computador cmo realizar una tarea.
Los lenguajes imperativos se basan en comandos u rdenes que se le dan a la computadora para que
haga algo, con el fin de organizar o cambiar valores en ciertas partes de la memoria.
La ejecucin de estos comandos se realiza, en la mayor parte de ellos, secuencialmente, es decir,
hasta que un comando no ha sido ejecutado no se lee el siguiente.
Segn el dominio, o mejor dicho con el propsito que se utiliza el programa, se puede hablar de
lenguajes de dominio especfico y de dominio general.
LENGUAJES DE PROGRAMACIN ORIENTADOS A OBJETOS

En la Programacin Orientada a Objetos (POO u OOP segn siglas en ingls) se definen los
programas en trminos de "clases de objetos", objetos que son entidades que combinan estado (es
decir, datos) comportamiento (esto es, procedimientos o mtodos) e identidad (propiedad del objeto
que lo diferencia del resto). La programacin orientada a objetos expresa un programa como un
conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los
programas mdulos ms fciles de escribir, mantener y reutilizar.
De esta forma, un objeto contiene toda la informacin, (los denominados atributos) que permite
definirlo e identificarlo frente a otros objetos pertenecientes a otras clases (e incluso entre objetos
de la misma clase, al poder tener valores bien diferenciados en sus atributos). A su vez, dispone de
mecanismos de interaccin (los llamados mtodos) que favorecen la comunicacin entre objetos (de
una misma clase o de distintas), y en consecuencia, el cambio de estado en los propios objetos. Esta
caracterstica lleva a tratarlos como unidades indivisibles, en las que no se separan (ni deben
separarse) informacin (datos) y procesamiento (mtodos).
Dada esta propiedad de conjunto de una clase de objetos, que al contar con una serie de atributos
definitorios, requiere de unos mtodos para poder tratarlos (lo que hace que ambos conceptos estn
ntimamente entrelazados), el programador debe pensar indistintamente en ambos trminos, ya que
no debe nunca separar o dar mayor importancia a los atributos a favor de los mtodos, ni viceversa.
Hacerlo puede llevar al programador a seguir el hbito errneo de crear clases contenedoras de
informacin por un lado y clases con mtodos que manejen esa informacin por otro (llegando a
una programacin estructurada camuflada en un lenguaje de programacin orientada a objetos).

Fundamentos Hardware: Software de Utilidad

25

Esto difiere de los lenguajes imperativos tradicionales, en los que los datos y los procedimientos
estn separados y sin relacin, ya que lo nico que se busca es el procesamiento de unos datos y los
procedimientos estn separados y sin relacin, ya que lo nico que se busca es el procesamiento de
unos datos de entrada para obtener otros de salida. La programacin estructurada anima al
programador a pensar sobre todo en trminos de procedimientos o funciones, y en segundo lugar en
las estructuras de datos que esos procedimientos manejan. Los programadores de lenguajes
imperativos escriben funciones y despus les pasan los datos. Los programadores que emplean
lenguajes orientados a objetos definen objetos con datos y mtodos y despus envan mensajes a los
objetos diciendo que realicen esos mtodos por s mismos.
Un objeto se puede definir como un grupo de procedimientos que comparten un estado. Se define al
conjunto de datos como "estado", y "mtodos" como el conjunto de procedimientos que pueden
alterar ese estado. Un programa orientado a objetos es un mtodo de implementacin en el que los
programas estn organizados como colecciones de objetos, donde cada uno es una instancia de
alguna clase, y donde todas las clases son miembros de una jerarqua de clases conectadas por
relaciones de herencia. Este tipo de lenguajes son muy recientes en comparacin a los primeros
lenguajes de programacin que aparecieron.

CLIENTES PARA SERVICIOS DE INTERNET.


Clasificaremos como clientes para servicios de Internet a todo el software integrado o instalado en
el sistema cuya funcionalidad principal es la conexin en la parte del cliente en el modelo de red
cliente-servidor. En general pueden existir mltiples clientes para un mismo servicio. Los ms
comunes son los siguientes:

Navegadores web (tambin llamados browsers). En general son para el acceso al servicio de
protocolo de acceso a hipertexto mediante el protocolo http.

Clientes para acceso al servicio de ficheros, permiten montar y utilizar distintos tipos de
acceso a ficheros mediante distintos tipos de protocolos , ftp, sftp, ssh, etc...

Clientes de acceso correo electrnico y sistemas de planificacin de agendas y citas


empresariales.

Clientes de acceso a redes sociales y mensajera instantnea.

SOFTWARE A MEDIDA.
Esta constituido por aquellas aplicaciones especificas que se refieren a actividades mas
especializadas del cliente (empresa). Estas aplicaciones van destinadas a un cliente especfico, por
lo que el proceso de creacin del software se realizar mediante el anlisis y diseo especfico de
las necesidades de la empresa para la que se est desarrollando.

Instalacin de utilidades.
Dentro del software que debemos tener en el sistema, existe un conjunto de utilidades comunes con
ciertas funcionalidades necesarias en cualquier sistema.

COMPRESORES.
La compresin de datos consiste en la reduccin del volumen de informacin tratable (procesar,
transmitir o grabar). En principio, con la compresin se pretende transportar la misma informacin,

Fundamentos Hardware: Software de Utilidad

26

pero empleando una menor cantidad de espacio.


El espacio que ocupa una informacin codificada (datos, seal digital, etc.) sin compresin es el
cociente entre la frecuencia de muestreo y la resolucin. Por tanto, cuantos ms bits se empleen
mayor ser el tamao del archivo. No obstante, la resolucin viene impuesta por el sistema digital
con que se trabaja y no se puede alterar el nmero de bits a voluntad; por ello, se utiliza la
compresin, para transmitir la misma cantidad de informacin que ocupara una gran resolucin en
un nmero inferior de bits.
La compresin es un caso particular de la codificacin, cuya caracterstica principal es que el
cdigo resultante tiene menor tamao que el original.
La compresin de datos se basa fundamentalmente en buscar repeticiones en series de datos para
despus almacenar solo el dato junto al nmero de veces que se repite. As, por ejemplo, si en un
fichero aparece una secuencia como "AAAAAA", ocupando 6 bytes se podra almacenar
simplemente "6A" que ocupa solo 2 bytes, en algoritmo RLE.
En realidad, el proceso es mucho ms complejo, ya que raramente se consigue encontrar patrones
de repeticin tan exactos (salvo en algunas imgenes). Se utilizan algoritmos de compresin:

Por un lado, algunos buscan series largas que luego codifican en formas ms breves.
Por otro lado, algunos algoritmos, como el algoritmo de Huffman, examinan los caracteres
ms repetidos para luego codificar de forma ms corta los que ms se repiten.
Otros, como el LZW, construyen un diccionario con los patrones encontrados, a los cuales
se hace referencia de manera posterior.
Tambin esta una forma de comprimir que es codificando los bytes pares es muy sencillo y
fcil de entender.

A la hora de hablar de compresin hay que tener presentes dos conceptos:


1. Redundancia: Datos que son repetitivos o previsibles
2. Entropa: La informacin nueva o esencial que se define como la diferencia entre la
cantidad total de datos de un mensaje y su redundancia.
La informacin que transmiten los datos puede ser de tres tipos:
1. Redundante: informacin repetitiva o predecible.
2. Irrelevante: informacin que no podemos apreciar y cuya eliminacin por tanto no afecta al
contenido del mensaje. Por ejemplo, si las frecuencias que es capaz de captar el odo
humano estn entre 16/20 Hz y 16.000/20.000 Hz, seran irrelevantes aquellas frecuencias
que estuvieran por debajo o por encima de estos valores.
3. Bsica: la relevante. La que no es ni redundante ni irrelevante. La que debe ser transmitida
para que se pueda reconstruir la seal.
Teniendo en cuenta estos tres tipos de informacin, se establecen tres tipologas de compresin de la
informacin:
1. Sin prdidas reales: es decir, transmitiendo toda la entropa del mensaje (toda la
informacin bsica e irrelevante, pero eliminando la redundante).
2. Subjetivamente sin prdidas: es decir, adems de eliminar la informacin redundante se
elimina tambin la irrelevante.
3. Subjetivamente con prdidas: se elimina cierta cantidad de informacin bsica, por lo que
el mensaje se reconstruir con errores perceptibles pero tolerables (por ejemplo: la
videoconferencia).
Diferencias entre compresin con y sin prdida

El objetivo de la codificacin es siempre reducir el tamao de la informacin, intentando que esta


reduccin de tamao no afecte al contenido. No obstante, la reduccin de datos puede afectar o no a

Fundamentos Hardware: Software de Utilidad

27

la calidad de la informacin:

Compresin sin prdida: los datos antes y despus de comprimirlos son exactos en la
compresin sin prdida. En el caso de la compresin sin prdida una mayor compresin solo
implica ms tiempo de proceso. El bitrate siempre es variable en la compresin sin prdida.
Se utiliza principalmente en la compresin de texto.
Un algoritmo de compresin con prdida puede eliminar datos para reducir an ms el
tamao, con lo que se suele reducir la calidad. En la compresin con prdida el bit rate
puede ser constante o variable. Hay que tener en cuentaa que una vez realizada la
compresin, no se puede obtener la seal original, aunque s una aproximacin cuya
semejanza con la original depender del tipo de compresin. Se utiliza principalmente en la
compresin de imgenes, videos y sonidos.

Formatos ms comunes de compresin sin prdidas: ZIP, RAR, CAB, LHA, DGCA, GCA, Bzip2,
gzip, lzip, KGB Archiver, 7z, AFA.
Los programas ms comunes que soportan distintos formatos para comprimir y descomprimir son
los siguientes, WinZip, WinRar, 7Zip, FileRoller, etc.

MONITORIZACIN Y OPTIMIZACIN DEL SISTEMA.


Los objetivos de una infraestructura de monitorizacin de sistemas informticos son principalmente
la prevencin de incidencias y conocer el aprovechamiento de los recursos TIC disponibles. Dado
que estos objetivos son importantes en cualquier entidad independientemente de su tamao, es
evidente que toda organizacin debera contar con su propio sistema de monitorizacin.
Aunque parezca lo contrario, implementar un buen sistema de monitorizacin no es una tarea tan
difcil como exigente en su ejecucin. El primer paso consiste en realizar un anlisis detallado del
sistema informtico a monitorizar para, entre otras cosas, detectar los sistemas crticos (tanto
mquinas como servicios) para el buen funcionamiento de la entidad y formular polticas de
actuacin frente a incidencias en dichos sistemas. Por ejemplo, puede ser interesante asegurarse de
que una aplicacin web corporativa est siempre en marcha o estar sobre aviso de emergencias en el
sistema de correo electrnico de la organizacin. Aquellos a los que esto les suene a plan de
emergencias frente a desastres no andan muy desencaminados.
A continuacin se debe redactar el plan de instalacin e integracin del nuevo sistema de
monitorizacin en nuestro sistema informtico, para lo cual es imprescindible respetar estas tres
reglas:
1. Mantener las medidas de seguridad existentes.
2. Minimizar el impacto en el propio sistema a estudiar.
3. Minimizar el nmero de sistemas intermedios entre el sistema de monitorizacin y los
sistemas crticos.
Por cierto, dicho plan estar incompleto si no se contempla qu ocurre o cmo actuar si el sistema
de monitorizacin deja de estar disponible, es decir, hay que contestar a la pregunta quin
monitoriza al monitorizador?. Aunque parezca una verdad de Perogrullo, no todo el mundo tiene en
cuenta este importante detalle.
El ltimo paso es elegir un buen paquete de software especializado y proceder a su instalacin y
configuracin. Afortunadamente, contamos con fabulosas opciones de licencia libre como Nagios ,
Zabbix o Pandora FMS que ofrecen jugosas ventajas frente a sus alternativas comerciales,
destacando especialmente su inmensa flexibilidad para poder monitorizar todo lo que queramos en
el modo en que as lo necesitemos.

Fundamentos Hardware: Software de Utilidad

28

GESTIN DE FICHEROS Y RECUPERACIN DE DATOS.


Un administrador de archivos, gestor de archivos o explorador de archivos (del ingls file
manager) es una aplicacin informtica que provee acceso a archivos y facilita el realizar
operaciones con ellos, como copiar, mover o eliminar archivos donde el usuario lo quiera ubicar.
Basados en entorno de ventanas, cada sistema grfico viene acompaado por el suyo. Para
Sistemas Microsoft Windows tenemos el Windows Explorer. Para El escritorio Gnome tenmos el
Nautilus, para KDE tenmos el Konkeror.
Basados en entorno de comandos, cada sistema, dispone de los comandos relacionados para la
gestin de los archivos, pero existen herramientas de trabajo en modo texto que facilitan este
trabajo. Para MS-DOS Norton Commander, Dos Navigator, Volkov Commander, Xtree,
PathMinder, FAR Manager. Para Linux Dired, Midnight Commander, clon de Norton Commander
para Unix, Vifm.

GESTIN DE DISCOS. FRAGMENTACIN Y PARTICIONADO. CONCEPTOS.


Particionado

Una particin de disco, es el nombre genrico que recibe cada divisin presente en una sola
unidad fsica de almacenamiento de datos. Toda particin tiene su propio sistema de archivos
(formato); generalmente, casi cualquier sistema operativo interpreta, utiliza y manipula cada
particin como un disco fsico independiente, a pesar de que dichas particiones estn en un solo
disco fsico.
A toda particin se le da formato mediante un sistema de archivos como FAT, NTFS, ext4 ,ext3,
ext2, FAT32, ReiserFS, Reiser4 u otro. En Windows, las particiones reconocidas son identificadas
con una letra seguida por un signo de doble punto (p.ej. C:\) hasta cuatro particiones primarias;
prcticamente todo tipo de discos magnticos y memorias flash (como pendrives) pueden
particionarse. Sin embargo, para tener la posibilidad de ms particiones en un solo disco, se utilizan
las particiones extendidas, las cuales pueden contener un nmero ilimitado de particiones lgicas en
su interior. Para este ltimo tipo de particiones, no es recomendado su uso para instalar ciertos
sistemas operativos, sino que son ms tiles para guardar documentos o ejecutables no
indispensables para el sistema. Los discos pticos (DVD, CD) no soportan particiones .Es necesario
tener en cuenta que solo las particiones primarias y lgicas pueden contener un sistema de archivos
propio.

Representacin grfica de un disco particionado. Cada recuadro blanco representa algn sistema de
archivos vaco. Los espacios en gris representan los espacios sin particionar del disco. Las
particiones rodeadas por lneas moradas o violetas representan las particiones primarias. Las
particiones rodeadas por bordes rojos representan la particin extendida (que es un tipo de particin
primaria); y en su interior, se encuentran las particiones lgicas, rodeadas por los bordes de color
verde.
Es comn que los sistemas basados o similares a UNIX generalmente se usan hasta con 3
particiones: la principal, montada en el directorio raz (/); a veces hay tambin una segunda que se
usa para montar el directorio /home, el cual contiene las configuraciones de los usuarios, y
finalmente, una tercera llamada swap, que se usa para la memoria virtual temporal. Sin embargo, 2
particiones (/, y swap); es el mnimo suficiente en estos sistemas operativos. Cabe decir adems que
las particiones de intercambio (swap) pueden instalarse sin problemas dentro de una particin

Fundamentos Hardware: Software de Utilidad

29

lgica. Las particiones de intercambio, al igual que a la memoria RAM, no se les asigna un
directorio; este tipo de particiones se usa para guardar ciertas rplicas de la memoria RAM, para
que de esta forma la RAM tenga ms espacio para las tareas en primer plano, guardando las tareas
en segundo plano dentro de la particin de intercambio. Algunos sistemas tipo UNIX estn
diseados para funcionar con una sola particin, sin embargo, estos diseos no son muy comunes.
Tipos de particiones

El formato o sistema de archivos de las particiones (p. ej. NTFS) no debe ser confundido con el tipo
de particin (p. ej. particin primaria), ya que en realidad no tienen directamente mucho que ver.
Independientemente del sistema de archivos de una particin (FAT, ext3, NTFS, etc.), existen 3
tipos diferentes de particiones:

Particin primaria: Son las divisiones crudas o primarias del disco, solo puede haber 4 de
stas o 3 primarias y una extendida. Depende de una tabla de particiones. Un disco fsico
completamente formateado consiste, en realidad, de una particin primaria que ocupa todo el
espacio del disco y posee un sistema de archivos. A este tipo de particiones, prcticamente
cualquier sistema operativo puede detectarlas y asignarles una unidad, siempre y cuando el
sistema operativo reconozca su formato (sistema de archivos).
Particin extendida: Tambin conocida como particin secundaria es otro tipo de particin
que acta como una particin primaria; sirve para contener infinidad de unidades lgicas en
su interior. Fue ideada para romper la limitacin de 4 particiones primarias en un solo disco
fsico. Solo puede existir una particin de este tipo por disco, y solo sirve para contener
particiones lgicas. Por lo tanto, es el nico tipo de particin que no soporta un sistema de
archivos directamente.
Particin lgica: Ocupa una porcin de la particin extendida o la totalidad de la misma, la
cual se ha formateado con un tipo especfico de sistema de archivos (FAT32, NTFS, ext2,...)
y se le ha asignado una unidad, as el sistema operativo reconoce las particiones lgicas o su
sistema de archivos. Puede haber un mximo de 23 particiones lgicas en una particin
extendida. Linux impone un maximo de 15, incluyendo las 4 primarias, en discos SCSI y en
discos IDE 8963.

Particiones primarias

En los equipos PC, originales de IBM, estas particiones tradicionalmente usan una estructura
llamada Tabla de particiones, ubicada al final del registro de arranque maestro (MBR, Master
Boot Record). Esta tabla, que no puede contener ms de 4 registros de particiones (tambin
llamados partition descriptors), especifica para cada una su principio, final y tamao en los
diferentes modos de direccionamiento, as tambin como un solo nmero, llamado partition type, y
un marcador que indica si la particin est activa o no (slo puede haber una particin activa a la
vez). El marcador se usa durante el arranque; despus de que el BIOS cargue el registro de
arranque maestro en la memoria y lo ejecute, el MBR de DOS comprueba la tabla de particin a su
final y localiza la particin activa. Entonces carga el sector de arranque de esta particin en
memoria y la ejecuta. A diferencia del registro de arranque maestro, generalmente independiente
del sistema operativo, el sector de arranque est instalado junto con el sistema operativo y sabe
cmo cargar el sistema ubicado en ese disco en particular.
Notar que mientras la presencia de un marcador activo se estandariza, no se utiliza en todos los
gestores de arranque. Por ejemplo, los gestores LILO, GRUB (muy comunes en el sistema Linux) y
XOSL no buscan en la tabla de particines del MBR la particin activa; simplemente cargan una
segunda etapa (que puede ser contenida en el resto del cilindro 0 en el sistema de archivos).
Despus de cargar la segunda etapa se puede cargar el sector de arranque de cualquiera de las
particiones del disco (permitiendo al usuario seleccionar la particin), o si el gestor conoce cmo
localizar el kernel (ncleo) del sistema operativo en una de las particiones (puede permitir al

Fundamentos Hardware: Software de Utilidad

30

usuario especificar opciones de kernel adicionales para propsitos de recuperacin)estrategicos.


Particiones extendidas y lgicas

Cualquier versin del DOS puede leer slo una particin FAT primaria en el disco duro. Esto unido
al deterioro de la FAT con el uso y al aumento de tamao de los discos movi a Microsoft a crear un
esquema mejorado relativamente simple: una de las entradas de la tabla de particin principal pas
a llamarse particin extendida y recibi un nmero de tipo de particin especial (0x05). El campo
inicio de particin tiene la ubicacin del primer descriptor de la particin extendida, que a su vez
tiene un campo similar con la ubicacin de la siguiente; as se crea una lista enlazada de
descriptores de particin. Los dems campos de una particin extendida son indefinidos, no tienen
espacio asignado y no pueden usarse para almacenar datos. Las particiones iniciales de los
elementos de la lista enlazada son las llamadas unidades lgicas; son espacios asignados y pueden
almacenar datos. Los sistemas operativos antiguos ignoraban las particiones extendidas con nmero
de tipo 0x05, y la compatibilidad se mantena. Este esquema reemplaza al antiguo ya que todas las
particiones de un disco duro se pueden poner dentro de una sola particin extendida. Por alguna
razn, Microsoft no actualiz su sistema operativo DOS para arrancar desde una particin
extendida, debido a que la necesidad para particiones primarias se preservaron.
Razones para el uso de particiones

Algunos sistemas de archivos (p.e. versiones antiguas de sistemas FAT de Microsoft) tienen
tamaos mximos ms pequeos que los que el tamao que proporciona un disco, siendo
necesaria una particin de tamao pequeo, para que sea posible el adecuado
funcionamiento de este antiguo sistema de archivos.
Se puede guardar una copia de seguridad de los datos del usuario en otra particin del
mismo disco, para evitar la prdida de informacin importante. Esto es similar a un RAID,
excepto en que est en el mismo disco.
En algunos sistemas operativos aconsejan ms de una particin para funcionar, como por
ejemplo, la particin de intercambio (swap) en los sistemas operativos basados en Linux.
A menudo, dos sistemas operativos no pueden coexistir en la misma particin, o usar
diferentes formatos de disco nativo. La unidad se particiona para diferentes sistemas
operativos.
Uno de los principales usos que se le suele dar a las particiones (principalmente a la
extendida) es la de almacenar toda la informacin del usuario (entindase msica, fotos,
vdeos, documentos), para que al momento de reinstalar algn sistema operativo se formatee
nicamente la unidad que lo contiene sin perder el resto de la informacin del usuario.

A lo largo de los aos han aparecido numerosos sistemas de particionamiento, para casi todas las
arquitecturas de ordenadores existentes. Muchos son relativamente transparentes y permiten la
manipulacin conveniente de las particiones de disco; algunos, sin embargo, son obsoletos.
Las tablas de particiones (MBR) slo admiten hasta 2,2 TB por particin. Dado que slo soportan 4
particiones primarias, el tamao mximo admisible para un disco duro sera de 8,8 TB (el resto de
capacidad no se podra utilizar). Como la arquitectura IBM PC es muy comn, las tablas de
particin probablemente subsistirn cierto tiempo. Sin embargo, existe un proyecto de Intel llamado
Extensible Firmware Initiative (EFI) con el sistema GPT, que soporta tericamente hasta 9,4 9,4
ZB.

Las ventajas del uso de particiones extendidas


Las particiones extendidas se inventaron para superar el lmite de 4 particiones primarias mximas
por cada disco duro y poder crear un nmero ilimitado de unidades lgicas, cada una con un sistema
de archivos diferente de la otra. Todos los sistemas modernos (Linux, cualquier Windows basado en

Fundamentos Hardware: Software de Utilidad

31

NT e incluso OS/2) son capaces de arrancar desde una unidad lgica. Sin embargo, el MBR por
defecto utilizado por Windows y DOS slo es capaz de continuar el proceso de arranque con una
particin primaria. Cuando se utiliza este MBR, es necesario que exista por lo menos una particin
primaria que contenga un cargador de arranque (comnmente el NTLDR de Windows). Otros
cargadores de arranque que reemplazan el MBR, como por ejemplo GRUB, no sufren de esta
limitacin.

Gparted
Artculo principal: GParted

GParted.
GParted es el editor de particiones de GNOME. Esta aplicacin es usada para crear, destruir,
redimensionar, inspeccionar y copiar particiones, como tambin sistemas de archivos. Esto es til
para crear espacio para nuevos sistemas operativos, para reorganizar el uso del disco y para crear
imgenes de un disco en una particin. KDE Partition Manager es la contraparte de GParted pero
para entornos de escritorios KDE.
Gparted se encuentra disponible en un LiveCD, basado en Slackware y construido sobre la ltima
rama estable ncleo Linux (2.6). El LiveCD es actualizado con cada lanzamiento de GParted. El
LiveCD de Ubuntu incluye esta aplicacin entre sus utilidades. Tambin se encuentra disponible en
una versin LiveUSB.

Fragmentacin
La fragmentacin es la memoria que queda
desperdiciada al usar los mtodos de gestin de
memoria. Tanto el primer ajuste, como el mejor y
el peor producen fragmentacin externa
(Conocidos como estrategias de Colocacin).
La fragmentacin es generada cuando durante el
reemplazo de procesos quedan huecos entre dos o
ms procesos de manera no contigua y cada hueco
no es capaz de soportar ningn proceso de la lista de espera. Tal vez en conjunto si sea espacio
suficiente, pero se requerira de un proceso de desfragmentacin de memoria o compactacin para
lograrlo. Esta fragmentacin se denomina fragmentacin externa.
Existe otro tipo de fragmentacin conocida como fragmentacin interna, la cual es generada cuando
se reserva ms memoria de la que el proceso va realmente a usar. Sin embargo a diferencia de la
externa, estos huecos no se pueden compactar para ser utilizados. Se debe de esperar a la
finalizacin del proceso para que se libere el bloque completo de la memoria.

Fundamentos Hardware: Software de Utilidad

32

Fragmentacin interna

La fragmentacin interna es la prdida de espacio en disco debido al hecho de que el tamao de un


determinado archivo sea inferior al tamao del cluster, ya que tericamente el archivo estara
obligado a ser referenciado como un cluster completo. Los cluster(s) son contiguos de forma que
desde el ltimo bit del archivo situado en el cluster "a" hasta el primer bit del archivo situado en el
cluster contiguo (es decir "b") queda un espacio sobrante siempre teniendo la condicin de que el
archivo del cluster "a" fuera ms pequeo que el cluster en s.
Por eso se sugiere no disponer de un gran tamao de particin en los discos nuevos donde la
capacidad es muy importante. Por ejemplo si nuestro clster es de 18KB (18.432 bytes) por ms que
un archivo ocupe menos, en nuestro disco ocupara 18KB. Esto sugiere una prdida de ese espacio
que dice utilizar pero no utiliza.
Por eso, en nuestro ejemplo, un archivo de 3KB ocupara en nuestro disco lo mismo que uno de
10KB, o sea 18 KB. Esa prdida de espacio se denomina fragmentacin interna, y no se corrige con
el desfragmentador, sino disminuyendo el tamao de la particin.

Fragmentacin externa

Este tipo de fragmentacin aparece como consecuencia de las distintas polticas de ajuste de
bloques que tiene un sistema de ficheros, o al utilizar asignaciones dinmicas de bloques en el caso
de la memoria. En el sistema de ficheros, la sucesiva creacin y eliminacin de ficheros de distintos
tamaos puede conducir al aislamiento de los bloques libres de un disco y, dependiendo de la
poltica de ajuste, su no eleccin para futuros ficheros.
En la memoria del sistema la fragmentacin se produce cuando los procesos asignados han ocupado
posiciones no contiguas de memoria dejando demasiados bloques libres de pequeo tamao, en los
que no "caben" nuevos procesos.
En sistemas de ficheros la desfragmentacin trata de resolver este problema, alineando los bloques
de datos contiguos y juntando los bloques libres, produciendo as fragmentos mayores que s sern
elegidos para futuros ficheros. En la memoria principal se soluciona compactando los procesos para
que estos ocupen posiciones contiguas y dejar los bloques libres juntos, o tambin se soluciona con
la paginacin de memoria.
Desfragmentacin

Este proceso consta de ordenar los trozos de informacin distribuida a travs de todo el disco, para
mejorar la velocidad de acceso y distribuir de mejor forma el espacio libre del dispositivo. Como
este proceso consta en la reorganizacin de partes de archivos, requiere de suficiente memoria para
realizar los movimientos de los trozos de informacin. Al mover en forma fsica la informacin, la
estructura lgica no sufre alteraciones.
Aspectos de la desfragmentacin

En Windows la presencia de archivos inamovibles del sistema, o que el desfragmentador no mover

Fundamentos Hardware: Software de Utilidad

33

para simplificar su tarea (sobre todo con el archivo de intercambio, o swap file), puede impedir un
buen porcentaje de desfragmentacin en el disco.
Ciertos sistemas de archivos son ms susceptibles a cambios por desfragmentacin que otros. Por
ejemplo, una particin del tipo FAT se fragmenta ms rpido que una de particin del tipo NTFS
(Windows) , EXT 4 (Linux) o HFS + (MacOSX).
Utilidades

Los programas de desfragmentacin, por lo general, vienen incorporados al sistema operativo


(excepto en Windows NT 4). Tambin existen aplicaciones externas, las cuales poseen opciones
ms avanzadas que las propuestas por los fabricantes del sistema operativo.
El desfragmentador ms conocido es el Defrag, que es usado en MS-DOS y en las plataformas de
Windows (en estas ltimas con el nombre de "Desfragmentador de disco"). Puede ser encontrado en
las versiones de Windows en Inicio -> Programas -> Accesorios -> Herramientas de Sistema.

SEGURIDAD EN SISTEMAS INFORMTICOS, UTILIDADES.


Todo sistema debe de incorporar ciertas utilidades software para proporcionar seguridad al sistema
frente a distintas amenazas.

Antivirus, antiespas y cortafuegos.


Los antivirus son una herramienta simple cuyo objetivo es detectar y eliminar virus informticos.
Nacieron durante la dcada de 1980.
Con el transcurso del tiempo, la aparicin de sistemas operativos ms avanzados e Internet, ha
hecho que los antivirus hayan evolucionado hacia programas ms avanzados que no slo buscan
detectar virus informticos, sino bloquearlos, desinfectarlos y prevenir una infeccin de los mismos,
y actualmente ya son capaces de reconocer otros tipos de malware, como spyware, rootkits, etc.
El funcionamiento de un antivirus vara de uno a otro, aunque su comportamiento normal se basa en
contar con una lista de virus conocidos y su formas de reconocerlos (las llamadas firmas o vacunas),
y analizar contra esa lista los archivos almacenados o transmitidos desde y hacia un ordenador.
Adicionalmente, muchos de los antivirus actuales han incorporado funciones de deteccin
proactiva, que no se basan en una lista de malware conocido, sino que analizan el comportamiento
de los archivos o comunicaciones para detectar cules son potencialmente dainas para el
ordenador, con tcnicas como heurstica, HIPS, etc.
Usualmente, un antivirus tiene uno o varios componentes residentes en memoria que se encargan de
analizar y verificar todos los archivos abiertos, creados, modificados, ejecutados y transmitidos en
tiempo real, es decir, mientras el ordenador est en uso.
Asimismo, cuentan con un componente de anlisis bajo demanda (los conocidos scanners,
exploradores, etc.) y mdulos de proteccin de correo electrnico, Internet, etc.
El objetivo primordial de cualquier antivirus actual es detectar la mayor cantidad de amenazas
informticas que puedan afectar un ordenador y bloquearlas antes de que la misma pueda infectar
un equipo, o poder eliminarla tras la infeccin.
Actualmente hay una gran variedad de antivirus, pero no todos se asemejan al pretendido por todos:
un antivirus eficaz en todos los sentidos.
Mtodos de contagio

Existen dos grandes grupos de propagacin: los virus cuya instalacin el usuario en un momento

Fundamentos Hardware: Software de Utilidad

34

dado ejecuta o acepta de forma inadvertida, o los gusanos, con los que el programa malicioso acta
replicndose a travs de las redes.
En cualquiera de los dos casos, el sistema operativo infectado comienza a sufrir una serie de
comportamientos anmalos o no previstos. Dichos comportamientos son los que dan la traza del
problema y tienen que permitir la recuperacin del mismo.
Dentro de las contaminaciones ms frecuentes por interaccin del usuario estn las siguientes:

Mensajes que ejecutan automticamente programas (como el programa de correo que abre
directamente un archivo adjunto).
Ingeniera social, mensajes como: Ejecute este programa y gane un premio.
Entrada de informacin en discos de otros usuarios infectados.
Instalacin de software que pueda contener uno o varios programas maliciosos.
Unidades extrables de almacenamiento (USB).

Seguridad y mtodos de proteccin

Existen numerosos medios para combatir el problema; Sin embargo, a medida que nuevos
programas y sistemas operativos se introducen en el mercado, ms difcil es tener controlados a
todos y ms sencillo va a ser que a alguien se le ocurran nuevas formas de infectar sistemas.
Ante este tipo de problemas, estn los softwares llamados antivirus. Estos antivirus tratan de
descubrir las trazas que ha dejado un software malicioso para detectarlo o eliminarlo, y en algunos
casos contener o parar la contaminacin (cuarentena).
Los mtodos para contener o reducir los riesgos asociados a los virus pueden ser los denominados
activos o pasivos.
Antivirus (activo)

Estos programas, como se ha mencionado, tratan de encontrar la traza de los programas maliciosos
mientras el sistema est funcionando.
Tratan de tener controlado el sistema mientras funciona parando las vas conocidas de infeccin y
notificando al usuario de posibles incidencias de seguridad.
Como programa que est continuamente funcionando, el antivirus tiene un efecto adverso sobre el
sistema en funcionamiento. Una parte importante de los recursos se destinan al funcionamiento del
mismo. Adems, dado que estn continuamente comprobando la memoria de la mquina, dar ms
memoria al sistema no mejora las prestaciones del mismo.
Otro efecto adverso son los falsos positivos; es decir, notificar al usuario de posibles incidencias en
la seguridad. De esta manera, el antivirus funcionando da una sensacin de falsa seguridad.
Tipos de vacunas

CA:Slo deteccin: Son vacunas que solo detectan archivos infectados sin embargo no
pueden eliminarlos o desinfectarlos.

CA:Deteccin y desinfeccin: son vacunas que detectan archivos infectados y que pueden
desinfectarlos.

CA:Deteccin y aborto de la accin: son vacunas que detectan archivos infectados y


detienen las acciones que causa el virus

CB:Comparacin por firmas: son vacunas que comparan las firmas de archivos
sospechosos para saber si estn infectados.

CB:Comparacin de signature de archivo: son vacunas que comparan las signaturas de

Fundamentos Hardware: Software de Utilidad

35

los atributos guardados en tu equipo.

CB:Por mtodos heursticos: son vacunas que usan mtodos heursticos para comparar
archivos.

CC:Invocado por el usuario: son vacunas que se activan instantneamente con el usuario.

CC:Invocado por la actividad del sistema: son vacunas que se activan instantneamente
por la actividad del sistema windows xp/vista

Filtros de ficheros (activo)

Otra aproximacin es la de generar filtros dentro de la red que proporcionen un filtrado ms


selectivo. Desde el sistema de correos, hasta el empleo de tcnicas de firewall, proporcionan un
mtodo activo y eficaz de eliminar estos contenidos.
En general este sistema proporciona una seguridad donde el usuario no requiere de intervencin,
puede ser ms tajante, y permitir emplear nicamente recursos de forma ms selectiva.
Copias de seguridad (pasivo)

Mantener una poltica de copias de seguridad garantiza la recuperacin de los datos y la respuesta
cuando nada de lo anterior ha funcionado.
As mismo las empresas deberan disponer de un plan y detalle de todo el software instalado para
tener un plan de contingencia en caso de problemas.
Planificacin

La planificacin consiste en tener preparado un plan de contingencia en caso de que una emergencia
de virus se produzca, as como disponer al personal de la formacin adecuada para reducir al
mximo las acciones que puedan presentar cualquier tipo de riesgo. Cada antivirus puede planear la
defensa de una manera, es decir, un antivirus puede hacer un escaneado completo, rpido o de
vulnerabilidad segn elija el usuario.
Consideraciones de software

El software es otro de los elementos clave en la parte de planificacin. Se debera tener en cuenta la
siguiente lista de comprobaciones:
1. Tener el software imprescindible para el funcionamiento de la actividad, nunca menos pero
tampoco ms. Tener controlado al personal en cuanto a la instalacin de software es una
medida que va implcita. As mismo tener controlado el software asegura la calidad de la
procedencia del mismo (no debera permitirse software pirata o sin garantas). En todo caso
un inventario de software proporciona un mtodo correcto de asegurar la reinstalacin en
caso de desastre.
2. Disponer del software de seguridad adecuado. Cada actividad, forma de trabajo y mtodos
de conexin a Internet requieren una medida diferente de aproximacin al problema. En
general, las soluciones domsticas, donde nicamente hay un equipo expuesto, no son las
mismas que las soluciones empresariales.
3. Mtodos de instalacin rpidos. Para permitir la reinstalacin rpida en caso de
contingencia.
4. Asegurar licencias. Determinados softwares imponen mtodos de instalacin de una vez,
que dificultan la reinstalacin rpida de la red. Dichos programas no siempre tienen
alternativas pero ha de buscarse con el fabricante mtodos rpidos de instalacin.
5. Buscar alternativas ms seguras. Existe software que es famoso por la cantidad de agujeros
de seguridad que introduce. Es imprescindible conocer si se puede encontrar una alternativa

Fundamentos Hardware: Software de Utilidad

36

que proporcione iguales funcionalidades pero permitiendo una seguridad extra.


Consideraciones de la red

Disponer de una visin clara del funcionamiento de la red permite poner puntos de verificacin
filtrado y deteccin ah donde la incidencia es ms claramente identificable. Sin perder de vista
otros puntos de accin es conveniente:
1. Mantener al mximo el nmero de recursos de red en modo de slo lectura. De esta forma se
impide que computadoras infectadas los propaguen.
2. Centralizar los datos. De forma que detectores de virus en modo batch puedan trabajar
durante la noche.
3. Realizar filtrados de firewall de red. Eliminar los programas que comparten datos, como
pueden ser los P2P; Mantener esta poltica de forma rigurosa, y con el consentimiento de la
gerencia.
4. Reducir los permisos de los usuarios al mnimo, de modo que slo permitan el trabajo diario.
5. Controlar y monitorizar el acceso a Internet. Para poder detectar en fases de recuperacin
cmo se ha introducido el virus, y as determinar los pasos a seguir.

Formacin: Del usuario

Esta es la primera barrera de proteccin de la red.


Antivirus

Es conveniente disponer de una licencia activa de antivirus. Dicha licencia se emplear para la
generacin de discos de recuperacin y emergencia. Sin embargo no se recomienda en una red el
uso continuo de antivirus.
El motivo radica en la cantidad de recursos que dichos programas obtienen del sistema, reduciendo
el valor de las inversiones en hardware realizadas.
Aunque si los recursos son suficientes. Este extra de seguridad puede ser muy til.
Sin embargo los filtros de correos con detectores de virus son imprescindibles, ya que de esta forma
se asegurar una reduccin importante de decisiones de usuarios no entrenados que pueden poner en
riesgo la red.
Firewalls

Artculo principal: Cortafuegos (informtica)


Filtrar contenidos y puntos de acceso. Eliminar programas que no estn relacionados con la
actividad. Tener monitorizado los accesos de los usuarios a la red, permite asimismo reducir la
instalacin de software que no es necesario o que puede generar riesgo para la continuidad del
negocio. Su significado es barrera de fuego y no permite que otra persona no autorizada tenga
acceso desde otro equipo al tuyo.
Reemplazo de software

Los puntos de entrada en la red son generalmente el correo, las pginas WEB, y la entrada de
ficheros desde discos, o de PC que no estn en la empresa (porttiles...)
Muchas de estas computadoras emplean programas que pueden ser reemplazados por alternativas
ms seguras.
Es conveniente llevar un seguimiento de cmo distribuyen bancos, y externos el software, valorar

Fundamentos Hardware: Software de Utilidad

37

su utilidad e instalarlo si son realmente imprescindibles.


Centralizacin y backup

La centralizacin de recursos y garantizar el backup de los datos es otra de las pautas fundamentales
en la poltica de seguridad recomendada.
La generacin de inventarios de software, centralizacin del mismo y la capacidad de generar
instalaciones rpidas proporcionan mtodos adicionales de seguridad.
Es importante tener localizado donde tenemos localizada la informacin en la empresa. De esta
forma podemos realizar las copias de seguridad de forma adecuada.
Control o separacin de la informtica mvil, dado que esta est ms expuesta a las contingencias
de virus.
Empleo de sistemas operativos ms seguros

Para servir ficheros no es conveniente disponer de los mismos sistemas operativos que se emplean
dentro de las estaciones de trabajo, ya que toda la red en este caso est expuesta a los mismos retos.
Una forma de prevenir problemas es disponer de sistemas operativos con arquitecturas diferentes,
que permitan garantizar la continuidad de negocio.
Temas acerca de la seguridad

Existen ideas instaladas parte por las empresas de antivirus parte en la cultura popular que no
ayudan a mantener la seguridad de los sistemas de informacin.

Mi sistema no es importante para un cracker. Este tema se basa en la idea de que no


introducir passwords seguras en una empresa no entraa riesgos pues Quin va a querer
obtener informacin ma?. Sin embargo dado que los mtodos de contagio se realizan por
medio de programas automticos, desde unas mquinas a otras, estos no distinguen buenos
de malos, interesantes de no interesantes... Por tanto abrir sistemas y dejarlos sin claves es
facilitar la vida a los virus.

Estoy protegido pues no abro archivos que no conozco. Esto es falso, pues existen
mltiples formas de contagio, adems los programas realizan acciones sin la supervisin del
usuario poniendo en riesgo los sistemas.

Como tengo antivirus estoy protegido. nicamente estoy protegido mientras el antivirus
sepa a lo que se enfrenta y como combatirlo. En general los programas antivirus no son
capaces de detectar todas las posibles formas de contagio existentes, ni las nuevas que
pudieran aparecer conforme las computadoras aumenten las capacidades de comunicacin.

Como dispongo de un firewall no me contagio. Esto nicamente proporciona una limitada


capacidad de respuesta. Las formas de infectarse en una red son mltiples. Unas provienen
directamente de accesos a mi sistema (de lo que protege un firewall) y otras de conexiones
que realiz (de las que no me protege). Emplear usuarios con altos privilegios para realizar
conexiones tampoco ayuda.

Tengo un servidor web cuyo sistema operativo es un UNIX actualizado a la fecha.


Puede que este protegido contra ataques directamente hacia el ncleo, pero si alguna de las
aplicaciones web (PHP, Perl, Cpanel, etc.) est desactualizada, un ataque sobre algn script
de dicha aplicacin puede permitir que el atacante abra una shell y por ende ejecutar
comandos en el UNIX.

Fundamentos Hardware: Software de Utilidad

38

Sistemas operativos ms atacados

Las plataformas mas atacadas por virus informticos son la lnea de sistemas operativos Windows
de Microsoft. Respecto a los sistemas derivados de Unix como GNU/Linux, BSD, Solaris, MacOS,
stos han corrido con mejor suerte debido en parte al sistema de permisos. No obstante en las
plataformas derivadas de Unix han existido algunos intentos que ms que presentarse como
amenazas reales no han logrado el grado de dao que causa un virus en plataformas Windows.

INVENTARIADO DEL SOFTWARE INSTALADO.


Una de las cuestiones que toda empresa tiene que tener claro y organizado es el inventario. Es un
trabajo organizativo importante en todas las empresas y que si se hace de forma rigurosa y metdica
no ser una carga de trabajo importante. Muchas veces uno de los grandes activos olvidados en la
empresa es la gestin del inventario de software, para tener identificado en cada momento que
licencia de qu programas tiene cada equipo instalado.
El software es una parte del capital IT invertido por la empresa y por lo tanto debemos tener
identificado con qu recursos cuenta cada equipo. Se trata de tener un pequea base de datos que
recopile toda la informacin de cada equipo, que incluya la licencia del sistema operativo, de los
programas ofimticos que tiene, etc.
Se trata de ligar al nmero de serie del equipo toda la informacin que nos permite identificar, y en
caso de ser necesario, recuperar todos los programas que tiene instalado para, llegado el
momento, poder instalarlos en otro equipo si las circunstancias as lo exigen.
Para ejecutar esta tarea si no lo realizamos en su momento existen distintos programas
especializados en recuperar las claves de instalacin que nos pueden ayudar a completar toda la
informacin de nuestros equipos. Otra de las opciones que tenemos en utilizar programas
especializados en la gestin del inventario de software, que se encargan de recopilar
automticamente toda la informacin referente a los equipos que tenemos en la red.
No slo se trata de un problema de licencias, sino que tambin es necesario identificar qu
programas tiene instalados, cul es la versin de cada programa, si es privativo o no, de donde
podemos descargar actualizaciones, etc. Se trata de poner un poco de orden e identificar posibles
amenazas de manera rpida.
Todo este trabajo nos ayudar en el momento en que tengamos que restaurar la configuracin de un
equipo a tener identificadas las necesidades a cubrir respecto a la reinstalacin del software del
mismo. Es una de las cuestiones que conviene llevar al da y ser estrictos en su cumplimiento,
puesto que un paso en falso luego cuesta mucho tiempo deshacerlo.
Existen utilidades para facilitar la gestin de estas licencias y el software instalado como ejemplo
NetSupport DNA, Inventario activo fijo 3000, etc.

DESINSTALACIN DE APLICACIONES. UTILIDADES.


En muchas ocasiones, el administrador de un sistema, debe enfrentarse a la desinstalacin completa
de aplicaciones obsoletas o con mal funcionamiento para que el sistema quede totalmente operativo
y eficiente. Para ello, existen distintas aplicaciones para ayudarnos a eliminar y desinstalar las
aplicaciones, casi todos los sistemas operativos tienen sus propias herramientas: en sistemas
Windows tenemos el Gestor de Aplicaciones, pero a veces este software no es suficiente para
deshacernos de algunos programas molestos, por ello existen distintas aplicaciones especficas para
estos cometidos, desinstalan y borran totalmente los ficheros y adems quitan las referencias del
sistema de registro de windows. Entre otras podemos citar las siguientes ZSoft Uninstaller,
MyUninstaller, Revo Uninstaller, Final Uninstaller.

Fundamentos Hardware: Software de Utilidad

39

APLICACIONES PORTABLES. CARACTERSTICAS Y CASOS PRCTICOS.


Una aplicacin porttil -ms conocida como "portable"- es una aplicacin informtica que puede
ser utilizada en cualquier ordenador que posea el sistema operativo para el que fue programada sin
instalacin previa; esto significa que no es necesaria la instalacin de bibliotecas adicionales en el
sistema para su funcionamiento.
No todas las aplicaciones informticas son porttiles. Usualmente existe una versin normal de la
aplicacin (tpicamente no porttil), y luego, sta se modifica para crear una aplicacin porttil. Por
otro lado, hay aplicaciones que sin ser modificadas pueden ser usadas como aplicaciones para
llevar, como eMule, ya que se distribuyen en un ejecutable y no necesitan ser instaladas sino solo
copiarse a una carpeta, que bien podra estar en una memoria USB.
Es de resear que en algunos sistemas operativos como AmigaOS el concepto de aplicacin porttil
es totalmente improcedente, puesto que el propio S.O. est diseado para que las aplicaciones sean
porttiles por definicin. Dependiendo del sistema operativo puede ser ms o menos compleja la
portabilidad de las aplicaciones.

Aplicaciones porttiles para OS


Microsoft Windows

La mayora de los programas para Microsoft Windows no estn diseados para ser porttiles. El
registro de Windows, dada la manera en que se gestionan las libreras dll, y la estructura del
instalador de Windows, tienden a hacer que la instalacin de los programas sea de sentido nico.
Muchas aplicaciones populares como Adobe Photoshop o Microsoft Word, por ejemplo, utilizan el
registro de manera intensiva, y almacenan informacin en muchos directorios del sistema de
ficheros, a pesar de que se recomienda utilizar el registro slamente para almacenar la
configuracin bsica de la aplicacin, y el directorio personal del usuario para almacenar ficheros
ms grandes.
Para crear aplicaciones porttiles, los desarrolladores deben conseguir que la aplicacin deje el
ordenador donde se ha ejecutado completamente "limpio". Esto implica que la aplicacin no debe
usar el registro, ni guardar ficheros en ningn lugar que no sea su directorio de instalacin.
Macintosh

Muchos programas para Mac OS X son inherentemente porttiles al estar empaquetados en un


formato de arrastrar e instalar, ms que como instaladores independientes. Sin embargo, algunas
aplicaciones no son porttiles ya que guardan las preferencias del usuario en el disco duro donde
est instalado el sistema operativo.
Sistemas basados en Unix

Los programas suelen estar diseados alrededor de la variable HOME para guardar las preferencias
del usuario (e.g. $HOME/.w3m para el navegador w3m). Esto hace que los programas diseados
para los entornos UNIX sean especialmente porttiles. NO obstante algunos programas no
demasiado bien diseados no respetan esta convencin.

Fundamentos Hardware: Software de Utilidad

40

Virtualizacin
Una estrategia alternativa para conseguir la portabilidad de las aplicaciones en Windows, sin tener
que modificar el cdigo fuente de la aplicacin, es la virtualizacin. Para utilizar la virtualizacin,
una aplicacin puede ser rodeada de dll's que intercepten todas las llamadas al sistema. Esta capa de
virtualizacin puede interceptar todas las llamadas no porttiles y hacer que una aplicacin se
ejecute sin problemas y sin instalarse previamente en el sistema operativo.

Programas Java
Dentro de la portabilidad cabe destacar las aplicaciones escritas en el lenguaje Java, este lenguaje,
por definicin tiene la portabilidad incluida debido a su funcionamiento. Todo programa hecho en
java est compilado para una mquina especial que es la java virtual machine, para poder
ejecutar aplicaciones hechas en este lenguaje solamente debemos instalar el entorno Java Runtime
Enviroment para el sistema operativo particular que tengamos.
Dentro de las aplicaciones porttiles, tenemos programas de navegacin de Internet, correo
electrnico, procesador de texto, hoja de clculo, presentaciones grficas, etc. Si adems de las
aplicaciones, copiamos nuestros archivos de datos, podemos llevarnos una "oficina" en la palma de
la mano, y trabajar en cualquier ordenador sin necesidad de instalar de nuevo nuestras aplicaciones.
Podemos ver una lista de aplicaciones portables en estas direcciones
http://es.wikipedia.org/wiki/Lista_de_aplicaciones_port%C3%A1tiles
http://appsportables.blogspot.com/
http://hacktolive.org/wiki/Portable_Applications_%28Linux%29

Referencias Bibliogrficas
La referencia bibliogrfica ms utilizada ha sido la wikipedia en castellano.
Haciendo bsqueda en los artculos y los enlaces referenciados por los
mismos.
http://es.wikipedia.org/

Вам также может понравиться