0% encontró este documento útil (0 votos)
4 vistas32 páginas

Software

El documento proporciona una visión general del software, incluyendo su definición, clasificaciones y tipos, como sistemas operativos y software de aplicación. Se detalla la función de los sistemas operativos como gestores de recursos y su evolución histórica a través de diferentes generaciones. Además, se mencionan virus informáticos y lenguajes de programación, destacando la importancia del software en la operación de computadoras.

Cargado por

yenny.llq
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas32 páginas

Software

El documento proporciona una visión general del software, incluyendo su definición, clasificaciones y tipos, como sistemas operativos y software de aplicación. Se detalla la función de los sistemas operativos como gestores de recursos y su evolución histórica a través de diferentes generaciones. Además, se mencionan virus informáticos y lenguajes de programación, destacando la importancia del software en la operación de computadoras.

Cargado por

yenny.llq
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd

CONTENIDO:

SOFTWARE
¿QUÉ ES UN SOFTWARE?
CLASES DE SOFTWARE
SOFTWARE DE APLICACIÓN
SOFTWARE DE COMUNICACIÓN
SISTEMAS OPERATIVOS
SOFTWARE DE ULTIMA GENERACION

SISTEMAS OPERATIVOS:
¿QUÉ ES UN SISTEMA OPERATIVO?
CARACTERISTICAS
APLICACIONES
HISTORIA
NECESIDAD
SISTEMAS OPERATIVOS MAS COMUNES

VIRUS:
COMO NACIERON LOS VIRUS
QUE ES UN VIRUS
TIPOS DE VIRUS
CARACTERISTICAS DE LOS VIRUS
ALGUNOS VIRUS DE ARGENTINA
DAÑOS DE LOS VIRUS

LENGUAJE DE PROGRAMACIÓN:
ADA BYRON
CLASIFICACION
ALGUNOS TIPOS DE LENGUAJES
SOFTWARE

El software es el conjunto de instrucciones que las computadoras emplean para manipular


datos. Sin el software, la computadora sería un conjunto de medios sin utilizar. Al cargar los
programas en una computadora, la máquina actuará como si recibiera una educación
instantánea; de pronto "sabe" cómo pensar y cómo operar. El Software es un conjunto de
programas, documentos, procedimientos, y rutinas asociados con la operación de un sistema
de computo. Distinguiéndose de los componentes físicos llamados hardware.

Comúnmente a los programas de computación se les llama software; el software asegura que
el programa o sistema cumpla por completo con sus objetivos, opera con eficiencia, esta
adecuadamente documentado, y suficientemente sencillo de operar. Es simplemente el
conjunto de instrucciones individuales que se le proporciona al microprocesador para que
pueda procesar los datos y generar los resultados esperados. El hardware por si solo no puede
hacer nada, pues es necesario que exista el software, que es el conjunto de instrucciones que
hacen funcionar al hardware.

Clasificaciones del Software:

El software se clasifica en 4 diferentes Categorías: Sistemas Operativos, Lenguajes de


Programación, Software de uso general, Software de Aplicación. (Algunos autores consideran
la 3era y 4ta clasificación como una sola).

 Sistemas Operativos:

El sistema operativo es el gestor y organizador de todas las actividades que realiza la


computadora. Marca las pautas según las cuales se intercambia información entre la memoria
central y la externa, y determina las operaciones elementales que puede realizar el procesador.
El sistema operativo, debe ser cargado en la memoria central antes que ninguna otra
información. Lenguajes de Programación Mediante los programas se indica a la computadora
que tarea debe realizar y cómo efectuarla , pero para ello es preciso introducir estas órdenes
en un lenguaje que el sistema pueda entender. En principio, el ordenador sólo entiende las
instrucciones en código máquina, es decir ,el específico de la computadora. Sin embargo, a
partir de éstos se elaboran los llamados lenguajes de alto y bajo nivel.

 Software de Uso General:

El software para uso general ofrece la estructura para un gran número de aplicaciones
empresariales, científicas y personales. El software de hoja de cálculo, de diseño asistido por
computadoras (CAD), de procesamiento de texto, de manejo de Bases de Datos, pertenece a
esta categoría. La mayoría de software para uso general se vende como paquete; es decir, con
software y documentación orientada al usuario ( manuales de referencia, plantillas de teclado
y demás ).

 Software de Aplicaciones:

El software de aplicación esta diseñado y escrito para realizar tareas específicas


personales,,empresariales o científicas como el procesamiento de nóminas, la administración
de los recursos humanos o el control de inventarios. Todas éstas aplicacion es procesan datos
(recepción de materiales) y generan información (registros de nómina). para el usuario.
Sistemas Operativos Un sistema Operativo (SO) es en sí mismo un programa de computadora.
Sin embargo, es un programa muy especial, quizá el más complejo e importante en una
computadora. El SO despierta a la computadora y hace que reconozca a la CPU, la memoria,
el tecla do, el sistema de vídeo y las unidades de disco. Además, proporciona la facilidad para
que los usuarios se comuniquen con la computadora y sirve de plataforma a partir de la cual
se corran programas de aplicación.

Cuando enciendes una computadora, lo primero que ésta hace es llevar a cabo un
autodiagnóstico llamado auto prueba de encendido (Power On Self Test, POST). Durante la
POST, la computadora identifica su memoria, sus discos, su teclado, su sistema de vídeo y
cualquier otro dispositivo conectado a ella. Lo siguiente que la computadora hace es buscar un
SO para arrancar (boot).

Una vez que la computadora ha puesto en marcha su SO, mantiene al menos parte de éste en
su memoria en todo momento. Mientras la computadora esté encendida, el SO tiene 4 tareas
principales. [Link] ya sea una interfaz de línea de comando o una interfaz gráfica al
usuario, para que este último se pueda comunicar con la computadora. Interfaz de línea de
comando: tú introduces palabras y símbolos desde el teclado de la computadora, ejemplo, el
MS-DOS. Interfaz gráfica del Usuario (GUI), seleccionas las acciones mediante el uso de un
Mouse para pulsar sobre figuras llamadas iconos o seleccionar opciones de los menús.
[Link] los dispositivos de hardware en la computadora.

Cuando corren los programas, necesitan utilizar la memoria, el monitor, las unidades de disco,
los puertos de Entrada/Salida (impresoras, módems, etc). El SO sirve de intermediario entre
los programas y el hardware. [Link] y mantener los sistemas de archivo de disco · Los
SO agrupan la información dentro de compartimientos lógicos para almacenarlos en el disco.
Estos grupos de información son llamados archivos. Los archivos pueden contener
instrucciones de programas o información creada por el usuario. El SO mantiene una lista de
los archivos en un disco, y nos proporciona las herramientas necesarias para organizar y
manipular estos archivos. [Link] a otros programas.

Otra de las funciones importantes del SO es proporcionar servicios a otros programas. Estos
servicios son similares a aquellos que el SO proporciona directamente a los usuarios. Por
ejemplo, listar los archivos, grabarlos a disco, eliminar archivos, revisar espacio disponible,
etc. Cuando los programadores escriben programas de computadora, incluyen en sus
programas instrucciones que solicitan los servicios del SO. Estas instrucciones son conocidas
como "llamadas del sistema"

 El Kernel y el Shell :

Las funciones centrales de un SO son controladas por el núcleo (kernel) mientras que la
interfaz del usuario es controlada por el entorno (shell). Por ejemplo, la parte más importante
del DOS es un programa con el nombre "[Link]" Este programa ti ene dos
partes. El kernel, que se mantiene en memoria en todo momento, contiene el código máquina
de bajo nivel para manejar la administración de hardware para otros programas que necesitan
estos servicios, y para la segunda parte del [Link] el s hell, el cual es el interprete
de comandos.
Las funciones de bajo nivel del SO y las funciones de interpretación de comandos están
separadas, de tal forma que puedes mantener el kernel DOS corriendo, pero utilizar una
interfaz de usuario diferente. Esto es exactamente lo que sucede cuando carga s Microsoft
Windows, el cual toma el lugar del shell, reemplazando la interfaz de línea de comandos con
una interfaz gráfica del usuario. Existen muchos shells diferentes en el mercado, ejemplo:
NDOS (Norton DOS), XTG, PCTOOLS, o inclusive el mismo SO MS-DOS a partir de la
versión 5.0 incluyó un Shell llamado DOS SHELL.

 Software de Comunicación

Para lograr que dos o más computadoras se comuniquen entre sí, es necesario que exista tanto
un medio físico como uno lógico que permita a ambas entablar comunicación. El software de
comunicación se refiere al conjunto de programas que cumple la función lógica descrita
anteriormente.

Actualmente existe en el mercado de las comunicaciones de datos una amplia variedad de


software de comunicación, entre los que se encuentran:

 Smartcomm (Ambiente Windows).


 Quick Link II.
 Procomm Plus (Ambiente DOS).
 SLIP (Serial on Line Internet Protocol).
 PPT (Pert to Pert Protocol).
 Camaleon.
 Winsockets.

Los tres primeros productos no permiten copiar información mediante el programa FTP (File
Transfer Protocol o protocolo de Transferencia de Archivos), mientras que el resto si lo
permite.

 Software De Ultima Generación

FineReader Professional Edition 7.0

FineReader es una completa aplicación de OCR (reconocimiento óptico de caracteres, en


inglés), con la que podrás escanear prácticamente cualquier documento de papel y convertirlo
automáticamente en un documento digital, ahorrándote un montón de horas de tecleo.

Babylon-Pro (Inglés-Español-Inglés) 4.0.3

Babylon es una utilidad que permite traducir palabras y expresiones del inglés al español y a
la inversa fácilmente.
Las ventajas principales de Babylon son su extensísimo vocabulario, su facilidad de uso y su
posición fija en la barra de tareas, que permite servirse de él mientras se utiliza cualquier otra
aplicación
Babylon es multi-idioma. Cada una de sus versiones incorpora uno o más diccionarios,
pudiendo añadir fácilmente diccionarios adicionales, disponibles en un amplio número de
idiomas.

Además de traducir, Babylon también es capaz de realizar conversiones de moneda, de zonas


horarias y de unidades métricas.

Desde el propio programa podrás descargar motores de voz para escuchar así la pronunciación
de cada palabra, aprendiendo su significado y a la par su pronunciación.

VMware Workstation 4.0.5.6030

VMware Workstation es una, sin duda, potente utilidad que permite lo increíble, conseguir
que puedas tener varios sistemas operativos instalados sin necesidad de particiones,
consiguiendo además que cambiar de uno a otro sea sencillísimo, casi tanto como cargar un
programa más.

Podrás, por tanto, simultanear varios sistemas operativos, combinando por ejemplo Windows
XP con Linux sin ningún problema. Otra de sus ventajas es que una vez instalados los
sistemas operativos adicionales a través de VMware podrás usarlos de forma individual y
trasladarlos a otros PC tranquilamente.

El programa anfitrión sólo puede ser ejecutado bajo Windows NT, 2000 o XP (también existe
versión para Linux) pero una vez hecho las posibilidades de instalar nuevos sistemas
operativos se disparan.

Es poco menos que asombroso poder abrir un sistema operativo dentro del propio y ejecutarlo
en ventana, sin necesitar ningún reinicio, como si de un programa más se tratase o a pantalla
completa, como si tu anterior sistema operativo hubiese desaparecido.

Sistemas operativos soportados:


 Windows XP
 Windows 98
 Windows NT 4.0
 Windows .NET Server Beta
 Windows Me
 Windows 95
 Windows 3.1
 MS-DOS 6

Distribuciones de Linux:
 Red Hat Linux
 SuSE Linux
 Mandrake-Linux
 Caldera Open Linux
Windows XP Professional Edition

Microsoft® Windows® XP Professional es la siguiente versión del sistema operativo


Windows, diseñado para negocios de todos los tamaños y para individuos que exigen sacar el
máximo provecho de su experiencia informática.

Visual Studio .NET 2002 Professional Edition

Genere con rapidez aplicaciones para Internet de próxima generación orientadas a cualquier
dispositivo compatible con Internet y que se integran en cualquier plataforma
SISTEMA OPERATIVO

Definición:

Una de las definiciones más comúnmente aceptadas expresa:

 “Un S. O. es un grupo de programas de proceso con las rutinas de control


necesarias para mantener continuamente operativos dichos programas”.

En este contexto, el Sistema Operativo es el programa fundamental de todos los programas de


sistema. El S. O. protege y libera a los programadores de la complejidad del hardware,
colocándose un nivel de software por sobre el hardware para:
 Controlar todas las partes del sistema.
 Presentar al usuario una interfaz o máquina virtual.

El esquema típico de un sistema de cómputos incluye:

· Programas de aplicación:

o Sistema bancario, reservaciones en una línea aérea,


juegos, etc.

· Programas de sistema:

o Compiladores, editores, intérpretes de comandos.


o Sistema Operativo.

· Hardware:

o Lenguaje de máquina.
o Microprogramación.
o Dispositivos físicos.

Las principales características del microprograma son:


 Se trata de software que generalmente se localiza en la memoria de solo
lectura.
 Busca las instrucciones de lenguaje de máquina para ejecutarlas como una
serie de pequeños pasos.
 El conjunto de instrucciones que interpreta define al lenguaje de máquina.
 En ciertas máquinas se implanta en el hardware y no es en realidad una
capa distinta.

Respecto del lenguaje de máquina es preciso señalar que:


 Generalmente posee entre 50 y 300 instrucciones, sirviendo la mayoría para
desplazar datos, hacer operaciones aritméticas y comparar valores.
Los dispositivos de e / s (entrada / salida) se controlan al cargar valores en registros del
dispositivo especiales
Una de las principales funciones del S. O. es ocultar toda esta complejidad y brindar al
programador un conjunto más conveniente de instrucciones para trabajar.
El S. O. se ejecuta en modo central o modo de supervisión, con máxima prioridad y
generalmente con protección por hardware.
Los compiladores, editores y demás programas se ejecutan en modo usuario.
El S. O. es la serie de programas, dispuestos ya sea en el software o en la memoria fija
(microcódigo), que hacen al hardware utilizable

Los S. O. ponen el “poder computacional básico” del hardware convenientemente a


disposición del usuario, pero consumen parte de ese poder computacional para funcionar [7,
Deitel]

Los S. O. son, en primer lugar, administradores de recursos, siendo el recurso primario el


hardware del sistema (ver Figura 1.1
principales características de los S. O. son:
 Definir la “Interfaz del Usuario”.
 Compartir el hardware entre usuarios.
 Permitir a los usuarios compartir los datos entre ellos.
 Planificar recursos entre usuarios.
 Facilitar la entrada / salida.
 Recuperarse de los errores.

Historia de los Sistemas Operativos - Generaciones


Los S. O. han estado relacionados históricamente con la arquitectura de las computadoras en
las cuales se ejecutan, razón por la cual su historia puede analizarse según las siguientes
generaciones y sus principales características [7, Deitel]:
 Generación Cero (década de 1940):

o Carencia total de S. O.
o Completo acceso al lenguaje de máquina.
 Primera generación (1945-1955): bulbos y conexiones:

o Carencia de S. O.
o En los años cincuenta comienzan como transición entre
trabajos, haciendo la misma más simple.
 Segunda generación (1955-1965): transistores y sistemas de
procesamiento por lotes (batch):

o En los años sesenta aparecen los S. O. para sistemas


compartidos con:
 Multiprogramación: varios programas de usuarios se
encuentran al mismo tiempo en el almacenamiento
principal, cambiando el procesador rápidamente de un
trabajo a otro.
 Multiprocesamiento: varios procesadores se utilizan en
un mismo sistema para incrementar el poder de
procesamiento.
o Posteriormente aparece la independencia de dispositivo:
 El programa del usuario especifica las características
de los dispositivos que requieren los archivos.
 El S. O. asigna los dispositivos correspondientes según
los requerimientos y las disponibilidades.
 Tercera generación (1965-1980): circuitos integrados y
multiprogramación:

o Difusión de la multiprogramación:
 Partición de la memoria en porciones, con trabajos
distintos en cada una de ellas.
 Aprovechamiento del tiempo de espera consecuencia de
operaciones de e / s, para utilizar la CPU para otros
procesos.

o Protección por hardware del contenido de cada partición de


memoria.
o Aparición de técnicas de spooling:
 Simultaneous Peripheral Operation On Line: operación
simultánea y en línea de periféricos.
 Almacenamiento de trabajos de entrada y de salida en
dispositivos transitorios rápidos (discos), para
disminuir el impacto de los periféricos mas lentos.
o Son sistemas de modos múltiples, es decir que deben soportar
sistemas de propósitos generales; son grandes y complejos
pero muy poderosos.
o Interponen una capa de software entre el usuario y el
hardware.
o Aparecen los lenguajes de control de trabajos, necesarios para
especificar el trabajo y los recursos requeridos.
o Soportan timesharing (tiempo compartido), variante de la
multiprogramación con usuarios conectados mediante
terminales en línea, permitiendo la operación en modo
interactivo o conversacional.

o Aparecen los sistemas de tiempo real, que requieren tiempos de


respuesta muy exigentes, especialmente para usos industriales o
militares.
o Se difunden las computadoras de rango medio.
 Cuarta generación (1980-1990): computadoras personales:
o Aparición de software amigable con el usuario, destinado a
usuarios no profesionales y con una interfase gráfica muy
desarrollada.
o Desarrollo de sistemas operativos de red y sistemas operativos
distribuidos.
o Sistemas operativos de red:
 Los usuarios están conscientes de la existencia de varias
computadoras conectadas.
 Cada máquina ejecuta su propio S. O. local.
 Son similares a los S. O. de un solo procesador pero con
el agregado de:
 Controlador de interfaz de la red y su software
de bajo nivel.
 Software para conexión y acceso a archivos
remotos, etc.
o Sistemas operativos distribuidos:
 Aparece ante los usuarios como un S. O. de un solo
procesador, aún cuando de soporte a varios
procesadores.
 Los usuarios no son conscientes del lugar donde se
ejecutan sus programas

 encuentran sus archivos, ya que lo debe administrar el


S. O. automáticamente.
 Deben permitir que un programa se ejecute mediante
varios procesadores a la vez, maximizando el
paralelismo.
o Aparición de emuladores de terminal para el acceso a equipos
remotos desde computadoras personales (PC).
o Gran énfasis en la seguridad, en especial por el desarrollo de
los sistemas de comunicaciones de datos.
o El S. O. crea un ambiente de trabajo según el concepto de
máquina virtual, que lo aísla del funcionamiento interno de la
máquina.
o Proliferación de sistemas de bases de datos, accesibles
mediante redes de comunicación.

Necesidad de Sistema Operativo

 2.1. Vista histórica [Tanenbaum92]

En un principio solo existía el hardware del computador. Los primeros computadores


eran (físicamente) grandes máquinas que se operaban desde una consola. El
programador escribía un programa y luego lo controlaba directamente. En primer
lugar, el programa se cargaba manualmente en la memoria, desde los interruptores
del tablero frontal, desde una cinta de papel o desde tarjetas perforadas. Luego se
pulsaban los botones adecuados para establecer la dirección de inicio y comenzar la
ejecución del programa. Mientras este se ejecutaba, el programador-operador lo
podía supervisar observando las luces en la consola. Si se descubrían errores, el
programador podía detener el programa, examinar el contenido de la memoria y los
registros y depurar el programa directamente desde la consola. La salida del
programa se imprimía, o se perforaba en cintas de papel o tarjetas para su impresión
posterior. Un aspecto importante de ese entorno era su naturaleza interactiva directa.
El programador también era el operador del sistema de computación.

La mayoría de los sistemas utilizaban un esquema de reservas o de registro para


asignar tiempo de máquina. Si alguien quería usar el computador, acudía a la hoja de
registro, buscaba el siguiente tiempo libre de la máquina que fuera conveniente y se
anotaba para usarla. Sin embargo, con este procedimiento se presentaban ciertos
problemas. Si un programador se había registrado para usar una hora de tiempo del
computador dedicada a ejecutar el programa que estaba desarrollando, pero se
topaba con algún error difícil y no podía terminar en esa hora. Si alguien más había
reservado el siguiente bloque de tiempo, el programador debía detenerse, rescatar lo
que pudiera y volver mas tarde para continuar. Por otra parte, si el programa se
ejecutaba sin problemas, podría terminar en 35 minutos; pero como pensó que
necesitaría la máquina durante más tiempo, se registró para usarla un hora, y
permanecería inactiva durante 25 minutos.

Conforme transcurrió el tiempo, se desarrollaron software y hardware adicionales;


empezaron a popularizarse los lectores de tarjetas, impresoras de líneas y cintas
magnéticas. Se diseñaron ensambladores, cargadores y ligadores para facilitar las
tareas de programación, y se crearon bibliotecas de funciones comunes, de manera
que éstas podían copiarse a un nuevo programa sin tener que escribirlas de nuevo.

Se podía necesitar un considerable tiempo de operación para realizar un trabajo.


Cada trabajo consistía en varios pasos distintos: cargar la cinta del compilador de
FORTRAN, ejecutar el compilador, descargar la cinta del compilador, cargar la cinta
del ensamblador, ejecutar el ensamblador, descargar la cinta del ensamblador,
cargar el programa objeto y ejecutarlo. Si ocurría un error en cualquiera de los
pasos, probablemente habría que comenzar desde el principio. Cada paso del trabajo
podía ocasionar la necesidad de cargar y descargar cintas magnéticas, cintas de
papel o tarjetas perforadoras, por lo que al avanzar el tiempo aparecieron los
primeros sistemas operativos.

 Definamos ahora el concepto de Sistema Operativo: Es un programa que actúa como


intermediario entre el usuario y el hardware de un computador y su propósito es
proporcionar un entorno en el cual el usuario pueda ejecutar programas. El objetivo
principal de un sistema operativo es lograr que el sistema de computación se use de
manera cómoda y el objetivo secundario es que el hardware del computador se
emplee de manera eficiente. Una definición más común es que el sistema operativo es
el programa que se ejecuta todo el tiempo en el computador, siendo programas de
aplicación todos los demás.

o Objetivo principal: los sistemas operativos existen porque se supone que es


mas fácil trabajar con uno de ellos que sinse supone que es mas fácil trabajar
con uno de ellos que sin él. Esta situación es particularmente clara cuando se
observan los sistemas operativos para los pequeños computadores personales.
o Objetivo secundario: es la utilización eficiente del sistema de computación.
Este propósito tiene una importancia especial en los grandes sistemas
multiusuario compartidos. En el pasado, las consideraciones de eficiencia a
menudo eran más importantes que la comodidad, por lo que gran parte de la
teórica de sistemas operativos se concentra en el uso óptimo de los recursos
de computación.

Los sistemas operativos y la arquitectura del computador tienen una gran influencia
mutua. Los sistemas operativos se desarrollan para facilitar el uso del hardware. Al ir
diseñando y utilizando los sistemas operativos, se hizo patente que podrían simplificarse
con cambios en el diseño del hardware. Software de ecología (Simulación, almacenamiento
de datos, estadísticas, etc)

A pesar de que hay programas basados en el MS-Windows que se utilizan en el estudio de la


ecologóa (incluso hay una rama de informática medioambiental), solo Ecolab está disponible
para Linux por el momento. Aunque los programas de Linux como, por ejemplo, bases de
datos o programas de estadísticas son fáciles de adaptar. También es posible usar un
conjunto de programas de Linux para resolver simulaciones ecológicas.

Ecolab

Ecolab es tanto el nombre de un paquete de software como un proyecto de investigación


centrado en las dinámicas de la evolución. EcoLab es un sistema que implementa un modelo
abstracto de ecología. Está escrito como un conjunto de órdenes Tcl/Tk, lo que permite que
los parámetros del modelo se puedan cambiar fácilmente mediante la edición de un guión. El
propio modelo esta escrito en C++.

OpenClassroom (aula abierta)

«;OpenClassroom: se trata de una distribución para la educación. Pre-alpha.:


OpenClassroomintegra un paquete de software que permite a las organizaciones
educacionales y comunitarias crear comunidades de conocimientos conectando sus PCs
actuales (tanto viejos como nuevos) en una red, local y mundial, como Internet. Esta
iniciativa se centra en permitir que estas organizaciones prolonguen la vida útil de sus
equipos, trayéndoles software de última generación que instalar en sus pcs actuales. Las
herramientas permiten que las organizaciones y los ciudadanos tengan y trabajen con su
propia imprenta digital».

Tierra

Tierra es una herramienta para el estudio de la evolución digital y ecológica que funciona
tanto con Linux como con otros sistemas operativos.

Linux en investigaciones medioambientales

Linux es ideal para su uso como herramienta de investigación en experimentos


medioambientales. Hay pequeñas soluciones para Linux insertados que pueden utilizarse
para control remoto y telemetría. También hay implementaciones MUY pequeñas para Linux
desde sistemas PC-104 para sistemas empotrados como uCsimm. Del mismo modo, Linux es
una plataforma ideal para la investigación ecológica e información medioambiental vía
Internet utilizando herramientas que utilizan la WWW como Netscape.
Linux se puede utilizar incluso para modelar procesos complicados de tipo biológico y
medioambiental. Un (cluster beowulf se puede utilizar para ejecutar simulaciones complejas
de procesos medioambientales, como por ejemplo Earthdome y un sondeo acerca.

SWARM

SWARM es un paquete de software para simulaciones multi-agentes de sistemas complejos


que está desarrollando el Grupo de Desarrollo de Swarm (SDG).
Swarm tiene la intención de ser una herramienta útil para investigadores en un amplio rango
de disciplinas, pero especialmente para la vida artificial. La arquitectura básica de Swarm es
la simulación de la recogida de agentes interactuantes de manera simultánea: con esta
arquitectura, podemos poner en práctica un gran número de modelos de agentes con base. El
código fuente está disponible gratis bajo términos de licencia GMU.

UNCERT

UNCERT es un paquete de análisis de de incertidumbre geoestadística aplicada a las


corrientes de aguas subterráneas y a la modelación de trasportes contaminantes. Este
paquete se creó para evaluar la incertidumbre inherente a la descripción de la geología
subterránea, las propiedades hidráulicas y los movimientos de las sustancias contaminantes
más peligrosas en sistemas de corrientes subterráneas. Aunque en principio está ideado para
estos propósitos, se puede utilizar en una amplia rama de disciplinas. Lenguajes de Lógica de
Estado para la Programación de PLC's

Sistemas Operativos más comunes :

MS-DOS

Es el más común y popular de todos los Sistemas Operativos para PC. La razón de su
continua popularidad se debe al aplastante volumen de software disponible y a la base
instalada de computadoras con procesador Intel. Cuando Intel liberó el 80286, D OS se hizo
tan popular y firme en el mercado que DOS y las aplicaciones DOS representaron la mayoría
del mercado de software para PC.

En aquel tiempo, la compatibilidad IBM, fue una necesidad para que los productos
tuvieran éxito, y la "compatibilidad IBM" significaba computadoras que corrieran DOS tan
bien como las computadoras IBM lo hacían.80186 Después de la introducción del procesador
Intel 80286, IBM y Microsoft reconocieron la necesidad de tomar ventaja de las capacidades
multitarea de esta CPU. Se unieron para desarrollar el OS/2, un moderno SO multitarea para
los microprocesadores Intel. < BR>Sin embargo, la sociedad no duró mucho.

Por otra parte, el OS/2 es un entorno muy complejo que requiere hasta 4 MB de la
RAM. Los usuarios del OS/2 interactuan con el sistema mediante una interfaz gráfica para
usuario llamada Administrador de presentaciones. A pesar de que el OS/2 rompe la barrera de
1 MB del MS-DOS, le llevo tiempo volverse popular.
VIRUS

1. ¿CÓMO NACIERON LOS VIRUS?.

Hacia finales de los años 60, Douglas McIlory, Victor Vysottsky y Robert Morris idearon un
juego al que llamaron Core War (Guerra en lo Central, aludiendo a la memoria de la
computadora), que se convirtió en el pasatiempo de algunos de los programadores de los
laboratorios Bell de AT&T.

El juego consistía en que dos jugadores escribieran cada uno un programa llamado
organismo, cuyo hábitat fuera la memoria de la computadora. A partir de una señal, cada
programa intentaba forzar al otro a efectuar una instrucción inválida, ganando el primero que
lo consiguiera.

Al término del juego, se borraba de la memoria todo rastro de la batalla, ya que estas
actividades eran severamente sancionadas por los jefes por ser un gran riesgo dejar un
organismo suelto que pudiera acabar con las aplicaciones del día siguiente. De esta manera
surgieron los programas destinados a dañar en la escena de la computación.

Uno de los primeros registros que se tienen de una infección data del año 1987, cuando en la
Universidad estadounidense de Delaware notaron que tenían un virus porque comenzaron a
ver "© Brain" como etiqueta de los disquetes.

La causa de ello era Brain Computer Services, una casa de computación paquistaní que, desde
1986, vendía copias ilegales de software comercial infectadas para, según los responsables de
la firma, dar una lección a los piratas.

Ellos habían notado que el sector de booteo de un disquete contenía código ejecutable, y que
dicho código se ejecutaba cada vez que la máquina se inicializaba desde un disquete.

Lograron reemplazar ese código por su propio programa, residente, y que este instalara una
réplica de sí mismo en cada disquete que fuera utilizado de ahí en más.

También en 1986, un programador llamado Ralf Burger se dio cuenta de que un archivo podía
ser creado para copiarse a sí mismo, adosando una copia de él a otros archivos. Escribió una
demostración de este efecto a la que llamó VIRDEM, que podía infectar cualquier archivo con
extensión .COM.

Esto atrajo tanto interés que se le pidió que escribiera un libro, pero, puesto que él desconocía
lo que estaba ocurriendo en Paquistán, no mencionó a los virus de sector de arranque (boot
sector). Para ese entonces, ya se había empezado a diseminar el virus Vienna. Actualmente,
los virus son producidos en cantidades extraordinarias por muchisima gente alrededor del
planeta. Algunos de ellos dicen hacerlo por divertimento, otros quizás para probar sus
habilidades. De cualquier manera, hasta se ha llegado a notar un cierto grado de
competitividad entre los autores de estos programas. Con relación a la motivación de los
autores de virus para llevar a cabo su obra, existe en Internet un documento escrito por un
escritor freelance Markus Salo, en el cual, entre otros, se exponen los siguientes conceptos:
 Algunos de los programadores de virus, especialmente los mejores, sostienen que su
interés por el tema es puramente científico, que desean averiguar todo lo que se pueda
sobre virus y sus usos.
 A diferencia de las compañías de software, que son organizaciones relativamente
aisladas unas de otras (todas tienen secretos que no querrían que sus competidores
averiguaran) y cuentan entre sus filas con mayoría de estudiantes graduados, las
agrupaciones de programadores de virus están abiertas a cualquiera que se interese en
ellas, ofrecen consejos, camaradería y pocas limitaciones. Además, son libres de seguir
cualquier objetivo que les parezca, sin temer por la pérdida de respaldo económico.
 El hecho de escribir programas vírales da al programador cierta fuerza coercitiva, lo
pone fuera de las reglas convencionales de comportamiento. Este factor es uno de los
más importantes, pues el sentimiento de pertenencia es algo necesario para todo ser
humano, y es probado que dicho sentimiento pareciera verse reforzado en situaciones
marginales.
 Por otro lado, ciertos programadores parecen intentar legalizar sus actos poniendo sus
creaciones al alcance de mucha gente, (vía Internet, BBS especializadas, etc.) haciendo
la salvedad de que el material es peligroso, por lo cual el usuario debería tomar las
precauciones del caso.
 Existen programadores, de los cuales, generalmente, provienen los virus más
destructivos, que alegan que sus programas son creados para hacer notoria la falta de
protección de que sufren la mayoría de los usuarios de computadoras.
 La gran mayoría de estos individuos son del mismo tipo de gente que es reclutada por
los grupos terroristas: hombres, adolescentes, inteligentes.

1. ¿QUÉ ES UN VIRUS?.

Es un pequeño programa escrito intencionalmente para instalarse en la computadora de un


usuario sin el conocimiento o el permiso de este. Decimos que es un programa parásito
porque el programa ataca a los archivos o sector es de "booteo" y se replica a sí mismo para
continuar su esparcimiento.

Algunos se limitan solamente a replicarse, mientras que otros pueden producir serios daños
que pueden afectar a los sistemas. Se ha llegado a un punto tal, que un nuevo virus llamado
W95/CIH-10xx. o también como [Link] (puede aparecer el 26 de cada mes,
especialmente 26 de Junio y 26 de Abril) ataca al BIOS de la PC huésped y cambiar su
configuración de tal forma que se requiere cambiarlo. Nunca se puede asumir que un virus es
inofensivo y dejarlo "flotando" en el sistema.

Existen ciertas analogías entre los virus biológicos y los informáticos: mientras los primeros
son agentes externos que invaden células para alterar su información genética y reproducirse,
los segundos son programas-rutinas, en un sentido más estricto, capaces de infectar archivos
de computadoras, reproduciéndose una y otra vez cuando se accede a dichos archivos,
dañando la información existente en la memoria o alguno de los dispositivos de
almacenamiento del ordenador.

Tienen diferentes finalidades: Algunos sólo 'infectan', otros alteran datos, otros los eliminan,
algunos sólo muestran mensajes. Pero el fin último de todos ellos es el mismo:
PROPAGARSE.
Es importante destacar que el potencial de daño de un virus informático no depende de su
complejidad sino del entorno donde actúa.

La definición más simple y completa que hay de los virus corresponde al modelo D. A. S., y
se fundamenta en tres características, que se refuerzan y dependen mutuamente. Según ella,
un virus es un programa que cumple las siguientes pautas:

 Es dañino
 Es autorreproductor
 Es subrepticio

Asimismo, se pueden distinguir tres módulos principales de un virus informático:

 Módulo de Reproducción
 Módulo de Ataque
 Módulo de Defensa

El módulo de reproducción se encarga de manejar las rutinas de "parasitación" de entidades


ejecutables (o archivos de datos, en el caso de los virus macro) a fin de que el virus pueda
ejecutarse subrepticiamente. Pudiendo, de esta manera, tomar control del sistema e infectar
otras entidades permitiendo se traslade de una computadora a otra a través de algunos de estos
archivos.

El módulo de ataque es optativo. En caso de estar presente es el encargado de manejar las


rutinas de daño adicional del virus. Por ejemplo, el conocido virus Michelangelo, además de
producir los daños que se detallarán más adelante, tiene un módulo de ataque que se activa
cuando el reloj de la computadora indica 6 de Marzo. En estas condiciones la rutina actúa
sobre la información del disco rígido volviéndola inutilizable.

El módulo de defensa tiene, obviamente, la misión de proteger al virus y, como el de ataque,


puede estar o no presente en la estructura. Sus rutinas apuntan a evitar todo aquello que
provoque la remoción del virus y retardar, en todo lo posible, su detección.

1. TIPOS DE VIRUS.

Los virus se clasifican por el modo en que actúan infectando la computadora:

 Programa: Infectan archivos ejecutables tales como .com / .exe / .ovl / .drv / .sys / .bin
 Boot: Infectan los sectores Boot Record, Master Boot, FAT y la Tabla de Partición.
 Múltiples: Infectan programas y sectores de "booteo".
 Bios: Atacan al Bios para desde allí reescribir los discos duros.
 Hoax: Se distribuyen por e-mail y la única forma de eliminarlos es el uso del sentido
común.

Al respecto, se trata de virus que no existe y que se utiliza para aterrar a los novatos
especialmente en la Internet a pesar que los rumores lo muestran como algo muy serio y a
veces la información es tomada por la prensa especializada.

Por lo general, como ya se expresó, la difusión se hace por cadenas de e-mail con terribles e
inopinadas advertencias. En realidad el único virus es el mensaje. A continuación se dan una
serie de supuestos "virus", por lo que es aconsejable ignorar los mensajes que aparecen y no
ayudar a replicarlos continuando con la cadena:

 3b Trojan (alias PKZIP Virus).  Very Cool


 AOL4Free Virus Hoax.  Win a Holiday
 Baby New Year Virus Hoax.  World Domination Hoax
 [Link]  Yellow Teletubbies
 [Link]  A.I.D.S. hoax email virus
 Budweiser Hoax  AltaVista virus scare
 Death69  AOL riot hoax email
 Deeyenda  ASP virus hoax
 E-Flu  Back Orifice Trojan horse
 FatCat Virus Hoax  Bill Gates hoax
 Free Money  Bloat, see MPEG virus hoax
 Get More Money Hoax  Budweiser frogs screen-saver scare
 Ghost  Good Times hoax email virus
 Good Times  Irina hoax virus
 Hacky Birthday Virus Hoax  Java virus scare
 Hairy Palms Virus Hoax  Join the Crew hoax email virus
 Irina  'Millennium' virus misunderstanding
 Join the Crew 
 Londhouse Virus Hoax  MPEG virus hoax
 Microsoft Virus Hoax  'My clock says 2097/2098' virus
 Millenium Time Bomb misunderstanding
 Penpal Greetings  New virus debug device hoax email
 Red Alert virus with attached Trojan horse
 Returned or Unable to Deliver  Open: Very Cool, see A.I.D.S. hoax
 Teletubbies email virus
 Time Bomb

1. CARACTERÍSTICAS DE LOS VIRUS.

El virus es un pequeño software (cuanto más pequeño más fácil de esparcir y más difícil de
detectar), que permanece inactivo hasta que un hecho externo hace que el programa sea
ejecutado o el sector de "booteo" sea leído. De esa forma el programa del virus es activado y
se carga en la memoria de la computadora, desde donde puede esperar un evento que dispare
su sistema de destrucción o se replique a sí mismo.

Los más comunes son los residentes en la memoria que pueden replicarse fácilmente en los
programas del sector de "booteo", menos comunes son los no-residentes que no permanecen
en la memoria después que el programa-huesped es cerrado.

Los virus pueden llegar a "camuflarse" y esconderse para evitar la detección y reparación.
Como lo hacen:

a. El virus re-orienta la lectura del disco para evitar ser detectado;


b. Los datos sobre el tamaño del directorio infectado son modificados en la FAT, para evitar
que se descubran bytes extra que aporta el virus;
c. encriptamiento: el virus se encripta en símbolos sin sentido para no ser detectado, pero
para destruir o replicarse DEBE desencriptarse siendo entonces detectable;
d. polimorfismo: mutan cambiando segmentos del código para parecer distintos en cada
"nueva generación", lo que los hace muy difíciles de detectar y destruir;
e. Gatillables: se relaciona con un evento que puede ser el cambio de fecha, una determinada
combinación de tecleo; un macro o la apertura de un programa asociado al virus
(Troyanos).

2. DAÑOS DE LOS VIRUS.

Definiremos daño como acción una indeseada, y los clasificaremos según la cantidad de
tiempo necesaria para reparar dichos daños. Existen seis categorías de daños hechos por los
virus, de acuerdo a la gravedad.

a. DAÑOS MENORES.

Un buen ejemplo de este tipo de daño es el JERUSALEM. Este virus borra, los viernes 13,
todos los programas que uno trate de usar después de que el virus haya infectado la memoria
residente. En el peor de los casos, tendremos que reinstalar los programas perdidos..

b. DAÑOS MODERADOS.

Cuando un virus formatea el disco rígido, mezcla los componentes de la FAT (File Allocation
Table, Tabla de Ubicación de Archivos), o sobreescribe el disco rígido.

c. DAÑOS MAYORES.

Algunos virus, dada su lenta velocidad de infección y su alta capacidad de pasar


desapercibidos, pueden lograr que ni aún restaurando un backup volvamos al último estado de
los datos. Un ejemplo de esto es el virus DARK AVENGER, que infecta archivos y acumula
la cantidad de infecciones que realizó. Cuando este contador llega a 16, elige un sector del
disco al azar y en él escribe la frase: "Eddie lives … somewhere in time" (Eddie vive … en
algún lugar del tiempo).

d. DAÑOS SEVEROS.

Los daños severos son hechos cuando un virus realiza cambios mínimos, graduales y
progresivos. No sabemos cuándo los datos son correctos o han cambiado, pues no hay pistas
obvias como en el caso del DARK AVENGER (es decir, no podemos buscar la frase Eddie
lives ...).

f. DAÑOS ILIMITADOS.

Algunos programas como CHEEBA, [Link] y GP1 entre otros, obtienen la


clave del administrador del sistema y la pasan a un tercero. Cabe aclarar que estos no son
virus sino troyanos. En el caso de CHEEBA, crea un nuevo usuario con los privilegios
máximos, fijando el nombre del usuario y la clave. El daño es entonces realizado por la
tercera persona, quien ingresará al sistema y haría lo que quisiera.

.
8. VIRUS INFORMÁTICOS ARGENTINOS.

Al igual que todos los países informatizados, la Argentina cuenta con una producción local de
virus informáticos.

Si bien estos no son de los más complejos (en su mayoría, buenas copias y variaciones de
virus conocidos) representan un problema, ya que muchos de ellos no están incluidos en las
bases de datos de los programas antivirus.

Veamos algunos ejemplos:

 PING PONG:

Este virus fue el primero en hacer explosión en Argentina. Fue descubierto en marzo de 1988
y en poco tiempo estuvo en nuestro país, en donde se convirtió rápidamente en epidemia.

La falta de conocimiento sobre los virus ayudó a que se diseminara ampliamente y fuera
incontrolable en un principio. En centros universitarios como la Facultad de Ciencias Exactas
de la UBA o la Facultad de Informática de la Universidad de Morón era difícil encontrar un
disco sin infectar.

Ese mismo desconocimiento llevó a que pasara bastante tiempo hasta que se empezaran a
tomar medidas. Sólo después de algunos meses, en revistas especializadas en informática,
empezaron a publicarse formas de desinfectar los discos, y como consecuencia de ello se
aplicaron políticas de seguridad en las universidades.

Lo positivo de esto fue que la gente comenzara a conocer el D.O.S. más profundamente, por
ejemplo el boot sector: qué es y para qué sirve, ya que las máquinas eran utilizadas pero pocos
sabían cómo funcionaban realmente.

Como tenía un síntoma muy evidente (una pelotita que rebotaba), se pensó que todos los virus
debían ser visibles, pero los siguientes fueron más subrepticios, y se limitaban a reproducirse
o destruir sin avisar al usuario.

El Ping Pong original no podía infectar discos rígidos, pero la versión que se popularizó en el
país fue la B, que sí podía hacerlo. Se creó una variante en Argentina, que probablemente fue
la primera variante de virus originada en el país, el Ping Pong C, que no mostraba la pelotita
en la pantalla. Este virus está extinto en este momento ya que sólo podía funcionar en
máquinas con procesador 8088 ó 8086, porque ejecutaba una instrucción no documentada en
estos e incorrecta en los modelos siguientes.

 AVISPA:

Escrito en Noviembre de 1993 que en muy poco tiempo se convirtió en epidemia. Infecta
archivos .EXE

Al ejecutarse, si no se encontraba ya residente en memoria, intenta infectar los archivos


XCOPY, MEM, SETVER y EMM386 para maximizar sus posibilidades de reproducción, ya
que estos archivos son de los más frecuentemente utilizados.
Este virus está encriptado siempre con una clave distinta (polimórfico), para dificultar su
detección por medio de antivirus heurísticos.

 CAMOUFLAGE II:

Aparecido por primera vez en 1993. Infecta el boot sector de los disquetes ubicados en la
unidad A y la tabla de partición de los discos rígidos. Es bastante simple y fácil de ser
detectado.

 LEPROSO:

Creado en 1993, en Rosario, provincia de Santa Fé. Se activa el día 12 de Enero (cumpleaños
del autor), y hace aparecer un mensaje que dice: "Felicitaciones, su máquina está infectada
por el virus leproso creado por J. P.. Hoy es mi cumpleaños y lo voy a festejar formateando
su rígido. Bye... (Vamos Newell's que con Diego somos campeones)."

 PINDONGA:

Virus polimórfico residente en memoria que se activa los días 25 de febrero, 21 de marzo, 27
de agosto y 16 de septiembre, cuando ataca, borra toda la información contenida en el disco
rígido.

 TEDY:

Es el primer virus argentino interactivo. Apareció hace poco tiempo. Infecta archivos con
extensión .EXE, y se caracteriza por hacer una serie de preguntas al usuario. Con este virus,
los archivos infectados aumentan su tamaño en 4310 bytes.

¿QUÉ ES UN ANTIVIRUS?.

No para toda enfermedad existe cura, como tampoco existe una forma de erradicar todos y
cada uno de los virus existentes.

Es importante aclarar que todo antivirus es un programa y que, como todo programa, sólo
funcionará correctamente si es adecuado y está bien configuradoAdemás, un antivirus es una
herramienta para el usuario y no sólo no será eficaz para el 100% de los casos, sino que
nunca será una protección total ni definitiva.

La función de un programa antivirus es detectar, de alguna manera, la presencia o el accionar


de un virus informático en una computadora. Este es el aspecto más importante de un
antivirus, independientemente de las prestaciones adicionales que pueda ofrecer, puesto que el
hecho de detectar la posible presencia de un virus informático, detener el trabajo y tomar las
medidas necesarias, es suficiente para acotar un buen porcentaje de los daños posibles.
Adicionalmente, un antivirus puede dar la opción de erradicar un virus informático de una
entidad infectada.

El modelo más primario de las funciones de un programa antivirus es la detección de su


presencia y, en lo posible, su identificación. La primera técnica que se popularizó para la
detección de virus informáticos, y que todavía se sigue utilizando (aunque cada vez con
menos eficiencia), es la técnica de scanning. Esta técnica consiste en revisar el código de
todos los archivos contenidos en la unidad de almacenamiento -fundamentalmente los
archivos ejecutables- en busca de pequeñas porciones de código que puedan pertenecer a un
virus informático. Este procedimiento, denominado escaneo, se realiza a partir de una base de
datos que contiene trozos de código representativos de cada virus conocido, agregando el
empleo de determinados algoritmos que agilizan los procesos de búsqueda.

La técnica de scanning fue bastante eficaz en los primeros tiempos de los virus informáticos,
cuando había pocos y su producción era pequeña. Este relativamente pequeño volumen de
virus informáticos permitía que los desarrolladores de antivirus escaneadores tuvieran tiempo
de analizar el virus, extraer el pequeño trozo de código que lo iba a identificar y agregarlo a la
base de datos del programa para lanzar una nueva versión. Sin embargo, la obsolescencia de
este mecanismo de identificación como una solución antivirus completa se encontró en su
mismo modelo.

El primer punto grave de este sistema radica en que siempre brinda una solución a posteriori:
es necesario que un virus informático alcance un grado de dispersión considerable para que
sea enviado (por usuarios capacitados, especialistas o distribuidores del producto) a los
desarrolladores de antivirus. Estos lo analizarán, extraerán el trozo de código que lo
identificará, y lo incluirán en la próxima versión de su programa antivirus. Este proceso puede
demorar meses a partir del momento en que el virus comienza a tener una dispersión
considerable, lapso en el cual puede causar graves daños sin que pueda ser identificado.

Además, este modelo consiste en una sucesión infinita de soluciones parciales y


momentáneas (cuya sumatoria jamás constituirá una solución definitiva), que deben
actualizarse periódicamente debido a la aparición de nuevos virus.

En síntesis, la técnica de scanning es altamente ineficiente, pero se sigue utilizando debido a


que permite identificar rápidamente la presencia de los virus más conocidos y, como son estos
los de mayor dispersión, permite una importante gama de posibilidades.

Un ejemplo típico de un antivirus de esta clase es el Viruscan de McAfee, que se verá más
adelante.

En virtud del pronto agotamiento técnico de la técnica de scanning, los desarrolladores de


programas antivirus han dotado a sus creaciones de métodos para búsquedas de virus
informáticos (y de sus actividades), que no identifican específicamente al virus sino a algunas
de sus características generales y comportamientos universalizados.

Este tipo de método rastrea rutinas de alteración de información que no puedan ser
controladas por el usuario, modificación de sectores críticos de las unidades de
almacenamiento (master boot record, boot sector, FAT, entre otras), etc.

Un ejemplo de este tipo de métodos es el que utiliza algoritmos heurísticos.

De hecho, esta naturaleza de procedimientos busca, de manera bastante eficiente, códigos de


instrucciones potencialmente pertenecientes a un virus informático. Resulta eficaz para la
detección de virus conocidos y es una de las soluciones utilizadas por los antivirus para la
detección de nuevos virus. El inconveniente que presenta este tipo de algoritmo radica en que
puede llegar a sospecharse de muchisimas cosas que no son virus. Esto hace necesario que
el usuario que lo utiliza conozca un poco acerca de la estructura del sistema operativo, a fin de
poseer herramientas que le faciliten una discriminación de cualquier falsa alarma generada
por un método heurístico.

Algunos de los antivirus de esta clase son F-Prot, Norton Anti Virus y Dr. Solomon's Toolkit.

Ahora bien, otra forma de detectar la presencia de un virus informático en un sistema consiste
en monitorear las actividades de la PC señalando si algún proceso intenta modificar los
sectores críticos de los dispositivos de almacenamiento o los archivos ejecutables. Los
programas que realizan esta tarea se denominan chequeadores de integridad.

Sobre la base de estas consideraciones, podemos consignar que un buen sistema antivirus
debe estar compuesto por un programa detector de virus -que siempre esté residente en
memoria- y un programa que verifique la integridad de los sectores críticos del disco
rígido y sus archivos ejecutables. Existen productos antivirus que cubren los dos aspectos, o
bien pueden combinarse productos diferentes configurados de forma que no se produzcan
conflictos entre ellos.

MODELO ANTIVIRUS:

La estructura de un programa antivirus, está compuesta por dos módulos principales: el


primero denominado de control y el segundo denominado de respuesta. A su vez, cada uno
de ellos se divide en varias partes:

1. Módulo de control: posee la técnica verificación de integridad que posibilita el registro


de cambios en los archivos ejecutables y las zonas críticas de un disco rígido. Se trata, en
definitiva, de una herramienta preventiva para mantener y controlar los componentes de
información de un disco rígido que no son modificados a menos que el usuario lo requiera.

Otra opción dentro de este módulo es la identificación de virus, Asimismo, la identificación


de código dañino es otra de las herramientas de detección que, en este caso, busca
instrucciones peligrosas incluidas en programas, para la integridad de la información del disco
rígido.

Esto implica descompilar (o desensamblar) en forma automática los archivos almacenados y


ubicar sentencias o grupos de instrucciones peligrosas.

Finalmente, el módulo de control también posee una administración de recursos para


efectuar un monitoreo de las rutinas a través de las cuales se accede al hardware de la
computadora (acceso a disco, etc.). De esta manera puede limitarse la acción de un programa
restringiéndole el uso de estos recursos, como por ejemplo impedir el acceso a la escritura de
zonas críticas del disco o evitar que se ejecuten funciones de formato del mismo.

2. Módulo de respuesta: la función alarma se encuentra incluida en todos los programas


antivirus y consiste en detener la acción del sistema ante la sospecha de la presencia de un
virus informático, e informar la situación a través de un aviso en pantalla.

Algunos programas antivirus ofrecen, una vez detectado un virus informático, la posibilidad
de erradicarlo. Por consiguiente, la función reparar se utiliza como una solución
momentánea para mantener la operatividad del sistema hasta que pueda instrumentarse una
solución adecuada. Por otra parte, existen dos técnicas para evitar el contagio de entidades
ejecutables: evitar que se contagie todo el programa o prevenir que la infección se expanda
más allá de un ámbito fijo

DETECTAR UN VIRUS:

Aunque la primera opción es la más adecuada, plantea grandes problemas de implementación.

Algunos de los antivirus que soportan esta cualidad de agregar strings son Viruscan, F-Prot y
Thunderbyte.

La NCSA (National Computer Security Association, Asociación Nacional de Seguridad de


Computadoras) es la encargada de certificar productor antivirus.

Para obtener dicha certificación los productos deben pasar una serie de rigurosas pruebas
diseñadas para asegurar la adecuada protección del usuario.

Antiguamente el esquema de certificación requería que se detectara (incluyendo el número de


versión) el 90 % de la librería de virus del NCSA, y fue diseñado para asegurar óptimas
capacidades de detección. Pero esta metodología no era completamente eficiente.

Actualmente, el esquema de certificación enfoca la amenaza a las computadoras


empresariales. Para ser certificado, el producto debe pasar las siguientes pruebas:

a. Debe detectar el 100% de los virus encontrados comúnmente. La lista de virus comunes es
actualizada periódicamente, a medida que nuevos virus son descubiertos.
b. Deben detectar, como mínimo, el 90% de la librería de virus del NCSA (más de 6.000
virus)

Estas pruebas son realizadas con el producto ejecutándose con su configuración "por defecto".

Una vez que un producto ha sido certificado, la NCSA tratará de recertificar el producto un
mínimo de cuatro veces. Cada intento es realizado sin previo aviso al desarrollador del
programa. Esta es una buena manera de asegurar que el producto satisface el criterio de
certificación.

Si un producto no pasa la primera o segunda prueba, su distribuidor tendrá siete días para
proveer de la corrección. Si este límite de tiempo es excedido, el producto será eliminado de
la lista de productos certificados.

Una vez que se ha retirado la certificación a un producto la única forma de recuperarla es que
el distribuidor envíe una nueva versión completa y certificable (no se aceptará sólo una
reparación de la falla.

Acerca de la lista de virus de la NCSA, aclaremos que ningún desarrollador de antivirus


puede obtener una copia. Cuando un antivirus falla en la detección de algún virus incluido en
la lista, una cadena identificatoria del virus le es enviada al productor del antivirus para su
inclusión en futuras versiones.
En el caso de los virus polimórficos, se incluyen múltiples copias del virus para asegurar que
el producto testeado lo detecta perfectamente. Para pasar esta prueba el antivirus debe detectar
cada mutación del virus.

La A. V. P. D. (Antivirus Product Developers, Desarrolladores de Productos Antivirus) es una


asociación formada por las principales empresas informáticas del sector, entre las que se
cuentan:

 Cheyenne Software
 I. B. M.
 Intel
 McAfee Associates
 ON Tecnology
 Stiller Research Inc.
 S&S International
 Symantec Corp.
 ThunderByte

11. ALGUNOS ANTIVIRUS.

 DR. SOLOMON'S ANTIVIRUS TOOLKIT.

Certificado por la NCSA. Detecta más de 6.500 virus gracias a su propio lenguaje de
detección llamado VirTran, con una velocidad de detección entre 3 y 5 veces mayor que los
antivirus tradicionales.

Uno de los últimos desarrollos de S&S es la tecnología G. D. E. (Generic Decription Engine,


Motor de Desencriptación Genérica) que permite detectar virus polimórficos sin importar el
algoritmo de encriptación utilizado.

Permite detectar modificaciones producidas tanto en archivos como en la tabla de partición


del disco rígido. Para ello utiliza Checksumms Criptográficos lo cual, sumado a una clave
personal de cada usuario, hace casi imposible que el virus pueda descubrir la clave de
encriptación.

Elimina virus en archivos en forma sencilla y efectiva con pocas falsas alarmas, y en sectores
de buteo y tablas de partición la protección es genérica, es decir, independiente del virus
encontrado.

Otras características que presenta este antivirus, son:

 Ocupa 9K de memoria extendida o expandida.


 Documentación amplia y detallada en español y una enciclopedia sobre los virus más
importantes.
 Actualizaciones mensuales o trimestrales de software y manuales.
 Trabaja como residente bajo Windows.
 A. H. A. (Advanced Heuristic Analysis, Análisis Heurístico Avanzado).
 NORTON ANTIVIRUS.

Certificado por la NCSA. Posee una protección automática en segundo plano. Detiene
prácticamente todos los virus conocidos y desconocidos (a través de una tecnología propia
denominada NOVI, que implica control de las actividades típicas de un virus, protegiendo la
integridad del sistema), antes de que causen algún daño o pérdida de información, con una
amplia línea de defensa, que combina búsqueda, detección de virus e inoculación (se
denomina 'inoculación' al método por el cual este antivirus toma las características principales
de los sectores de booteo y archivos para luego chequear su integridad. Cada vez que se
detecta un cambio en dichas áreas, NAV avisa al usuario y provee las opciones de Reparar -
Volver a usar la imagen guardada - Continuar - No realiza cambios - Inocular - Actualizar la
imagen.

Utiliza diagnósticos propios para prevenir infecciones de sus propios archivos y de archivos
comprimidos.

El escaneo puede ser lanzado manualmente o automáticamente a través de la planificación de


fecha y hora. También permite reparar los archivos infectados por virus desconocidos. Incluye
información sobre muchos de los virus que detecta y permite establecer una contraseña para
aumentar así la seguridad.

La lista de virus conocidos puede ser actualizada periódicamente (sin cargo) a través de
servicios en línea como Internet, América On Line, Compuserve, The Microsoft Network o el
BBS propio de Symantec, entre otros.

 VIRUSSCAN.

Este antivirus de McAfee Associates es uno de los más famosos. Trabaja por el sistema de
scanning descripto anteriormente, y es el mejor en su estilo.

Para escanear, hace uso de dos técnicas propias: CMS (Code Matrix Scanning, Escaneo de
Matriz de Código) y CTS (Code Trace Scanning, Escaneo de Seguimiento de Código).

Una de las principales ventajas de este antivirus es que la actualización de los archivos de
bases de datos de strings es muy fácil de realizar, lo cual, sumado a su condición de programa
shareware, lo pone al alcance de cualquier usuario. Es bastante flexible en cuanto a la
configuración de cómo detectar, reportar y eliminar virus.

4. Tipos de Virus de Computación por sus acciones y/o modo de activación

Bombas
Se denominan así a los virus que ejecutan su acción dañina como si fuesen una bomba. Esto
significa que se activan segundos después de verse el sistema infectado o después de un cierto
tiempo (bombas de tiempo) o al comprobarse cierto tipo de condición lógica del equipo.
(bombas lógicas). Ejemplos de bombas de tiempo son los virus que se activan en una
determinada fecha u hora determinada. Ejemplos de bombas lógicas son los virus que se
activan cuando al disco rígido solo le queda el 10% sin uso, etc.

Camaleones
Son una variedad de virus similares a los caballos de Troya que actúan como otros programas
parecidos, en los que el usuario confía, mientras que en realidad están haciendo algún tipo de
daño. Cuando están correctamente programados, los camaleones pueden realizar todas las
funciones de los programas legítimos a los que sustituyen (actúan como programas de
demostración de productos, los cuales son simulaciones de programas reales).
Un software camaleón podría, por ejemplo, emular un programa de acceso a sistemas remotos
realizando todas las acciones que ellos realizan, pero como tarea adicional (y oculta a los
usuarios) va almacenando en algún archivo los diferentes logins y password para que
posteriormente puedan ser recuperados y utilizados ilegalmente por el creador del virus
camaleón.

Reproductores
Los reproductores (también conocidos como conejos-rabbits) se reproducen en forma
constante una vez que son ejecutados hasta agotar totalmente (con su descendencia) el espacio
de disco o memoria del sistema.

La única función de este tipo de virus es crear clones y lanzarlos a ejecutar para que ellos
hagan lo mismo. El propósito es agotar los recursos del sistema, especialmente en un entorno
multiusuario interconectado, hasta el punto que el sistema principal no puede continuar con el
procesamiento normal.

Gusanos (Worms)
Los gusanos son programas que constantemente viajan a través de un sistema informático
interconectado, de PC a PC, sin dañar necesariamente el hardware o el software de los
sistemas que visitan.

La función principal es viajar en secreto a través de equipos anfitriones recopilando cierto tipo
de información programada (tal como los archivos de passwords) para enviarla a un equipo
determinado al cual el creador del virus tiene acceso.

Backdoors
Son también conocidos como herramientas de administración remotas ocultas. Son programas
que permiten controlar remotamente la PC infectada. Generalmente son distribuidos como
troyanos.

Cuando un virus de estos es ejecutado, se instala dentro del sistema operativo, al cual
monitorea sin ningún tipo de mensaje o consulta al usuario. Incluso no se lo vé en la lista de
programas activos. Los Backdoors permiten al autor tomar total control de la PC infectada y
de esta forma enviar, recibir archivos, borrar o modificarlos, mostrarle mensajes al usuario,
etc....

Ejemplos de virus y sus acciones


 Happy99: Programa enviado por mail, abre una ventana con fuegos artificiales. Manipula
la conectividad con Internet.
 Melissa: Macrovirus de Word. Se envía a sí mismo por mail. Daña todos los archivos .doc
 Chernobyl ([Link]): Borra el primer Mb del HD, donde se encuentra la FAT. Obliga a
formatear el HD. Además intenta rescribir el BIOS de la PC lo que obliga a cambiar el
mother. Se activa el 26 de abril.
 Michelangelo: Virus de boot sector. Se activa el 6 de marzo. Sobre escribe la FAT,
dejando el disco inutilizable.
 [Link]: Macrovirus que infecta la plantilla [Link]. Hace aparecer
mensajes en la pantalla y mal funcionamiento del Word.
 FormatC: Troyano que infecta el Word, al abrir un archivo infectado formatea el disco
rígido.
 Back Orifice2000 (BO2K): Funcionalmente es un virus y sirve para el robo de
información. Permite tomar control remoto de la PC o del servidor infectados, con la
posibilidad de robar información y alterar datos.
 VBS/Bubbleboy: Troyano que se ejecuta sin necesidad de abrir un attachment, y se activa
inmediatamente después de que el usuario abra el mail. No genera problemas serios.

Nadie que usa computadoras es inmune a los virus de computación.


Un programa antivirus por muy bueno que sea se vuelve obsoleto muy rápidamente ante los
nuevos virus que aparecen día a día.

Virus más
extendidos:
últimas Porcentaje
24h

Número de correos analizados: 3894862

LENGUAJE DE PROGRAMACION

.
Ada Augusta Byron, también llamada Lady Lovelace, fue uno
de los personajes más interesantes de la historia de la
computación. Nació en Londres, el 10 de Diciembre de 1815,
siendo hija del ilustre poeta inglés Lord Byron. Apenas 5 semanas después de nacida su
madre Lady Byron, se separó de su esposo y obtuvo la custodia de su hija, encargándose de
su crianza y educación por cuanto a ella le aterrorizaba la idea de que su hija acabase
convirtiéndose en un poeta bohemio, como su padre.

Lady Lovelace tuvo vocaciones de analista y metafísica y a los 17 años influenciada por
Mary Somerville realizó sus estudios de matemáticas. Fue en una cena que escuchó y se
interesó en las ideas de Charles Babbage acerca de una nueva máquina de calcular. Ella
intuyó que un proyecto de esa envergadura podría convertirse en realidad y fue una de las
pocas personas que creyó en la universabilidad de las ideas, preconizada por Charles
Babbage. Por esa razón decidió colaborar con él. En 1843, a los 28 años, Lovelace tuvo
perfeccionados los planes de Babbage para la Máquina Analítica. Teniendo la buena fortuna
de estar casada con un hombre que la alentó en su progreso intelectual, así como también la
ayudó para cuidar a sus tres niños, Lovelace canalizó mucho de su talento y energía
continuando con la causa de Babbage, y con el tiempo, corrigiendo algunos de los serios
errores del trabajo original.

Una de sus geniales ideas fue la de que un cálculo grande podía contener muchas
repeticiones en la misma secuencia de instrucciones, y ella notó que usando un salto
condicional sería posible preparar solamente un juego de tarjetas para las instrucciones
recurrentes. Así describió lo que nosotros ahora llamamos un "bucle" y una "subrutina".

Sus ideas fueron extendidas un siglo más tarde por el matemático británico Alan M. Turing
en 1937 y por John von Neumann en 1946, ambos fundamentales en el desarrollo de la
moderna computadora electrónica digital. La mujer que poseyó tal percepción encontró un
final dolorosísimo a los 36 años, enferma de cáncer, dejando a Babbage solo para continuar
sus trabajos.

En la década de los 80 el Departamento de Defensa de los Estados Unidos de América


desarrolló un lenguaje de programación en honor a la condesa, al cual nombró ADA.

Lenguajes de programación de PLC's

Al inicio, la utilización de un lenguaje de programación con una estructura o representación


similar a la de los arreglos de relevadores en escalera (diagramas de escalera), fue una
buena elección ya que facilitaba el entrenamiento de los operadores que ya conocían estos
diagramas. Así, el primer lenguaje de programación para PLC's, considerado de bajo nivel,
fue el "Lenguaje de Escalera". Aún hoy se utiliza este lenguaje, así como el "lenguaje
Booleano" que se basa en los mismos principios del algebra booleana. Este último utiliza
nemónicos (AND, OR, NOT, NAND, etc.) enteramente equivalentes al Lenguaje de Escalera.
Cuando se comprendió el gran potencial de los PLC's , como poderosas computadoras que
son y se dio la evolución de capacidades que ahora tienen, que no poseían los antiguos
circuitos, aparecieron los lenguajes de alto nivel como el "lenguaje de escalera" pero, con la
adición de funciones especiales complejas, que en el diagrama de escalera aparecen en el
lugar de las salidas". Luego, se desarrollaron los Lenguajes Especiales de Computadora,
también de alto nivel, que son muy similares a los lenguajes de programación de
computadoras como el Basic y el C, para hacer cada vez más amigable la programación.
Los lenguajes de lógica de relevadores en escalera (LLRE) que hemos mencionado, utilizan
un marco de programación que obliga al programador a centrarse en cada salida
individualmente, en lugar de hacerlo en el flujo y operación del proceso o sistema que se
controla. La programación con un LLRE requiere el uso de soluciones de casos especiales,
eliminando la posibilidad de una programación limpia, directa y elegante. Adicionalmente,
muy a menudo los programas resultantes son difíciles de modificar por no tener una
estructura modular. Para mejorar la programación en estos aspectos, se han propuesto
metodologías de programación basadas en reglas como la lógica difusa y la lógica de estado.
Un lenguaje de programación permite al usuario crear programas que serán entendidos
por el ordenador (directa o indirectamente) con el objetivo de realizar alguna tarea.

A grandes rasgos podemos clasificar los lenguajes de programación en tres categorías:


máquina, bajo nivel (ensamblador) y alto nivel.

Lenguaje máquina

Los lenguajes máquina son aquellos cuyas instrucciones son directamente entendibles por el
ordenador sin la necesidad de traducción alguna. Sus instrucciones no son más que ristras de
ceros y unos (bits). Estas especifican la operación a realizar, los registros del procesador y
celdas de memoria implicados, etc.

Obviamente, este tipo de lenguajes serán fáciles de comprender para un ordenador pero muy
difíciles para el hombre. Esta razón nos lleva a buscar otro lenguaje para comunicarnos con
el ordenador.

Lenguajes de bajo nivel (ensamblador)

La progración en lenguaje máquina es difícil, por ello se necesitan lenguajes que permitan
simplificar este proceso. Los lenguajes de bajo nivel han sido diseñados para este fin.

Estos lengujes son generalmente dependientes de la máquina, es decir, dependen de un


conjunto de instrucciones específicas del ordenador. Un ejemplo de este tipo de lengujes es el
ensamblador. En él, las instrucciones se escriben en códigos alfabéticos conocidos como
mnemotécnicos (generalmente, abreviaturas de palabras inglesas).

Las palabras mnemotécnicas son mucho más fáciles de recordar que las secuencias de ceros
y unos. Una instrucción típica de ensamblador puede ser:

ADD x,y,z
Esta instrucción significaría que se deben sumar los números almacenados en las direcciones
de memoria x e y, y almacenar el resultado en la dirección z. Pero aún así, a medida que los
programas crezcan en tamaño y complejidad, el ensamblador sigue sin ser una buena
solución. Pasemos entonces a los lenguajes de alto nivel.

Lenguajes de alto nivel

Los lenguajes de alto nivel son aquellos en los que las instrucciones o sentencias son escritas
con palabras similares a las de los lenguajes humanos (en la mayoría de los casos, el Inglés).
Esto facilita la escritura y comprensión del código al programador.

Existen muchos lenguajes de alto nivel, por citar algunos:

 ADA
 BASIC
 COBOL
 FORTRAN
 C
 Modula-2
 Pascal
 Java

A continuación se presenta una instrucción de Pascal:

if (x=y) and (z=w) then write('Esto es una prueba');


Si se tienen unos conocimientos mínimos del Inglés, esta línea tiene una comprensión muy
fácil: "Si el contenido de x es igual al contenido de y, y el contenido de z es igual al
contenido de w, entonces escribe Esto es una prueba".

Los programas escritos en lenguaje de alto nivel no son entendibles directamente por la
máquina. Necesitan ser traducidos a instrucciones en lenguaje máquina que entiendan los
ordenadores. Los programas que realizan esta traducción se llaman compiladores, y los
programas escritos en lenguajes de alto nivel se denominan programas fuente.

Programas fuente y objeto

Un programa puede ser definido como un conjunto de instrucciones que pueden someterse
como unidad a un ordenador y utilizarse para dirigir el comportamiento de éste.

Aquí no vamos a profundizar en todos los tipos de programas, ni a realizar una clasificación
exhaustiva. Solamente mencionaremos los dos tipos que nos interesan en programación: los
programas fuente y los objeto.

Un programa fuente es aquel que nos permite escribir un algoritmo mediante un lenguaje
formal. Por eso al código desarrollado al programar se le llama código fuente.

Un programa objeto es el resultado de traducir un programa fuente para obtener un lenguaje


comprensible por la máquina

Traductores de programas

Los traductores son un tipo de programas cuya función es convertir el código de un lenguaje
en otro. Por ejemplo un compilador, que traduce código fuente en código objeto. Existen
distintos tipos de traductores, entre ellos destacan:

 Ensambladores
 Preprocesadores
 Intérpretes
 Compiladores

Ensambladores
Es un tipo de traductor que convierte programas escritos en lenguaje ensamblador en
programas escritos en código máquina.
Preprocesadores
Traduce un lenguaje de alto nivel a otro, cuando el primero no puede pasar a lenguaje
máquina directamente.

Intérpretes
Se trata de traductores-ejecutores ya que con cada instrucción realizan un proceso triple de
lectura-traducción-ejecución. Son relativamente lentos, pero muy buenos para la depuración
de programas.

Compiladores
Es el tipo de traductor más conocido. Se trata de un programa que traduce código fuente
escrito en un lenguaje de alto nivel (Pascal) en código máquina (no siempre). Son más
rápidos que los intérpretes pero presentan mayor dificultad a la hora de detectar errores.

Algunos Lenguajes de Programación

PHP

Oficialmente, PHP es un preprocesador de hipertextos. En el nivel más básico PHP es


equiparable a un CGI cualquiera. La mayor fuerza de PHP es que está preparado para
soportar accesos a muchos tipos de bases de datos

PHP fue creado por Rasmus Lerdorf a finales de 1994, aunque no hubo una versión utilizable
por otros usuarios hasta principios de 1995. Esta primera versión se llamó, Personal Home
Page Tools.

Al principio, PHP sólo estaba compuesto por algunas macros que facilitaban el trabajo a la
hora de crear una página Web. Hacia mediados de 1995 se creo el analizador sintáctico y se
llamó PHP/F1 Versión 2, y sólo reconocía el texto HTML y algunas directivas de mSQL. A
partir de este momento, la contribución al código fue pública.

El crecimiento de PHP desde entonces ha sido exponencial, y han surgido versiones nuevas
como la actual, PHP3 y la incipiente PHP4.

JAVA

Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar
un nuevo lenguaje de programación destinado a electrodomésticos. La reducida potencia de
cálculo y memoria de los electrodomésticos llevó a desarrollar un lenguaje sencillo capaz de
generar código de tamaño muy reducido.

Debido a la existencia de distintos tipos de CPUs y a los continuos cambios, era importante
conseguir una herramienta independiente del tipo de CPU utilizada. Desarrollaron un código
“neutro” que no dependía del tipo de electrodoméstico, el cual se ejecutaba sobre una
“máquina hipotética o virtual” denominada Java Virtual Machine (JVM). Era la JVM
quien interpretaba el código neutro convirtiéndolo a código particular de la CPU utilizada.
El principal objetivo del lenguaje Java es llegar a ser el “nexo universal” que conecte a los
usuarios con la información, esté ésta situada en el ordenador local, en un servidor de Web,
en una base de datos o en cualquier otro lugar.

WML

WML son las siglas de Wireless Markup Language y es el lenguaje que se utiliza para
realizar páginas para cualquier elemento que utilice la tecnología WAP, como algunos
teléfonos móviles

XML

Lenguaje Extensible de "Etiquetado", eXtensible Markup Language, La versión 1.0 del


lenguaje XML es una recomendación del W3C desde Febrero de 1998, pero se ha trabajado
en ella desde un par de años antes. Está basado en el anterior estándar SGML (Standard
Gene ralized Markup Language, ISO 8879), que data de 1986, pero que empezó a gestarse
desde principios de los años 70, y a su vez basado en el GML creado por IBM en 1969. De
SGML se derivó XML como subconjunto simplificado, eliminando las partes más engorrosas
y menos útiles. Como su padre, y este es un aspecto importante sobre el que se incidirá
después, XML es un metalenguaje: es un lenguaje para definir lenguajes. Los elementos que
lo componen pueden dar información sobre lo que contienen, no necesariamente sobre su
estructura física o presentación, como ocurre en HTML

Lenguaje C

En la actualidad, el C++ es un lenguaje versátil, potente y general. Su éxito entre los


programadores profesionales le ha llevado a ocupar el primer puesto como herramienta de
desarrollo de aplicaciones. El C++ mantiene las ventajas del C en cuanto a riqueza de
operadores y expresiones, flexibilidad, concisión y eficiencia. Además, ha eliminado algunas
de las dificultades y limitaciones del C original. La evolución de C++ ha continuado con la
aparición de Java, un lenguaje creado simplificando algunas cosas de C++ y añadiendo
otras, que se utiliza para realizar aplicaciones en Internet.

También podría gustarte