lunes, 19 de noviembre de 2012

CONCLUCIONES

Durante la clase se manejo un programa diferente en el cual los alumnos interactuabamos mediante talleres, participaciones, foros y quices. Este modo de trabajo fue importante  ya que se comprobo que los alumnos tienen mas iniciativa y se aprende de una forma mas didactica, con esta forma de trabajo se motiva a los estudiantes y se logra que participen y resuelvan sus dudas sin estar precionado sde ninguna manera.

Durante el curso se asignaron bastantes trabajos, estos de acuerdo a las presentaciones, las lecturas y los ejemplos mostrados por el profesor. A mi modo de ver el curso quedo contento con este metodo de aprendizaje y en ningun momento se presentaron inconvenientes por las actividades asignadas, con esto se puede demostrar que se parendio de una forma agradable y siempre el curso estuvo dispuesto a realizar todo lo que fuera necesario. Adicionalmente para cada corte se asignaba un trabajo final que siempre fue de gran esfuerzo pero fueron actividades a las que se dedico empeño y siempre se realizaron facilmente y con herramientas que muchas personas no conocian y fueron de gran aprendizaje.

De lo anterior podemos decir que los alumnos quedamos contentos y podemos dar certeza que con este nuevo metodo de aprendizaje para nosotros todo es mas facil  didactico, las clases y los trabajos nunca fueron aburridos ni bajo presion como se suele trabajar en la mayoria de clases.
CARGA Y MONTAJE



· CARGA

El cargador sitúa él módulo de carga en la memoria principal, comenzando en la posición X.
En general, se pueden aplicar tres métodos.
Carga absoluta.

Carga reubicable.

Carga dinámica en tiempo de ejecución.



CARGA ABSOLUTA
La carga absoluta necesita al módulo de carga ocupe siempre la misma posición en la memoria principal.
La asignación de direcciones a la memoria de un programa la puede realizar tanto el programador como en compilador o el ensamblador.


DESVENTAJAS: La desventaja de asociar las referencias a las direcciones
Especificas previas a la carga es que él módulo dela carga
resultante solo puede situarse en una región de la M. P.

Los programadores tendrán que conocer la estrategia de
asignación para situar los módulos.

Si se hace alguna modificación en el programa que
Suponga borrados en él módulo, se tendrá que cambiarse
todas las direcciones.
Por lo tanto seria conveniente, que las referencias a memoria se expresen simbólicamente. Todas las referencias a una instrucción o elemento de datos se representan inicialmente por un símbolo. Cuando se prepara él módulo para la entrada a un cargador absoluto, el ensamblador o el compilador convertirán todas estas referencias en direcciones específicas.


CARGAS REUBICABLES
En la carga reubicable el ensamblador o el compilador no genera direcciones reales de Memoria Principal, sino direcciones relativas a algún punto conocido (como el comienzo de un programa). Al comienzo del módulo de carga se le asigna la dirección relativa “ 0 ” y todas las demás dentro se expresan con relación al comienzo del módulo.
Con toda la memoria esta expresada en forma relativa, situar los módulos en la posición deseada se convierte en una tarea sencilla. Si al módulo va a ser cargado comenzando con la posición x, el cargador simplemente generará x a cada referencia a la memoria a medida que carga él módulo en la memoria.


CARGA DINAMICA EN TIEMPO DE EJECUCION


El cálculo de direcciones dinámicas proporciona una completa flexibilidad.
Un programa puede cargarse en cualquier región de la Memoria Principal.
Mas tarde, la ejecución de programa puede interrumpirse y el programa ser descargado de la Memoria Principal para ser posteriormente cargado en una posición diferente.



· MONTAJE

Consiste en tomar como entrada una colección de módulos objetos y generar un módulo de “carga” que:
Contenga módulos de programas y de datos para el cargador.
El montador crea un único módulo de carga que es concatenación de todos módulos objetos. Además cada referencia interna de un módulo debe cambiarse de dirección simbólica a una posición dentro del módulo de carga total.


EDITOR DE MONTAJE

El montaje de direcciones dependerá: Del tipo de módulo de carga
De cuando se produzca el montaje.

Si se desea un módulo de carga reubicable, el montaje se realiza de la siguiente manera:
_ Cada módulo objeto compilado se crea con referencias relativas al comienzo del módulo.
_ Los módulos se unen en u único módulo de carga reubicable, junto con las referencias
relativas al origen del módulo de carga.
Este módulo reubicable puede usarse como una para una carga reubicable o para una dinámica durante la ejecución.
Los montadores que crean módulos de carga reubicable se conocen como editores de montajes.


MONTADOR DINAMICO

Como en la carga es posible aplazar algunas funciones de montajes. Se emplea para resaltar el montaje de algunos módulos externos hasta que él módulo de carga se haya creado.
Así, él módulo de carga contiene referencias no resueltas que pueden resolverse tanto a la carga como en la ejecución:
“MONTAJE DINAMICO EN TIEMPO DE CARGA”: se da en las siguientes etapas:
_ El módulo de carga se trae a la Memoria Principal.
_ Cualquier referencia a un módulo externo hace que el cargador lo busque, lo cargue y
modifique las referencias a direcciones.

Existen ventajas: que podría llamarse carga estática:
Resulta fácil actualizar versiones del módulo externo. En el estático cualquier cambio en el soporte requerirá volver a montar él módulo de aplicación por completo.

EJEMPLO:
En los compiladores personales (PC) el software comercial se entrega en forma de módulo de carga y no las versiones fuentes y objetos.

Tener el código de destino en un archivo de montaje dinámico prepara el terreno para compartir automáticamente código.
El Sistema Operativo puede darse cuenta de que más de una aplicación esta empleando el mismo código de destino.
Permite usarse para cargar una única copia del código en ves de tener que cargar una copia para cada aplicación.

Resulta fácil ampliar la funcionalidad de un S. O. muy empleado.

Un productor puede proponer una nueva función útil para varias aplicaciones y empaquetarla como un módulo de montaje dinámico.

“MONTAJE DINAMICO EN TIEMPO DE EJECUCIÓN”: parte del montaje se pospone hasta el momento de la ejecución, las referencias externas permanecen en el programa cargado cuando se realiza una llamada a un módulo ausente el Sistema Operativo localiza, carga y lo monta en él módulo llamador.

La estructura del módulo es estática y permanece sin cambios durante la ejecución del proceso y de una ejecución a la siguiente.
Por el contrario en algunos casos no es posible determinar antes que módulos objetos harán falta. La naturaleza de la transacción dictamina que módulos de programas se necesitan y estos se cargan de la forma apropiada y se montan con el programa principal.
La ventaja de emplear un montador dinámico es que no hace falta reservar memoria para las unidades de programa a menos que se hagan referencias a los mismos. Esta capacidad se emplea como soporte para los sistemas de segmentación.


esta informaciòn fue tomada de http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/MonogSO/GESTME02_archivos/tem3.htm



domingo, 18 de noviembre de 2012

MEMORIA VIRTUAL


Es un segmento del disco duro que tiene un tamaño que el usuario puede cambiar pero por defecto tiene el doble de tamaño de la memoria física. Se trabaja desde DMA y se trabaja como memoria principal pero al dejar de funcionar el disco se pierde todo lo que se encuentra en memoria virtual.


CONJUNTO RESIDENTE
Es el resultado final después de haber montado un archivo en memoria y se convierte en proceso.

ESTRUCTURAS DE HARDWARE Y DE CONTROL
  1. FALLO DE PAGINA: Error que presenta el sistema al no encontrar la página referenciada en la memoria principal, esto hace que se presente una interrupción la cual bloque el proceso.
  2. FUNCION DE INTERCAMBIO: Se utiliza cuando hay fallo de pagina.
A.    Buscar página candidata.
B.    Ubicar en registros intermedios la página candidata
C.   Subir la página referenciada a la memoria principal en el marco de la página candidata
D.   Mover a la memoria virtual la página candidata
  1. HIPERPAGINACION: Se presenta en el momento en que se realiza el intercambio debido a un fallo de página. La hiperpaginación multiplica los procesos de intercambio que sean necesarios para solucionar el fallo de página. 
  2. PRINCIPIO DE CERCANIA: Realiza el intercambio para varias páginas pero cercanas a la que vaya a la que vaya a hacer el intercambio.
      PAGINACION MEMORIA VIRTUAL
      
  •       Cada proceso tiene su propia tabla de página.
  •       Cada entrada de la tabla de páginas contiene el número de marco de la página correspondiente en memoria virtual
  •      Se necesita un bit para indicar si la página correspondiente está presente en la memoria virtual o no lo está.

  • BIT DE MODIFICACION

    1 = Memoria principal.
    0 = Memoria virtual.


    Dirección virtual

    # PAG
    DESPLAZAMIENTO


    P
    M
    OTROS BITS DE CONTROL
    NUMERO DE MARCO

    BUFFER DE TRADUCCION ADELANTADA O TLB
    Es una solución en hardware para hiperpaginación.

    PAGINACION Y SEGMENTACION COMBINADAS

    #SEGMENTO
    #PAGINA
    DESPLAZAMIENTO



DIRECCIONES


  • Dirección Lógica
  • Dirección Alternativa
  • Dirección física 

Dirección lógica

  • Si una entidad tiene direcciones lógicas es un programa
  • Si contiene direcciones relativas es un proceso
  • Si una entidad tiene direcciones físicas es el programa que se esta ejecutando en memoria


PAGINACIÓN Y SEGMENTACIÓN

PAGINACIÓN

  • La memoria principal se encuentra dividida en trozos iguales de tamaño fijo y cada proceso en pequeños trozos de tamaño fijo.
  • Los trozos del proceso se denominan páginas y los trozos de memoria se denominan marcos.
  • El sistema operativo mantiene una tabla de páginas para cada proceso



El tamaño de la paginación es mucho menor a la dirección fija, esto reduce la fragmentación interna

DESVENTAJAS: Las paginas asignadas a un proceso deben ser ubicadas en forma consecutiva


DIVISIÓN DE LA MEMORIA PRINCIPAL


SEGMENTACIÓN
  • No es necesario que todos los segmentos de todos los programas tengan la misma longitud
  • Existe una longitud máxima de segmento = El máximo de segmento de un proceso es 4
  • Una dirección lógica segmentada consta de dos partes, un numero de segmento y un desplazamiento.
# PAG    
DESPLAZAMIENTO

# SEG
DESPLAZAMIENTO

Como consecuencia del empleo de segmentos de distinto tamaño, la segmentación similar a la partición dinámica.



ALGORITMOS DE UBICACIÓN


1.   Best Fit: (Mejor ajuste)
  •       Necesita hardware: Lista ordenada
  •        Necesita software: Para ordenar
  •        Tiene peor rendimiento

2.   First Fit: (Primer ajuste)

·         Tiene un apuntador que va en forma ascendente buscando un hueco para signar el procesador


3.   Next fit: (Próximo ajuste)
  • Tiene un apuntador que continua buscando hueco a partir de la asignación anterior

4.   Bad Fit: (Peor ajuste)

  • Ordena los huecos y asigna el proceso en el primero que quepa

SISTEMA DE COLEGAS

  • El sistema entero disponible para la asignación se trata como un solo bloque de tamaño 2°
  • Si se hace una solicitud de tamaño S tal que 20-1  < S <= 2°, entonces el bloque entero se asigna:
    • En otro caso el bloque se divide en dos colegas de igual tamaño
    • Este proceso continua hasta que el bloque más pequeño sea mayor o igual que S                    generándose

REUBICACION

Cuando el proceso se cargó en la memoria, se determina la ubicación real (Absoluta) de la memoria.




GESTION DE MEMORIA


Subdivisión de la memoria para hacer sitio a varios procesos, hace falta repartir eficientemente la memoria para introducir tantos procesos como sea posible.

REQUISITOS DE GESTIÓN DE MEMORIA:
  1. REUBICACION: El programador no conoce que otros programas residirán en la memoria en el momento de la ejecución. Mientras que se está ejecutando el programa, puede que se descargue en el disco y que vuelva a la memoria principal pero en una ubicación distinta a la anterior (Reubicación). Se deben traducir las referencias a la memoria encontradas en el código del programador a las direcciones físicas reales.
  2. PROTECCIÓN: El código de un proceso no puede hacer referencia a posiciones de memoria de otros procesos sin permiso. Es imposible comprobar las direcciones absolutas de los programas puesto que se desconoce la ubicación de un programa en la memoria principal. Debe comprobarse durante la ejecución que el sistema operativo no puede anticiparse a todas las referencias a la memoria que hará un proceso
  3. COMPARTIMIENTO: Permite el acceso de varios procesos a la misma zona de la memoria principal. Es mejor permitir a cada proceso que acceda a la misma copia del programa, en lugar de tener cada uno su propia copia aparte.
  4.  ORGANIZACIÓN LÓGICA: La mayoría de programas se organizan en módulos , los módulos pueden escribirse y compilarse independientemente, pueden otorgarse distintos grados de protección a los módulos.
  5. ORGANIZACIÓN FÍSICA: La memoria disponible para un programa y sus datos puede ser insuficiente: *La superposición permite que varios módulos sean asignados a la misma región en memoria. El programador no conoce cuanto espacio abra disponible
      PARTICIONES ESTÁTICAS (físicas)
  •       Cualquier proceso cuyo tamaño sea menor o igual que el tamaño de la partición puede cargarse en cualquier partición libre.
  •          Si todas las particiones están ocupadas, el sistema operativo puede sacar un proceso de  una partición
  •         Un programa puede que no se ajuste a una partición. El programador debe diseñar el programa mediante superposiciones

       El uso de la memoria principal es ineficiente. Cualquier programa sin importar lo pequeño que sea ocupara una participación completa, este fenómeno se denomina fragmentación interna.

  •      FRAGMENTACIÓN INTERNA: Espacio de memoria asignado pero que el proceso no utiliza.
  •      FRAGMENTACIÓN EXTERNA = compactación: Son segmentos de memoria no asignados.




lunes, 8 de octubre de 2012

ENSAYO


La clase de sistemas operativos es una clase que se maneja en una pedagogía b-learning, la cual a modo personal hace una clase muy didáctica y de mayor aprendizaje ya que es muy didáctica y los trabajos que se realizan son diferentes a los normalmente trabajados en cualquier otra clase ya que son de mejor tipo de desarrollo. En las clases de sistemas operativos se manejan herramientas útiles y de mucha tecnología que muchos alumnos antes no las habían utilizado en ninguna otra clase por esta razón se motiva al estudiante a venir a clase y trabajar en grupo para formar un tipo de debate en el cual todos participan y aportan de una manera adecuada con el fin de que todos compartan los conocimientos y aprendan de manera didáctica.

Se maneja un método de calificación proporcionado el cual ayuda a los estudiantes a mantener buenas notas, los trabajos que se realizan son de mucho trabajo y mucho pero esto hace ver a los estudiantes que es una clase muy importante y en la que todos los temas tratados son muy importantes ya que se basan en todo lo que tienen que ver con software y hardware.

Los parciales se diseñan tipo ecades con el fin de que los estudiantes se esfuercen y estudien de manera correcta todos los temas vistos en clase, también se maneja un foro de preguntas y respuestas en el cual los estudiantes exponen sus dudas y los mismos compañeros con los conocimientos adquiridos ayudan a resolverlo, esto hace con los estudiantes se motiven a participar y a preguntar en todos los aspectos respecto a la clase. Tambien se maneja un blog virtual con todo lo visto en las cuatro horas que se trabajan en la semana con el objetivo de que el profesor se de cuenta del trabajo que se esta realizando y del conocimiento que adquiere el alumno ya que este blog es personal y de conocimientos únicos.

En general la clase es muy independiente de las demás ya que se el fin de ella es que los estudiantes participen y se integren de manera didactica para aprender de una mejor forma y enfocados a la nueva tecnología que se maneja en diferentes partes del mundo,  lo mas agradable de la clase es que todos los alumnos podemos adquirir de manera mas facil los conocimientos que trasmite el profesor y podemos acercarnos de manera fisica a las herramientas innovadoras que el docente comparte




REALIMENTACIÓN


Penaliza a los trabajos que han estado ejecutándose durante más tiempo.

No se conoce el tiempo de ejecución restante del proceso.


PRIMERO EL DE MAYOR TASA DE RESPUESTA

Elige el proceso con la tasa más alta.





tiempo consumido esperando al procesador + tiempo de servicio esperado
------------------------------------------------------------------------------------------------------------
tiempo de servicio esperado



MENOR TIEMPO RESTANTE


Es una versión preferente de la política de primero el proceso más corto.

Debe estimar el tiempo de proceso.


PRIMERO EL PROCESO MÁS CORTO


Es una política no preferente.
Se selecciona el proceso con menor tiempo esperado de ejecución.

Un proceso corto saltará a la cabeza de la cola, sobrepasando a trabajos largos.

Se reduce la previsibilidad de los procesos largos.

Si la estimación de tiempo del proceso no es correcta, el sistema puede abandonar el trabajo.

Posibilidad de inanición para los procesos largos.


TURNO ROTATORIO


Utiliza la apropiación dependiente de un reloj. Se determina una cantidad de tiempo que permite a cada proceso utilizar el procesador durante este periodo de tiempo.

Periódicamente, se genera una interrupción de reloj.

Cuando se genera la interrupción, el proceso que está en ejecución se sitúa en la cola de Listos: se selecciona el siguiente trabajo.

Se conoce también como fracciones de tiempo.


FIRST COME - FIRST SERVER


Cada proceso se incorpora a la cola de listos. Cuando el proceso actual cesa su ejecución, se selecciona el proceso más antiguo de la cola.

Puede que un proceso corto tenga que esperar mucho tiempo antes de que pueda ser ejecutado.

Favorece a los procesos con carga de CPU:

  • Los procesos con carga de E/S tienen que esperar a que se completen los procesos con carga de CPU. 


INSTALACIÓN DE LINUX

Instalación de Linux o Ubuntu en máquina virtual.

UBUNTU:

Ubuntu es "la humanidad a los demás un significado antigua palabra africana. También significa "Yo soy lo que soy debido a lo que todos somos". El sistema operativo Ubuntu trae el espíritu de ubuntu al mundo de las computadoras.
¿Dónde empezó todo?
Linux ya se había establecido como una plataforma de servidor de la empresa en 2004. Pero el software libre no era aún parte de la vida cotidiana para la mayoría de usuarios. Es por eso que Mark Shuttleworth reunió a un pequeño equipo de desarrolladores de uno de los proyectos más consolidados Linux - Debian - y se dispuso a crear un fácil de usar escritorio Linux, Ubuntu.
La visión de Ubuntu es parte social y la parte económica: el software libre, disponible de forma gratuita a todo el mundo en las mismas condiciones, y financiado a través de una cartera de servicios prestados por Canonical.




MÁQUINA VIRTUAL:
En informática una máquina virtual es un software que emula a una computadora y puede ejecutar programas como si fuese una computadora real. Este software en un principio fue definido como "un duplicado eficiente y aislado de una máquina física". La acepción del término actualmente incluye a máquinas virtuales que no tienen ninguna equivalencia directa con ningún hardware real.

Una característica esencial de las máquinas virtuales es que los procesos que ejecutan están limitados por los recursos y abstracciones proporcionados por ellas. Estos procesos no pueden escaparse de esta "computadora virtual".
Uno de los usos domésticos más extendidos de las máquinas virtuales es ejecutar sistemas operativos para "probarlos". De esta forma podemos ejecutar un sistema operativo que queramos probar (GNU/Linux, por ejemplo) desde nuestro sistema operativo habitual (Mac OS X por ejemplo) sin necesidad de instalarlo directamente en nuestra computadora y sin miedo a que se desconfigure el sistema operativo primario.



VIRTUALBOX:
Oracle VM VirtualBox es un software de virtualización para arquitecturas x86/amd64, creado originalmente por la empresa alemana innotek GmbH. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.
Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.




TIPOS DE PLANIFICACIÓN

TIPOS DE PLANIFICACIÓN:
La planificación es la gestión del sistema.

1. Planificación de corto plazo.
2. Planificación de mediano plazo.
3. Planificación de largo plazo.
4. Planificación Entrada/Salida.

  • Tiempos de respuesta: el tiempo que se demora el SO en ejecutar un aplicativo o interactivo con el usuario
  • Productividad.
  • Eficiencia de procesador: depende del software y hardware

PLANIFICACIÓN A LARGO PLAZO:
Decisión de añadir un proceso al conjunto de procesos a ejecutar

PLANIFICACIÓN A MEDIANO PLAZO:
Decisión de añadir un proceso al conjunto de procesos que se encuentra parcial o totalmente en la memoria.

PLANIFICACIÓN A CORTO PLAZO:
Decisión sobre que proceso disponible será ejecutado en el procesador.
  • Orientadas al usuario: tiempos de respuesta.
  • Orientadas al sistema: uso efectivo y eficiente del procesador.
  • Relativos al rendimiento del sistema: cuantitativos, pueden evaluarse fácilmente.
  • No relativos al rendimiento del sistema: cualitativos, previsibilidad.

lunes, 3 de septiembre de 2012

LINEA DE TIEMPO

Desarrollo Historico de los Sistemas Operativos




CUARTA SEMANA

MULTIPROGRAMACION.

Es el concepto y proceso mas importante en los sistemas operativos. La multiprogramaciòn y tiempo compartido realizan el mismo proceso pero la diferencia esta en el punto de quien ejecuta las acciones.
Anteriormente en las computadoras se debian ejecutar programas mediante disket, se insertaba un disket a a vezpara ejecutar cada programa.

multiprogramaciòn es la visiòn del usuario, es la posibilidad de que el procesador ejecute varios programas a la vez pero no simultaneamente "EJECUCION EN SEGUNDO PLANO". Los programas  se pueden ejecutar uno a la vez asi el procesador tenga muchos nucleos.


http://1984.lsi.us.es/wiki-ssoo/index.php/Multiprogramaci%C3%B3n
La multiprogramación es una técnica de multiplexación que permite la ejecución simultánea de múltiples procesos en un único procesador. En realidad, esta técnica produce una ilusión de paralelismo, de manera que parece que todos los procesos se están ejecutando a la vez. Sin embargo, hay un único proceso ejecutándose en el procesador a la vez.
Un método para la multiprogramación es el Foreground/Background (o ejecución jerarquizada) (usado en sistemas por tandas, nunca en interactivos), en él hay un proceso prioritario (el foreground (FG)) que se ejecuta con preferencia de todos los demás, cuando este proceso solicita una operación L/E, mientras el s.o. la realiza, el proceso FG estará bloqueado por esta operación y le cede el control al proceso background 1 (BG), y si éste realiza una operación L/E, al BG2,… Cuando uno de los procesos bloqueados se desbloquea, recibe el control del procesador. Para que este método funcione de forma óptima la mejor forma es colocar los procesos ordenados de mayor a menor cantidad de operaciones L/E.
El siguiente diagrama de ejemplo representa el uso del procesador por tres procesos:




JERARQUIA DE MEMORIA.

Memoria interna: Registros cache memoria principal
Memoria externa: Discos Magneticos(CD ROM - CD RW - DVD+RW - DVD-RAM)
Almacenamiento secundario: Cinta magnetica (MO - WORM)


MONOPROGRAMACION

es el proceso mediante el cual solamente puede ejecutar un programa a la vez pero el espacio de la memoria es compartido por multiples tareas, aplicaciones y programas.

Los procesos con carga de usuario no son los manejables por el computador si no depende del usuario (EJ: Falta de papel en la impresora)

TIEMPO COMPARTIDO:

http://es.wikipedia.org/wiki/Tiempo_compartido_%28inform%C3%A1tica%29
tiempo compartido se refiere a compartir un recurso computacional entre muchos usuarios por medio de la multitarea. Su introducción en los años 1960, y su asentamiento como modelo típico de la computación en los años 1970, representa un cambio importante en la historia de la computación. Al permitir que un gran número de usuarios interactuara simultáneamente en una sola computadora, el coste del servicio de computación bajó drásticamente, mientras que al mismo tiempo hacía la experiencia computacional mucho más interactiva.

 


SO: La principal funciòn de los sistemas operativos es distribuir los procesos, a esto se le llama distribuciòn.

OBJETIVOS DE LOS SISTEMAS OPERATIVOS:


Comodidad: Hace que un computador sea mas facil de utilizar


Eficiencia: permite que los recursos de un sistema informatico se aprovechen de una manera mas eficiente.

Capacidad de evoluciòn: Permite el desarrollo efectivo, la verificaciòn y la introducciòn de nuevas funciones en el sistema sin interferir en los servicios.

Los sistemas operativos siempre tienen errores y por eso se actualizan los sistemas y sus versiones.

EJ:  6.2.13

6: Cambios drasticos, incluso de interface.

2: Cambios de interacciòn con el usuario.
13: modificaciones que no ve el usuario pero si  se realizan cambios.


NIVELES DE UN SISTEMA INFIRMATICO.

Usuario final: Programas de aplicaciòn.
Programador: utilidades.
Programador: Sistemas operativos.
Diseñador del sistema operativo: Hardware del computador.

DETECCIONES Y RESPUESTAS A ERRORES:


Errores internos y externos del hardware

 -Error de memoria
 -Fallo del dispositivo

Errores de software

 -Desbordamiento aritmetico
 -Acceso a una posiciòn prohibida de memoria

Incapacidad del sistema operativo para satisfacer la solicitud de una aplicaciòn.


CONTABILIDAD


-Recojer estadisticas

-Supervisar su rendimiento
-Utilidad para anticiparce a las mejoras futuras
-Utilizado para los usuarios de cuotas.

1mb es lo que ocupa un sistema operativo en la memoria.


Tiempo de latencia es el tiempo en que tarda el procesado en finalizar e iniciar un proceso.



 


domingo, 26 de agosto de 2012

TERCERA SEMANA

Sistemas Operativos 


Tipos de Software 


  • Operativo
  • Aplicativo
  • Desarrollo
SOFTWARE DE DESARROLLO
Software de desarrollo se les llama a los que se usan para crear aplicaciones o programas tenemos para Web HTML, Dreamweaver, NVu, Publisher entre otros, para crear programas tenemos muchos dependiendo del lenguaje de programacion en el cuaal vamos a trabajar, para desarrolo de Bases de datos tenemos el SQL Development, Postgres, Mysql entre otros. (http://mx.answers.yahoo.com/question/index?qid=20080922170657AAYArYo)
Se dividen en generaciones
  1. a
  2. a
  3. a
  4. Cobol
  5. C++ - Visual
SOFTWARE DE APLICACIÓN
Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios.(http://es.wikipedia.org/wiki/Software)
Son los que el usuario final. Por ejemplo, word, excel o cualquiera que sea que maneje un usuario, hay aplicativos para todos

SOFTWARE OPERATIVO
Es un programa de sistema es decir me explico es el encargado de arrancar en la computador verifica si los elementos de entrada/salida con los que podemos comunicarnos con el pc estan conectados teclado, mouse,monitor,impresora y poner en memoria los programas que van a utilizar el usuario, todo computador tiene que tener (http://es.answers.yahoo.com/question/index?qid=20090714193527AArTzfL)
Son todos los sistemas operativos de diversas generaciones. Cuando no habían sistemas operativos en la generación 0 y la desarrollaba un operario con máquinas.

Generaciones:

0 - operarios
1 - 
2 - 
3 - Unix
4 - DOS - Algunas distribuciones de mandriva y mandrake (LINUX)
5 - Windows - Linux con versiones gráficas
6- SO móviles- pueden estar en cualquier sitio.
7 - Lo que proximamente viene - CLOUD

El ambiente gráfico es lo actual, el ambiente gráfico es una interfaz que traduce. 
El sistema operativo gestiona el procesador, la memoria y el tiempo ya que ejecuta las instrucciones en menor tiempo que el humano.

Elementos básicos de un computador para trabajar en un SO:
  • Procesador
  • Memoria RAM
  • Corriente (fuente)
El núcleo de SO  en Windows es COMAND.COM

Distribución de la memoria RAM
  • Región reservada del sistema Principal
  • Memoria extendida


CPU

Estructuras de programación (Secuencia, Decisión, Ciclo)

Tecnología Hyper Training:
es una marca registrada de la empresa Intel para denominar su implementación de la tecnología Multithreading Simultáneo también conocido como SMT. Permite a los programas preparados para ejecutar múltiples hilos (multi-threaded) procesarlos en paralelo dentro de un único procesador, incrementando el uso de las unidades de ejecución del procesador. (http://es.wikipedia.org/wiki/HyperThreading)

Dispositivo que mejoro los SO cuando estaban en DOS DMA


Acceso directo a memoria ( DMA ) es una característica de los modernos ordenadores que permite que ciertos subsistemas de hardware en el sistema de ordenador para acceder a la memoria de forma independiente de la unidad central de procesamiento (CPU).

Sin DMA, cuando la CPU está usando entrada programada / salida , normalmente es completamente ocupado para toda la duración de la operación de lectura o escritura, y es por lo tanto disponible para realizar otros trabajos. Con DMA, la CPU inicia la transferencia, hace otras operaciones mientras la transferencia está en progreso, y recibe una interrupción desde el controlador de DMA cuando la operación se realiza. Esta característica es útil en cualquier momento la CPU no puede seguir el ritmo de la tasa de transferencia de datos, o cuando la CPU tiene que realizar un trabajo útil a la espera de un relativamente lento yo / O transferencia de datos. Muchos sistemas hardware utilizan DMA, incluyendo unidades de disco , controladores de tarjetas gráficas , tarjetas de red y tarjetas de sonido . DMA se utiliza también para el comercio intra-chip transferencia de datos en procesadores de varios núcleos . Los equipos que tienen canales DMA pueden transferir datos desde y hacia dispositivos con sobrecarga de la CPU mucho menos que las computadoras sin un canal DMA. Del mismo modo, un elemento de procesamiento en el interior de un procesador de núcleo múltiple pueden transferir datos hacia y desde su memoria local sin ocupar su tiempo de procesador, lo que permite la transferencia de cálculo y los datos para continuar en paralelo.

DMA también se puede utilizar para "memoria a la memoria" copiar o mover de datos dentro de la memoria. DMA puede descargar costosas operaciones de memoria, tales como copias de gran tamaño o de recopilación de dispersión de las operaciones, desde la CPU a un motor dedicado DMA. Un ejemplo de aplicación es la tecnología de aceleración de E / S . (http://en.wikipedia.org/wiki/Direct_memory_access)


Procesadores principales

  1. Procesador principal
  2. Chip set
  3. DMA


Multiprogramación 

Técnica que permite que dos o más procesos ocupen la misma unidad de memoria principal y que sean ejecutados al "mismo tiempo" (pseudo-paralelismo, en una única CPU sólo puede haber un proceso a la vez) en la unidad central de proceso o CPU.

Aporta las siguientes ventajas:
La ya mencionada, varios procesos en ejecución.
Permite el servicio interactivo simultáneo a varios usuarios de manera eficiente.
Aprovecha los tiempos que los procesos pasan esperando a que se completen sus operaciones de E/S
Aumenta el uso de la CPU.
Las direcciones de los procesos son relativas, el programador no se preocupa por saber en dónde estará el proceso dado que el sistema operativo es el que se encarga de convertir la dirección lógica en física. (http://es.wikipedia.org/wiki/Multiprogramaci%C3%B3n)

Tiempo Compartido

Se refiere a compartir un recurso computacional entre muchos usuarios por medio de la multitarea. Su introducción en los años 1960, y su asentamiento como modelo típico de la computación en los años 1970, representa un cambio importante en la historia de la computación. Al permitir que un gran número de usuarios interactuara simultáneamente en una sola computadora (http://es.wikipedia.org/wiki/Tiempo_compartido_(inform%C3%A1tica))

SEGUNDA SEMANA

Línea de tiempo
Desarrollo histórico de sistemas operativos (DHSO)
Dipity, herramienta sugerida para realizar la línea de tiempo e implementarla en nuestro blog.

año 5 A.C. - El Ábaco
Ada Lovelace
Charles Babbage
Blase Pascal (máquina Pascalina)
Computador Univac (1940 - Guerra Mundial)
El transistor - nano transistores
IBM (International Business Machine)
IBM - AS360
Máquinas Mainframes
Motorola - Z80 Microprocesador - 8086 Procesador (80286 hasta 486)
Microsoft
DOS
Unix - Minix
Intel
Pentium - Multimedia
Linux - mandrake y mandriva
Windows
Apple
año 2020 - que elementos podrian tener sistema operativo?



PRIMERA SEMANA

Temas vistos:


  1. Metodología de calificación

Parcial = 40%
Blog = 20%
Aulas virtuales = 20%
Foro P/R = 10%
Autoevaluación = 10%

      2. Trabajo final por corte
1° corte: línea de tiempo SO.
2° corte: presentación SO.
3° corte: video SO.

Dato de contacto: 
  • omendozam@ecci.edu.co
  • oscarwmendoza@gmail.com
Herramientas recomendadas para el primer corte:
  1. Dipity
  2. Blogspot
  3. Dropbox
Metodología de aprendizaje
  • B_Learning 
Bibliografía
  1. Ruiz Muzquiz, Sistemas Operativos
  2. Carreteo , Sistemas Operativos
  3. Stallings William, Sistemas Operativos
  4. Informatica,  fundamentos sistemas operativos linux window
  5. Tanenbaum Andrew, sistemas operativos diseño e implementación