jueves, 30 de septiembre de 2010

Sistema operativo


Un Sistema operativo (SO) es un software que actúa de interfaz entre los dispositivos de hardware y los programas usados por el usuario para utilizar un computador.1 Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de los recursos y actúa como estación para las aplicaciones que se ejecutan en la máquina

Funciones de un sistema operativo


Las funciones más importantes que debe cumplir un sistema operativo son las siguientes:

  • Aceptar los trabajos y conservarlos hasta su finalización.
  • Detectar errores y actuar de modo apropiado en caso de que se produzcan.
  • Controlar las operaciones de E/S.
  • Controlar las interrupciones.
  • Planificar la ejecución de tareas.
  • Entregar recursos a las tareas.
  • Retirar recursos de las tareas.
  • Proteger la memoria contra el acceso indebido de los programas.
  • Soportar el multiacceso.
  • Proporcionar al usuario un sencillo manejo de todo el sistema.
  • Aprovechar los tiempos muertos del procesador.
  • Compartir los recursos de la máquina entre varios procesos al mismo tiempo.
  • Administrar eficientemente el sistema de cómputo como un todo armónico.
  • Permitir que los diferentes usuarios se comuniquen entre sí, así como protegerlos unos de otros.
  • Permitir a los usuarios almacenar información durante plazos medianos o largos.
  • Dar a los usuarios la facilidad de utilizar de manera sencilla todos los recursos, facilidades y lenguajes de que dispone la computadora.
  • Administrar y organizar los recursos de que dispone una computadora para la mejor utilización de la misma, en beneficio del mayor número posible de usuarios.
  • Controlar el acceso a los recursos de un sistema de computadores

Características básicas del sistema operativo



En computadoras, el sistema operativo comienza a funcionar cuando finaliza el trabajo del BIOS al encenderse o reiniciar el computador

Los sistemas operativos poseen una interfaz que puede ser gráfica (GUI) o de texto (línea de comandos).

Los sistemas operativos forman una plataforma para que otros sistemas o aplicaciones la utilicen. Aquellas aplicaciones que permiten ser ejecutadas en múltiples sistemas operativos son llamadas multiplataforma.

La mayoría de los sistemas operativos actuales son también multiusuario, aunque existen los monousuario (por ejemplo, DOS)

También pueden clasificarse en multitarea o monotarea. Cada programa que se ejecuta en un sistema operativo, ya sea aplicación o servicio de fondo, es llamado proceso.

Los sistemas operativos pueden ser centralizados, si permiten utilizar recursos de una sola computadora, o distribuido si permiten utilizar recursos de más de una computadora al mismo tiempo.

Todos los sistemas operativos deben incluir un soporte para uno o más sistemas de archivos. Por ejemplo, el sistema operativo Windows XP soporta NTFS y FAT32, en tanto Windows Vista sólo soporta NTFS.

También deben tomar medidas de seguridad (Ver Seguridad informática), que antes no existían en los sistemas operativos. El principal peligro proviene de las redes como internet.

Otra característica de los actuales sistemas operativos es que poseen un gran conjunto decontroladores (drivers) para permitir rápida compatibilidad con dispositivos de hardware.

Clasificación de sistemas operativos




Según su interfaz:
* Interfaz de Línea de Comandos: DOS, MS-DOS...
* Interfaz Gráfica del Usuario: Windows, Mac OS X...

Según el número de usuario:
* Sistemas Operativos Monousuario
* Sistemas Operativos Multiusuario

Según el número de tareas:
* Sistemas Operativos de multiprogramación (o Sistemas Operativos de multitarea)
* Sistemas Operativos Monotareas

Según el número de procesadores:
* Uniproceso
* Multiproceso

Según su localización o forma de ofrecer sus Servicios:
* Sistemas operativos integrados (embedded): Windows CE, Pocket PC OS y Palm OS
* Sistemas operativos de red
* Sistemas operativos distribuidos
* Sistemas operativos stand-alone o que trabajan en una única computadora
* Sistemas Operativos por lotes
* Sistemas Operativos de tiempo real
* Sistemas Operativos de tiempo compartido
* Sistemas Operativos paralelos

Núcleo o kernel

Núcleo o kernel (de la raíz germánica Kern) es un software que actúa de sistema operativo. Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware del computador o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso al programador.

Las funciones más importantes del mismo, aunque no las únicas, son:

  • Administración de la memoria para todos los programas y procesos en ejecución.
  • Administración del tiempo de procesador que los programas y procesos en ejecucion utilizan.
  • Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda.

ARQUITECTURA DEL SISTEMA LINUX


Los servidores ejecutan el sistema operativo Linux (la distribución Debían GNU/Linux 2.1 Slink) y diverso software de comunicaciones y aplicación: todo ello software libre a excepción del Gestor de Base de Datos Multibase y el antivirus KAVKEEPER que filtra el correo entrante y los ficheros depositados en los discos de red.

La intercomunicación de los pcs y los servidores se realiza por medio de los siguientes protocolos:

· Autenticación: Las estaciones de trabajo ejecutan sobre el sistema Win NT el programa NISGINA con lo que consultan la base de datos de usuarios y contraseñas del servidor. Además, en cada consulta se actualiza la base de datos de usuarios local a ese PC. De esta manera cada usuario tiene una palabra de acceso unica en cada servidor que le da acceso desde cualquiera de los pc que quiera conectarse. Además la réplica local actualizada permite a un usuario trabajar en su PC con funcionalidad limitada (sin los recursos que residen en el servidor) si el servidor esta averiado.

· Disco remoto: En el servidor se ejecuta SAMBA, emulador de protocolos SMB. Este programa ampliamente difundido permite que los pc vean una partición del disco del servidor usando protocolos nativos SMB de las redes Microsoft. En la arquitectura IntraMAP además se usa el servidor para almacenar la mayoría de los datos personales y de grupo del usuario (Escritorio, Correo electro electrónico, ficheros de trabajo) que de esa manera son salvaguardados de modo diario y da al usuario independencia frente a fallos que le obliguen a cambiar de PC.

· Correo: Los usuarios acceden a su correo electro electrónico con la herramienta NETSCAPE MESSENGER 4.5. El correo entrante se descarga del spool común del servidor y se vuelve a depositar en el servidor, pero en formato PC en la partición personal de disco de red que posee el usuario.

· Navegadores: Los pc ejecutan directamente los navegadores (en este momento NETSCAPE NAVIGATOR 4.5) pero la configuración se guarda en el disco de red del usuario. Algunos parámetros de la configuración (Proxy, máquinas locales, etc.) son actualizados de modo automático para todos los usuarios evitando errores y dificultando manipulaciones intencionadas.

ARQUITECTURA DE WINDOWS


Windows presenta una arquitectura del tipo cliente-servidor. Los programas de aplicación son contemplados por el sistema operativo como si fueran clientes a los que hay que servir, y para lo cual viene equipado con distintas entidades servidoras.
Uno de los objetivos fundamentales de diseño fue el tener un núcleo tan pequeño como fuera posible, en el que estuvieran integrados módulos que dieran respuesta a aquellas llamadas al sistema que necesariamente se tuvieran que ejecutar en modo privilegiado (también llamado modo kernel, modo núcleo y modo supervisor). El resto de las llamadas se expulsarían del núcleo hacia otras entidades que se ejecutarían en modo no privilegiado (modo usuario), y de esta manera el núcleo resultaría una base compacta, robusta y estable. Por eso se dice que Windows NT es un sistema operativo basado en micro-kernel.
Es por ello que en un primer acercamiento a la arquitectura distinguimos un núcleo que se ejecuta en modo privilegiado, y se denomina Executive, y unos módulos que se ejecutan en modo no privilegiado, llamados subsistemas protegidos.
Los programas de usuario (también llamados programas de aplicación) interaccionan con cualquier sistema operativo (SO) a través de un juego de llamadas al sistema, que es particular de cada SO. En el mundo Windows en general, las llamadas al sistema se denominan API (Application Programming Interfaces, interfaces para la programación de aplicaciones). En Windows NT yen Windows 95 se usa una versión del API llamada API Win32. Un programa escrito para Windows NT o Windows 95, y que por consiguiente hace uso del API Win32, se denomina genéricamente "programa Win32", y de hecho esta denominaciones bastante frecuente en artículos y libros al respecto. Desgraciadamente, y conviene dejarlo claro cuanto antes, el término "Win32" tiene tres acepciones (al menos hasta ahora) totalmente distintas. Una es el API, otra es el nombre de uno de los subsistemas protegidos de Windows NT del que hablaremos más adelante, y por último se denomina Win32s a una plataforma desarrollada por Microsoft, similar a Windows 3.1, pero que usa el API Win32 en vez del APIWin16 del Windows 3.1.
Hechas estas aclaraciones, podemos continuar adelante. Algunas de las llamadas al sistema, debido a su naturaleza, son atendidas directamente por el Executive, mientras que otras son desviadas hacia algún subsistema. Esto lo veremos con detalle en breve.
El hecho de disponer de un núcleo rodeado de subsistemas que se ejecutan en modo usuario nos permite además añadir nuevos subsistemas sin producir ningún tipo de confrontación.
En el diseño de Windows han confluido aportaciones de tres modelos: el modelo cliente-servidor, el modelo de objetos.

Comparación entre Linux y Windows

El tamaño resultante del kernel (sin drivers/módulos) también es exageradamente, Linux ocupa 1.3MB frente a los 4.6MB de Windows.
En tema de limitaciones para mucho hardware de golpe también gana el kernel linux por goleada: soporta 1024 CPUs de 32 o 64 bits frente a las 4-32 y 4-64 respectivamente de Windows.
guimos con más datos, a destacar el número de arquitecturas soportadas donde Windows literalmente es machado: Windows soporta x86 (los ordenadores de toda la vida), AMD64 y IA-64. Linux soporta ésas y además otras 14 arquitecturas sin contar consolas.

El tamaño en líneas de código en Windows aumenta en cada versión (actualmente 10 millones de líneas) de forma exagerada aunque Linux en cada versión mete soporte para mucho hardware sin que aumente el número tanto (4 millones actualmente) osea que no sé que pensar. El número anterior es sin drivers, si incluimos los drivers los números se disparan y la diferencia también (Windows 25 millones, Linux 8).

Otro dato interesante es el tiempo de desarrollo, cada “versión menor” (en el caso de linux los 2.6.x) dura 3 meses en linux y 31 en Windows. En las versiones mayores la cosa ya se balancea menos: Linux tarda 35 meses y Windows 38. Aquí se puede observar lo que decía Linus Torvalds
Algunos datos que me llaman la atención son por ejemplo las llamadas del sistema (system calls), mientras Linux tiene 320 Windows tiene más de 1000.

NUCLEO DE WINDOWS 7

El desarrollador ejecutó lo que llamó “Mini Win” formado únicamente por el kernel, sin interface gráfica y sin florituras ni añadidos. Esto es, que ahora mismo ocupa 25MB de espacio y 40MB de RAM, y tardó 20 segundos en arrancar.
En la demostración se ejecutaron tareas muy simples, pero se hizo una declaración de intenciones que no pintan nada bien. La primera es que salta a la Vista (valga la redundancia) que el actual sistema operativo de Microsoft es como una ballena con un problema de sobrepeso mórbido, y que quieren poner a dieta el Windows 7. Esto significa que le van a quitar muchas cosas, y ahora falta saber qué le van a quitar que para todos los usuarios sea prescindible. El segundo punto oscuro es que el próximo sistema operativo va a salir con toda la gama de versiones, con lo que implica el que si quieres más, paga más, con todos los riesgos que eso comporta si lo comparamos con el exitoso Windows Vista.
Dicho esto, empecemos con una introducción al Kernel.
El kernel de Linux (Linux) está escrito en C y es código abierto licenciado bajo licencia GNU/GPL (excepto el planificador de recursos, el cual pertenece a Linus Torvalds y al resto de programadores que se han ocupado de dicha parte), con lo cual tenemos acceso al código para su estudio y/o modificación.
Lo podemos encontrar en diferentes versiones, ahora explicaremos la nomenclatura de éste.
La nomenclatura del Kernel se divide en 3 campos separados por un punto (.), estos son:
Primer campo: Número de la versión, actualmente a fecha de este documento es la 2.
Segundo campo: Numero de "sub-versión", por llamarlo de algun modo, es la version dentro de la propia versión, si este numero es par, la versión sera estable, si por el contrario es impar, ésta sera inestable.
Tercer campo: Nivel de corrección el en que se encuentra

DIFERENCIA ENTRE SOFTWARE GRATUITO Y LIBRE

El software libre suele estar disponible gratuitamente en Internet, o a precio del coste de la distribución a través de otros medios; sin embargo no es obligatorio que sea así y, aunque conserve su carácter de libre, puede ser vendido comercialmente.

Análogamente, el software gratuito (denominado usualmente Freeware) incluye en algunas ocasiones el código fuente; sin embargo, este tipo de software no es libre en el mismo sentido que el software libre, al menos que se garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa.

QUE ES UN SISTEMA OPERATIVO

Sistema operativo
Un Sistema operativo (SO) es un software que actúa de interfaz entre los dispositivos de hardware y los programas usados por el usuario para utilizar un computador.1 Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de los recursos y actúa como estación para las aplicaciones que se ejecutan en la máquina.

lunes, 17 de mayo de 2010

DEFINICION MEMORIA FLASH

La memoria flash se usa para un rápido y fácil almacenamiento de información en dispositivos como las cámaras digitales y las consolas de video. También se usa para ciertos equipos de red como routers, switches, etc. Se usa más como un disco duro que como una memoria RAM.

MEMORIA FLASH

DEFINICION MEMORIA CACHE

Conjunto de datos duplicados de otros originales. La duplicación se basa en que los datos originales son más costosos de acceder en tiempo con respecto a la copia en memoria caché. Cuando se acceder por primera vez a un dato, se copia en el caché, mientras que los sucesivos accesos se harán directamente en caché, aumentando la velocidad.

MEMORIA CACHE

DEFINICION MEMORIA CACHE EXTERNA

L2 es un tipo de memoria caché que incorporan los microprocesadores. También es llamada externa pues está situada entre el procesador y la memoria RAM. Actualmente la memoria caché L2 tienen tamaños entre 256 KB a 8 MB (a mayor cantidad, mejor rendimiento). Es un tanto más lenta que la memoria caché

MEMORIA CACHE EXTERNA

DEFINICION MEMORIA CACHE INTERNA

L1 es un tipo de memoria caché que incorporan los microprocesadores. También es llamada interna pues está situada dentro del procesador y es de acceso ultrarrápido. Tiene muy pocos kilobytes (de 32 o 64 kb) de almacenamiento. La otra memoria del microprocesadores es la memoria caché L2.

MEMORIA CACHE INTERNA

domingo, 16 de mayo de 2010

FUNCIONAMIENTO DE LOS ALTAVOCES

El funcionamiento de los altavoces es muy simple, a los altavoces les llega una señal de una onda eléctrica que éstos transforman en energía mecánica y posteriormente ésta energía mecánica la transforman en energía acústica. Al contrario que los micrófonos. Los altavoces transmiten el sonido mediante ondas sonoras través del aire y éstas ondas sonoras son captadas por nuestros oídos.
Existen varios tipos de altavoces en cuanto a la dirección en la que propagan el sonido:
Woofer, el woofer es un altavoz de mayor tamaño que el tweeter y que está especializado en reproducir bajas y medias frecuencias, o lo que es lo mismo, optimizado para reproducir los graves y los medios.

Éste tipo de altavoces contiene un filtro llamado crossover que cuando entra la señal la divide en dos en función de su frecuencia, enviando cada señal al altavoz correspondiente
Dinámicos: los altavoces dinámicos son los más utilizados. Los que podemos encontrar en cualquier casa, en cualquier ordenador, en cualquier equipo de música etc.
Los que están compuestos de la caja de resonancia un imán, una bobina, y el cono/s del altavoz. En la fotografía de abajo podemos observar un par de altavoces más pequeños llamados satélites de dos vías, para los agudos y los medios que se combinan con el más grande que es un subwoofer exclusivamente para conseguir una gran potencia en los graves.

No es necesario disponer de un woofer por separado pero se consigue una complementación mucho mejor entre medios y agudos teniendo esas cajas de resonancia especializadas en eso y mucha potencia disponible de graves, en consecuencia mejor calidad de sonido.
Electrostáticos: éste tipo de altavoces cambian los imanes (que provocan campos magnéticos), por campos eléctricos. Poseen una excelente respuesta en la reproducción de frecuencias medias y altas y son capaces de generar grandes niveles de presión sin la necesidad de gran cantidad de electricidad, pero hay que tener en cuanta que tienen un gran tamaño y unos precios muy elevados y que necesitan una fuente de tensión, además de que la respuesta de bajos no es buena.
Piezzoeléctricos: éste tipo de altavoces son muy económicos y tienen la ventaja de funcionar con poca potencia eléctrica, responden muy bien a frecuencias altas o agudos, por ejemplo como en sónares o ecógrafos, les cuesta responder en la reproducción de frecuencias bajas, pero no son de demasiada calidad.

COMO FUNCIONAN LOS AUDIFONOS

Primero captan la señal sonora, sea la voz humana, música, etc. Esa señal sonora (acústica) debe ser convertida en señal eléctrica para ser procesada, amplificada y finalmente reconvertida en señal acústica para llevarla al oído.
La señal acústica recibida es entonces amplificada luego de ser transformada en señal eléctrica. Y una vez que esta ampliación se produce es reconvertida en señal acústica a fin de poder ser captada por el oído.