miércoles, 30 de mayo de 2012

Otros


FILESYSTEM
Los sistemas de archivos o ficheros, estructuran la información guardada en una unidad de almacenamiento, que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos manejan su propio sistema de archivos.
Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud (También denominados clústers). El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados. En la práctica, un sistema de archivos también puede ser utilizado para acceder a datos generados dinámicamente, como los recibidos a través de una conexión de red (sin la intervención de un dispositivo de almacenamiento).
 En algunos sistemas de archivos los nombres de archivos son estructurados, con sintaxis especiales para extensiones de archivos y números de versión. En otros, los nombres de archivos son simplemente cadenas de texto y los metadatos de cada archivo son alojados separadamente.

QUEMAR UN CD
Quemar un CD es una expresión usada como sinónimo de grabar información dentro del mismo. Se dice que se “quema” un disco compacto porque el proceso de grabación utiliza un láser que calienta la superficie del disco en el proceso, “quemando” la información en este.

Grabado por acción de láser
Otro modo de grabación es por la acción de un haz láser (CD-R y CD-RW, también llamado CD-E).
Para esto la grabadora crea unos pits y unos lands cambiando la reflectividad de la superficie del CD. Los pits son zonas donde el láser quema la superficie con mayor potencia, creando ahí una zona de baja reflectividad. Los lands, son justamente lo contrario, son zonas que mantienen su alta reflectividad inicial, justamente porque la potencia del láser se reduce.
Según el lector detecte una secuencia de pits o lands, tendremos unos datos u otros. Para formar un pit es necesario quemar la superficie a unos 250º C. En ese momento, el policarbonato que tiene la superficie se expande hasta cubrir el espacio que quede libre, siendo suficientes entre 4 y 11 mW para quemar esta superficie, claro que el área quemada en cada pit es pequeñísima.


Grabado por acción de láser y un campo magnético
El último medio de grabación de un cd es por la acción de un haz láser en conjunción con un campo magnético (discos magneto-ópticos).
Los discos ópticos tienen las siguientes características, confrontadas con los discos magnéticos:
Los discos ópticos, además de ser medios removibles con capacidad para almacenar masivamente datos en pequeños espacios -por lo menos diez veces más que un disco rígido de igual tamaño- son portátiles y seguros en la conservación de los datos (que también permanecen si se corta la energía eléctrica). El hecho de ser portables deviene del hecho de que son removibles de la unidad.

MEMORIAS USB
Las memorias flash basadas en puertas lógicas NAND usan un túnel de inyección para la escritura y para el borrado un túnel de ‘soltado’. Las memorias basadas en NAND tienen, unas diez veces de más resistencia a las operaciones pero sólo permiten acceso secuencial (más orientado a dispositivos de almacenamiento masivo), frente a las memorias flash basadas en NOR que permiten lectura de acceso aleatorio. Sin embargo, han sido las NAND las que han permitido la expansión de este tipo de memoria, ya que el mecanismo de borrado es más sencillo (aunque también se borre por bloques) lo que ha proporcionado una base más rentable para la creación de dispositivos de tipo tarjeta de memoria. Las populares memorias USB o también llamadas Pendrives, utilizan memorias flash de tipo NAND.
La información en las memorias NAND Flash, se almacena en Celdas y cada una de estas celdas tienen un tiempo de vida determinado que se expresa en ciclos de escritura, si bien no son eternas estas celdas, los ciclos de escritura aseguran una vida útil, mas allá de lo que demoremos en actualizar el dispositivo. Es así que dependiendo del tipo de memoria NAND Flash (MLC o SLC) las celdas pueden tener 10.000 o 100.000 ciclos de escritura por sector físico, llegando a ser mas que suficientes 10.000 ciclos para borrar y escribir completamente el contenido de un array de celdas en un chip de memoria Nand Flash, una vez por día durante 27 años.


jueves, 3 de mayo de 2012

Linux vs Minix


LINUS VSTANENBAUM  (LINUX VS MINIX)

El debate Tanenbaum-Torvalds es un debate entre Andrew S. Tanenbaum y Linus Torvalds, con respecto a Linux y la arquitectura del núcleo en general. Tanenbaum comenzó el debate en 1992 argumentando que los micronúcleos son superiores a los núcleos monolíticos y por lo tanto, Linux era, obsoleto. 
Mientras el debate inicialmente empezó relativamente moderado, con las dos partes implicadas haciendo sólo declaraciones banales sobre el diseño del núcleo, se van haciendo progresivamente más detalladas y sofisticadas, con cada ronda de mensajes. Además del diseño del núcleo , el debate se ramificó en varios otros temas, tales como que la arquitectura del microprocesador .Además de Tanenbaum y Torvalds, varias personas se sumaron al debate, incluyendo a Peter MacDonald, uno de los primeros desarrolladores del kernel de Linux y creador de una de las primeras distribuciones, Softlanding Linux System, David S. Miller, uno de los principales desarrolladores del kernel de Linux, y Theodore Ts'o, la primera de América del Norte desarrollador del núcleo Linux.

miércoles, 2 de mayo de 2012

Tablas de memoria



TABLAS DE MEMORIA EN WINDOWS

La estructura de la memoria en Windows es en forma de árbol, en el cual se definen claramente 3 partes:
• Directorio de Páginas (Page Directory): Cada proceso en ejecución, dispone de un solo Directorio de Páginas. Se trata de una tabla con 1024 entradas que almacena los punteros a las Tablas de Página.
• Tabla de Páginas (Page Table): Cada Tabla de Página es a su vez otra tabla que contiene otras 1024 entradas que ya apuntan a las propias páginas.
• Página (Page Frame): Cada Página es un bloque de 4 KB donde se almacenan los datos de cada proceso.Para aumentar la velocidad, el cambio no se realiza byte a byte, sino página a página. cuyo tamaño en Windows es de4 KB. De ahí que toda la memoria virtual y física esté paginada. Memoria Virtual en forma de páginas, y memoria física enforma de marcos de página.
Las páginas pueden estar en uno de los siguientes estados:
Libre:Una página libre no puede ser accedida por ningúnproceso, pero sí puedeser reservada o encargada.
Reservada:Una página reservada es un bloque del espacio de dirección virtual que ha sido fijada para usos futuros. No sepuede acceder a una página reservada, ni tiene datos almacenados. Simplemente bloquea el rango y no permite que sea asignadoporotras funciones de asignación.
Encargada: Aquella que ya ha sido asignada a un espacio físico, ya sea n memoria física o en memoria virtual. No podemos saber donde está almacenada la página, pues de eso se encarga el sistema y puede que esté constantemente cambiándola de posición, pero lo que sí sabemos es que cuando la necesitemos, ahí lo tendremos


TABLA DE MEMORIA EN LINUX

Linux supone que hay tres niveles de tablas de páginas:
• El directorio de tablas de páginas (punteros a tablas intermedias).
• La tabla de páginas intermedia (punteros a tablas de páginas).
• Las tablas de páginas (punteros a páginas).
Cada nivel de tablas contiene el número de marco de página del siguiente nivel en la tabla de páginas. La figura muestra cómo una dirección virtual se divide en un número de campos, donde cada uno de ellos representa un desplazamiento dentro de una tabla de páginas. Para traducir una dirección virtual a una física, el procesador tiene que tomar el contenido de cada uno de estos campos, convertirlos en desplazamientos de la página física que contiene la tabla de páginas y leer el número de marco de página del siguiente nivel de la tabla de páginas. Esta operación se repite tres veces hasta que se encuentra el número de la página física que contiene la dirección virtual. Ahora el último campo de la dirección virtual se utiliza para encontrar el dato dentro de la página.




sábado, 28 de abril de 2012

Caché


Memoria Caché de 1er Nivel: L1

Esta caché está integrada en el núcleo del procesador y trabaja a la misma velocidad del microprocesador.
La cantidad de memoria caché L1 varía de un procesador a otro, estando normalmente entre los 64KB y los 256KB.
Esta memoria suele a su vez estar dividida en dos partes dedicadas, una específicamente para todas las instrucciones y la otra para los datos.



Memoria Caché de 2do Nivel: L2

La caché de nivel 2 permite a tu PowerPC operar más eficientemente cuando está realizando procesos.

La caché de nivel 2 primero verifica si el procesador está ocupado para enviarle instrucciones. Luego, si el microprocesador está ocupado, el ordenador verifica si la caché de nivel 2 tiene instrucciones. Finalmente busca directamente en la memoria por instrucciones. Como la memoria caché es más rápida que la memoria común, el PC puede procesar información a más velocidad.

Como la memoria caché es más rápida que la RAM, puede ser accedida más rápidamente. Además, una caché adicional ofrece mejor rendimiento cuando ejecutes código en tu PowerPC.
De hecho, si estás ejecutando software de 68 KB (no es nativo de PowerPC), encontrarás que la caché de nivel 2 tiene poco efecto en el rendimiento.

Si necesita comprar caché de nivel 2, decidir cuánta y qué tipo de memoria debes adquirir depende del tipo de PowerPC que estés planeando comprar. Algunas máquinas permiten expandir el caché de nivel 2 hasta 4MB. Sin Embargo, encontramos que el rendimiento general no aumenta mucho una vez que alcanzó los 512 KB.


Memoria Caché de 3er Nivel : L3

Nivel 3 o la memoria caché L3 es una memoria especializada que trabaja mano a mano con cache L1 y L2 para mejorar el rendimiento del equipo. L1, L2 y L3 son Unidad central de Procesamiento (CPU) cachés, los versos de otros tipos de cachés del sistema, tales como caché del disco duro. La caché de la CPU responde a las necesidades del microprocesador mediante la previsión de solicitudes de datos a fin de que las instrucciones de procesamiento se proporcionan sin demora. Caché de CPU es más rápida que la memoria RAM, y está diseñado para evitar los cuellos de botella en el rendimiento.

La Caché L3 puede ser mas amplia que L1 y L2, y aunque también puede ser más lenta, aún así es mucho más rápido que ir a buscar desde la RAM.
Suponiendo que las instrucciones necesarias se encuentran en la memoria caché L3, bits de datos podrían ser eliminados de la caché L1 para sostener las nuevas instrucciones en caso de que se vuelvan a necesitar. La caché L3 puede entonces eliminar esa línea de instrucciones, ya que ahora reside en otra caché, o podría aferrarse a una copia, dependiendo del diseño de la CPU.



Tamaño ideal para la cache
El tamaño fijo de cache, el ideal es un 50% de lo que tienes de memoria física




jueves, 22 de marzo de 2012

Daemon & Zombie


PROCESO DEAMON
Un demonio, daemon o daemon (Disk And Execution MONitor)
En un sentido técnico, un proceso de un sistema basado en Unix es un Daemon cuando su proceso padre es terminado y el proceso init es asignado como nuevo padre del proceso Daemon, además, el proceso daemon no posee ninguna interfaz con el usuario, esto quiere decir que el proceso es iniciado y se ejecuta en segundo plato sin ninguna intervención del usuario, además de esto el proceso Daemon no puede ser terminado o se reiniciara automáticamente en caso de ser terminado.
Las tareas que puede desempeñar un demonio pueden ser muy variadas: responder a peticiones de red, control de actividad de hardware y software, configurar hardware (como devfsd en algunos sistemas GNU/Linux, ejecutar tareas periódicas o pre programadas (como el demonio cron), etc.
Un tipo especial de demonio son los Superdemonios o Superdaemons, que son demonios que pueden controlar a otros demonios del sistema. U ejemplo de ello es inetd, que es un demonio que gestiona las conexiones de varios demonios. La ejecución de este tipo de demonios reduce la carga del sistema en comparación con lo que significaría ejecutar cada uno de los demonios que gestionan de forma individual.
En MS-DOS y en Windows los programas llamados Servicios de Windows realizan funciones de Daemons.


PROCESO ZOMBIE
En un sistema operativo basado en Unix un proceso zombie es un proceso que ha completado su ejecución pero aun tiene una entrada en la tabla de procesos, esta entrada se sigue necesitando para que el proceso padre pueda leer el retorno del proceso.
El proceso zombie no se puede terminar con comandos como kill.
Cuando un proceso termina toda la memoria y los recursos asociados con el son liberados pero el proceso continua en la tabla de procesos, el proceso padre puede leer el retorno usando la llamada al sistema "wait", solo así el zombie es removido de la tabla. La llamada wait debe ser ejecutada en un proceso secuencial pero es comúnmente ejecutada en un manejador de eventos por la señal SIGCHLD que recibe el padre cuando el hijo muere.
Para remover Zombies del sistema se puede mandar SIGCHLD al padre manualmente usando el comando kill, si el proceso padre se rehúsa a enterrar al zombie, el siguiente paso es remover el proceso padre y el init se convertirá en el nuevo padre. El proceso init periódicamente ejecuta la llamada al sistema wait para terminar todos los zombies que estén asociados a él.




Integrantes y Papper

Integrantes:
Michael Agudelo Carmona
Felipe Penagos Sierra

Papper: https://docs.google.com/file/d/0B_4EJBcvkjr9ZkJNRHMzOXJTX3F1ZXRTR1hRSS1ndw/edit

Ranking:
www.sistemasoperativos.nixiweb.com
amlondonoz.blogspot.com
sajusa.tk
http://so-unalmed.blogspot.com/
http://os.swebla.com/paginaos/
http://sistemasoperativos2012.blogspot.com/

aacoperativos.wordpress.com
rioth.blogspot.com/p/sistemas-operativos.html

martes, 6 de marzo de 2012

Productor/ Consumidor con Buffer acotado

El problema del productor-consumidor con Buffer acotado es:





- Productor: Produce elementos (A una cierta velocidad) y los deposita en un buffer.
- Consumidor: Proceso que toma elementos del buffer y los consume (A una velocidad probablemente diferente a
la del productor).
-  Buffer: Estructura de datos que sirve para intercambiar información entre los productores y consumidores. Actúa
a modo de depósito para absorber la diferencia de velocidad entre productores y consumidores.
Ejemplo: