Archive for 18 mayo 2010

CUADRO COMPARATIVO WINDOWS vs. LINUX

Cuadro comparativo ventajas y desventajas

Windows Linux
En lo que se refiere a la administración de memoria, Windows NT 5.0 y sus sucesores utilizan una técnica de paginación segmentada (clustered  paging) y un liberador de memoria que se utiliza una vez por segundo.

Unix, en cambio, utiliza un algoritmo de paginación adaptable LRU (Least Recently Used, menos utilizado frecuentemente) y el liberador de memoria se ejecuta cuando es necesario.

Otras de las formas en que Windows favorece la ejecución de un pequeño conjunto de procesos básicos se evidencia en el hecho de que, internamente, su núcleo no soporta múltiples hilos de ejecución. Esto impide que haya bloqueos entre los hilos y favorece la eficiencia y el control de los  procesos claves.

Similarmente, la administración de memoria multiprocesador y el modulo de comunicación entre procesos están muy integrados con el modulo de control para optimizar el uso del limitado hardware de administración de memoria propio de procesadores con la arquitectura x86.

En contraste, el “approach” de Unix ha sido generalmente a favor de la creación de procesos y el cambio de contextos entre tareas, lo que le hace perder eficiencia a la hora de ejecutar procesos largos. Se ha favorecido la administración de memoria en los sistemas multiprocesador con el costo de una mayor complejidad en el hardware y también la independencia entre los hilos de ejecución, lo que hace más difícil la comunicación entre ellos.
En Windows NT 5.X, por, ejemplo el intervalo fijo de un segundo en el que se ejecuta la rutina de balance de carga del sistema permite que un atacante con acceso  a nivel de aplicaciones pueda inutilizar el kernel a voluntad. En forma similar, la división fija “50:50”de espacio de memoria de 32 bits en NT 5.2 pueden provocar serias incompatibilidades cuando algún futuro Service Pack agregue el soporte para aplicaciones de 64 bits.

Unix, por supuesto tiene sus propios problemas. Pero las comunidades de estos sistemas (sobre todo las de Solaris y BSD) están investigando para solucionarlos y a la vez acercar el núcleo del So mas y mas a las ideas originales de diseño, algo que se comercialmente y prácticamente imposible de hacer para Microsoft.
Windows es mas fácil

Windows en este momento continúa siendo el sistema operativo más comercial lo cual se refleja en la disponibilidad de aplicaciones, facilidad de mantenimiento así como soporte en el desarrollo de nuevas aplicaciones, puntos que pueden ser cruciales en la elección de servidores que corren aplicaciones Web.

Aplicaciones desarrolladas en menor tiempo

Fruto de la inversión realizada por Microsoft y aunado a una comunidad de programadores cada vez más grande se ha logrado facilitar el desarrollo de aplicaciones y sistemas que corran sobre servidores Windows lo cual se ve reflejado en tiempos de desarrollo menores.

La curva de aprendizaje en el sistema Windows es mucho menor.

Es más costoso

Windows es más costoso debido a que es necesaria una frecuente atención y monitoreo contra ataques de virus, hackers y errores de código, instalación y actualización de parches y service packs.

Linux es mas seguro

Ya que la gran mayoría de los ataques de hackers son dirigidos a servidores Windows al igual que los virus los cuales se enfocan principalmente a servidores con éste sistema operativo.

La plataforma Linux es más robusta lo cual hace más difícil que algún intruso pueda violar el sistema de seguridad de Linux.

Es más rápido

Al tener una plataforma más estable, esto favorece el desempeño de aplicaciones de todo tipo tales como: bases de datos, aplicaciones XML, multimedia, etc.

La eficiencia de su código fuente hace que la velocidad de las aplicaciones Linux sean superiores a las que corren sobre Windows lo cual se traduce en velocidad de su página.

Es más económico

Ya que requieren menor mantenimiento. En servidores El software Linux así como también un sin número de aplicaciones son de código abierto (gratuitos).

No requieren supervisión tan estrecha ni pagos de pólizas de mantenimiento.

Estos sistemas son muy similares porque usan hardware similar para cumplir objetivos similares.Específicamente, todos ellos actúan como interfaces entre el hardware y las aplicaciones del usuario. La mayoría de ellos tiene tienen cuatro “capas”: la capa del usuario se comunica con la de los servicios del SO, que utiliza los servicios del kernel (núcleo) para acceder a los controladores del hardware.

El planificador (Schedule) controla los recursos del CPU y el administrador de memoria hace lo mismo con la memoria. El sistema virtual de archivos abstrae el hardware hacia una interfase de administración de archivos común  para todas las aplicaciones. La interfase de red administra los procesos de entrada/salida y el modulo de comunicación entre procesos controla la mensajeria entre las tareas de ejecución.

Mirando como estas ideas están implementadas, nos encontramos con que las filosofías de diseño influyen como los desarrolladores toman cientos de pequeñas decisiones.  Debido a que estas filosofías son diametralmente opuestas, “micro decisiones”  “tienden a ir en direcciones opuestas y esa es lo que diferencia a los sistemas Unix de los fabricados por Microsoft.

HISTORIA Y EVOLUCION,WINDOWS vs. LINUX,

HISTORIA Y EVOLUCION DE EL SISTEMA OPERATIVO O DE SISTEMA

Un sistema operativo es un software de sistema, es decir, un conjunto de programas de computadora destinado a permitir una administración eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la máquina desde los niveles más básicos, permitiendo también la interacción con el usuario.

Es posible encontrar un el tiempo entre la retirada de un trabajo y el montaje del siguiente. Era sumamente complicado, por el hecho de que eran tarjetas perforadas las cuales las tenía que leer el sistema.

En los años 60 se produjeron cambios notorios en varios campos de la informática, con la aparición del circuito integrado la mayoría orientados a seguir incrementando el potencial de los computadores. Para ello se utilizaban técnicas de lo más diversas:

-Multiprogramación:

En un sistema multiprogramado la memoria principal alberga a más de un programa de usuario. La CPU ejecuta instrucciones de un programa, cuando el que se encuentra en ejecución realiza una operación de E/S; en lugar de esperar a que termine la operación de E/S, se pasa a ejecutar otro programa. Si éste realiza, a su vez, otra operación de E/S, se mandan las órdenes oportunas al controlador, y pasa a ejecutarse otro. De esta forma es posible, teniendo almacenado un conjunto adecuado de tareas en cada momento, utilizar de manera óptima los recursos disponibles.

-Tiempo compartido:

Artículo principal: Tiempo compartido; En este punto tenemos un sistema que hace buen uso de la electrónica disponible, pero adolece la falta de interactividad; para conseguirla debe convertirse en un sistema multiusuario, en el cual existen varios usuarios con un terminal en línea, utilizando el modo de operación de tiempo compartido. En estos sistemas los programas de los distintos usuarios residen en memoria. Al realizar una operación de E/S los programas ceden la CPU a otro programa, al igual que en la multiprogramación. Pero, a diferencia de ésta, cuando un programa lleva cierto tiempo ejecutándose el sistema operativo lo detiene para que se ejecute otra aplicación.

-Tiempo real:

Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy breves un gran número de sucesos, en su mayoría externos al ordenador. Si el sistema no respeta las restricciones de tiempo en las que las operaciones deben entregar su resultado se dice que ha fallado. El tiempo de respuesta a su vez debe servir para resolver el problema o hecho planteado. El procesamiento de archivos se hace de una forma continua, pues se procesa el archivo antes de que entre el siguiente, sus primeros usos fueron y siguen siendo en telecomunicaciones.

-Multiprocesador:

Diseño que no se encuentran en ordenadores monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse simultáneamente y, potencialmente, pueden interferirse entre sí. Concretamente, en lo que se refiere a las lecturas y escrituras en memoria. Existen dos arquitecturas que resuelven estos problemas:

La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria. La arquitectura SMP, donde todos los procesadores comparten toda la memoria. Esta última debe lidiar con el problema de la coherencia de caché. Cada microprocesador cuenta con su propia memoria cache local. De manera que cuando un microprocesador escribe en una dirección de memoria, lo hace únicamente sobre su copia local en caché. Si otro microprocesador tiene almacenada la misma dirección de memoria en su caché, resultará que trabaja con una copia obsoleta del dato almacenado; Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseñado para ello. La mayoría de los sistemas operativos actuales poseen esta capacidad.

-Sistemas operativos desarrollados:

Además del Atlas Supervisor y el OS/360, los años 70 marcaron el inicio de UNIX, a mediados de los 60 aparece Multics, sistema operativo multiusuario – multitarea desarrollado por los laboratorios Bell de AT&T y Unix, convirtiéndolo en uno de los pocos SON escritos en un lenguaje de alto nivel. En el campo de la programación lógica se dio a luz la primera implementación de Prolog, y en la revolucionaria orientación a objetos, Smalltalk.

  • Es Importante saber y conocer los Inconvenientes de los sistemas existentes: Se trataba de sistemas grandes, complejos y costosos, pues antes no se había construido nada similar y muchos de los proyectos desarrollados terminaron con costos muy por encima del presupuesto y mucho después de lo que se marcaba como fecha de finalización. Además, aunque formaban una capa entre el hardware y el usuario, éste debía conocer un complejo lenguaje de control para realizar sus trabajos. Otro de los inconvenientes es el gran consumo de recursos que ocasionaban, debido a los grandes espacios de memoria principal y secundaria ocupados, así como el tiempo de procesador consumido. Es por esto que se intentó hacer hincapié en mejorar las técnicas ya existentes de multiprogramación y tiempo compartido.

  • Características de los nuevos sistemas

Para solventar los problemas antes comentados, se realizó un costosísimo trabajo para interponer una amplia capa de software entre el usuario y la máquina, de forma que el primero no tuviese que conocer ningún detalle de la circuitería.

SISTEMAS OPERATIVOS DESARROLLADOS:

  • MULTICS (Multiplexed Information and Computing Service): Originalmente era un proyecto cooperativo liderado por Fernando Corbató del MIT, con General Electric y los laboratorios Bell, que comenzó en los 60, pero los laboratorios Bell abandonaron en 1969 para comenzar a crear el sistema UNIX. Se desarrolló inicialmente para el mainframe GE-645, un sistema de 36 bits; después fue soportado por la serie de máquinas Honeywell 6180.

Fue uno de los primeros. Además, los traducía a instrucciones de       alto nivel destinadas a BDOS.

  • BDOS (Basic Disk Operating System)

Traductor de las instrucciones en llamadas a la BIOS. El hecho de que, años después, IBM eligiera para sus PC a MS-DOS supuso su mayor fracaso, por lo que acabó desapareciendo.

Años 70: Apple OS

Apple DOS se refiere a los sistemas operativos de la serie de la Apple II de microcomputadoras de finales de 1978 hasta principios de 1983. Apple DOS tiene tres versiones principales: DOS 3.1, DOS 3.2, y DOS 3.3.

Apple DOS fue escrito en gran parte por Steve Wozniak, Randy Wigginton, y Paul Laughton. Estaba estrechamente vinculado con el lenguaje de la programación Integer BASIC.

Años 80:

Con la creación de los circuitos LSI -integración a gran escala-, chips que contenían miles de transistores en un centímetro cuadrado de silicio, empezó el auge de los ordenadores personales. En éstos se dejó un poco de lado el rendimiento y se buscó más que el sistema operativo fuera amigable, surgiendo menús, e interfaces gráficas. Esto reducía la rapidez de las aplicaciones, pero se volvían más prácticos y simples para los usuarios. En esta época, siguieron utilizándose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos, de los cuales se podrían destacar: C++ y Eiffel dentro del paradigma de la orientación a objetos, y Haskell y Miranda en el campo de la programación declarativa. Un avance importante que se estableció a mediados de la década de 1980 fue el desarrollo de redes de computadoras personales que corrían sistemas operativos en red y sistemas operativos distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS(Micro Soft Disk Operating System), escrito por Microsoft para IBM PC y otras computadoras que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores personales que hacían uso del Motorola 68000.

Mac OS:

El lanzamiento oficial del ordenador Macintosh en enero de 1984, al precio de US $1,995 (después cambiado a $2,495 dólares)[1]. Incluía su sistema operativo Mac OS cuya características novedosas era una GUI (Graphic User Interface), Multitareas y Mouse. Provocó diferentes reacciones entre los usuarios acostumbrados a la línea de comandos y algunos tachando el uso del Mouse como juguete.

MS-DOS:

En 1981 Microsoft compró un sistema operativo llamado QDOS que, tras realizar unas pocas modificaciones, se convirtió en la primera versión de MS-DOS (MicroSoft Disk Operating System). A partir de aquí se sucedieron una serie de cambios hasta llegar a la versión 7.1, versión 8 en Windows Milenium, a partir de la cual MS-DOS dejó de existir como un componente del Sistema Operativo.

Microsoft Windows:

A mediados de los años 80 se crea este sistema operativo, pero no es hasta la salida de Windows 95 que se le puede considerar un sistema operativo, solo era una interfaz gráfica del MS-DOS. Hoy en día es el sistema operativo más difundido en el ámbito doméstico aunque también hay versiones para servidores como Windows NT. Microsoft ha diseñado también algunas versiones para superordenadores, pero sin mucho éxito. Años después se hizo el Windows 98 que era el más eficaz de esa época Después se crearía el sistema operativo de Windows ME (Windows Millenium Edition) aproximadamente entre el año 1999 y el año 2000. Un año después se crearía el sistema operativo de Windows 2000 en ese mismo año. Después le seguiría el sistema operativo más utilizado en la actualidad, Windows XP y otros sistemas operativos de esta familia especializados en las empresas. Ahora el más reciente es Windows 7 (Windows Seven) que salió al mercado el 22 de octubre del 2009, dejando atrás al Windows Vista, que tuvo innumerables criticas durante el poco tiempo que duró en el mercado. Ahora se están desarrollando actualizaciones de Windows 7.

Años 90: GNU/Linux:

Este sistema es similar a Unix, basado en el estándar POSIX , un sistema que en principio trabajaba en modo comandos. Hoy en día dispone de Ventanas, gracias a un servidor gráfico y a gestores de ventanas como KDE, GNOME entre muchos. Recientemente GNU/Linux dispone de un aplicativo que convierte las ventanas en un entorno 3D como por ejemplo Beryl o Compiz. Lo que permite utilizar linux de una forma visual atractiva.

BUENO AUNQUE LA MAYORÍA DE LA GENTE CREE QUE WINDOWS ES UNO DE LOS MEJOR SISTEMAS OPERATIVOS PUES NO ES AUNQUE NO ES EL MEJOR PERO, PARA MI  EL MEJOR ES LINUX YA QUE ES UN  POCO MAS DESARROLLADO =]


SOFTWARE =]

SOFTWARE: QUE ES?

Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación.

Software se refiere al equipamiento lógico o soporte lógico de una computadora digital, y comprende el conjunto de los componentes lógicos necesarios para hacer posible la realización de tareas específicas; en contraposición a los componentes físicos del sistema, llamados hardware.

Tales componentes lógicos incluyen, entre muchos otros, aplicaciones informáticas como procesador de textos, que permite al usuario realizar todas las tareas concernientes a edición de textos; software de sistema, tal como un sistema operativo, que, básicamente, permite al resto de los programas funcionar adecuadamente, facilitando la interacción con los componentes físicos y el resto de las aplicaciones, también provee una interfaz para el usuario.

LAS CLASES:

– Software de sistema: ayuda a funcionar al hardware y a la computadora. Incluye el sistema operativo, controladores de dispositivos, herramientas de diagnóstico, servidores, sistema de ventanas, utilidades y más. Su propósito es evitar lo más posible los detalles complejos de la computación, especialmente la memoria y el hardware.

– Software de programación: provee herramientas de asistencia al programador. Incluye editores de texto, compiladores, intérprete de instrucciones, enlazadores, debuggers, etc.

– Software de aplicación: permite a los usuarios finales hacer determinadas tareas. Algunos software de aplicación son los navegadores, editores de texto, editores gráficos, antivirus, mensajeros, etc.

CONCEPTOS

HARDWARE: QUE ES?
Es todo aquello lo cual podemos ver y tocar de un PC, ósea el teclado, el mouse, la torre, y el resto de implementos complementarios de una computadora.
Cada uno de estos elementos por separados, no son nada. Pero al unirlos de manera conjunta, para formar una computadora, pasan a ser parte del hardware de nuestro terminal computacional.

Dentro de todo hardware, existe una categorización específica. Categorías que siempre van a ser cinco. La primera de procesamiento, la segunda de entrada, la tercera de salida, la cuarta de almacenamiento y la quinta de comunicación:

En la primera categoría, podemos destacar la unidad central de procesamiento (CPU) cuyo corazón es un microprocesador de silicio, conformado por una unidad aritmético-lógica, la cual realiza todos los cálculos y toma de decisiones. Por otra parte, tenemos la memoria del computador o RAM,

En la segunda categoría, tenemos al teclado, por ejemplo. Medio por el cual, podemos ejecutar todos los programas inherentes a Office, por colocar un caso. El teclado es uno de los medios por los cuales, el ser humano se puede comunicar con la computadora. De es manera, ordenarle que ejecute ciertos programas, bajo la voluntad del primero. Y como no, el segundo dispositivo de entrada, es el mouse. Con el cual se cierra el círculo, de las maneras en que el ser humano, puede ordenar a una computadora que ejecute lo que él desee:

La tercera categoría se refiere al monitor y la impresora. Medios por los cuales, la computadora se entiende con el ser humano:

En la cuarta categoría, podemos señalar al disco duro, parte fundamental de toda memoria de computador. Sin éste, sería imposible trabajar en un computador. Ya que no tendríamos donde guardar tanta información y tenerla al mismo tiempo, en constante disposición. Hay que pensar, que un disco duro, llega a tener 40gigabytes de almacenamiento. Nada se le compara. Por otra parte, tenemos al CD-ROM, donde la estrella es el disco compacto. El cual puede llegar a almacenar hasta 700 megabytes. Por último, los discos flexibles, los cuales, a diferencia de los discos duros, poseen una capacidad muy limitada de almacenamiento. Aparte que hay que tener mucho cuidado con ellos, ya que es muy fácil que se estropeen con el calor, campos magnéticos, etc.

Por último, tenemos a la quinta categoría. Donde se destacan tanto el módem y la tarjeta de red. El primero nos sirve para conectarnos a Internet. Sin éste dispositivo y sus similares, no tendríamos acceso alguno al ciberespacio. Y, con respecto a la tarjeta de red, es ésta la que facilita y permite crear las redes de área local (LAN).

ViDeiTo De LiMPieZa