SlideShare una empresa de Scribd logo
1 de 89
Descargar para leer sin conexión
Universidad Gerardo Barrios
Facultad de Ciencia y Tecnología
Técnico en Ingeniería en Sistemas y Redes Informáticas
Campus Usulután
Estudiante:
Nelson Amílcar Márquez Velásquez.
USTS197615.
Asignatura:
Matemática Computacional
Docente:
Lic.: Carla Milagro López Vásquez.
Actividad:
Elaboración de un portafolio
Fecha de Entrega:
Usulután, 06 de Mayo de 2015.
Unidad 1
Introducción a los sistemas operativos.
¿Qué es un sistema operativo?
•Es un conjunto de órdenes y programas que controlan
los procesos básicos de una computadora y permiten el
óptimo funcionamiento de otros programas.
•Es el software básico de una computadora que provee
una interfaz entre el resto de programas, el hardware y
los usuarios.
¿Cómo funciona un sistema operativo?
•Generan una plataforma encima de la cual las
aplicaciones pueden funcionar, por lo tanto, la elección
del sistema operativo determina en grandes medidas las
aplicaciones que puedes usar.
Historia de los sistemas operativos.
•Los sistemas operativos fueron creados para facilitar y
ampliar las posibilidades de uso del hardware, pero
estos a su vez pusieron en evidencia la necesidad de
cambios en los equipos para facilitar su actividad y
brindar mayores posibilidades.
Primera Generación.
•La primera generación (1945-1955) corresponde a los
primeros equipos, construidos con válvulas de vacío.
•En esta etapa no existieron sistemas operativos.
Segunda Generación.
•La segunda generación (1955-1965) corresponde a la
etapa a los equipos que estaban basados en el uso de los
transistores.
•Eran más confiables y más duraderos.
•Desde el punto de vista de los sistemas operativos se
tiene el uso de monitores simples.
•Sistemas de Operación de esta etapa son el FMS
(Fortran Monitor Sistema) y el IBSYS de la 7094.
Transistores.
Tercera Generación.
•La tercera generación (1965-1980) se caracterizó por la
utilización de circuitos integrados. •Los sistemas
operativos vinculados a esta etapa introdujeron los
conceptos de la multiprogramación. •También
corresponde a esta etapa la aparición del tiempo
compartido.
Circuitos integrados.
•En esta etapa no pueden dejar de mencionarse los
sistemas de operación OS/360 y Multicas.
•Aquí surgen las primeras versiones del Unix.
Cuarta Generación.
•La cuarta generación (1980-1990) surge con los
circuitos integrados de alta integración y por ello
aparecen en el mercado las computadoras personales.
•Esta etapa la dominan sistemas operativos MS-DOS y
el Unix.
Quinta Generación.
•El actual desarrollo de los sistemas operativos basados
en GUI (GraphicUser Interface) y la incorporación de
orientación a objetos así como el soporte multimedia, es
suficientemente fuerte para hablar de la quinta
generación de los sistemas operativos.
Sistemas Operativos más comunes.
Familia Windows:
•Windows 95, Windows 98, Windows ME, Windows
NT, Windows 2000, Windows 2000 Server, Windows
XP, Windows Server 2003, Windows CE, Windows
Mobile, Windows Vista, Windows 7, Windows 8,
Windows 8.1, Windows 10.
Sistemas Operativos más
comunes.
Familia Macintosh:
•Mac OS 7, Mac OS 8, Mac OS 9, Mac OS X.
Sistemas Operativos más comunes.
Familia Unix:
•AIX, AMIX, GNU/Linux, GNU/Herd, HP-UX, Iris,
Minx, System V, Solaris, UnixWare.
Clasificación de los Sistemas Operativos.
Multiusuario. Permite que dos o mas
usuarios utilicen sus
programas al mismo tiempo
Multiprocesador. Soporta abrir un programa
más de una vez.
Multitarea. Permite que varios
programas se ejecuten al
mismo tiempo.
Multigrano. Permite que diversas partes
de un solo programa
funcionen al mismo tiempo
Tiempo real. Responde alas entradas
inmediatas.
Tareas.
•Glosario de términos.
•Investigar la Clasificación de los sistemas operativos.
•Elaborar un esquema de llaves que refleje de forma
ordenada la clasificación de los sistemas operativos.
•Análisis de la película: Los piratas de Silicón Valley.
Clasificación de los sistemas operativos.
• Tipos de Sistemas Operativos.
• Primeros Sistemas.
• Sistemas por lotes.
• Multiprogramación.
• Sistemas de tiempo compartido.
• Sistemas de ordenadores personales.
• Sistemas paralelos-multiprocesadores.
• Sistemas distribuidos.
• Sistemas en tiempo real.
• Tendencias actuales y futuras en sistemas
operativos.
PRIMEROS SISTEMAS.
Caracterización. Organización
del trabajo.
Mejoras. Desventajas.
Gran tamaño y
ejecución
desde panel de
control.
Un solo
usuario en
cada
momento.
Operaciones:
establecer
inicio, activar
ejecución,
vigilar
ejecución.
*Físicas:
lectores de
tarjetas,
impresoras y
cintas
magnéticas.
*Reutilización
de código:
Bibliotecas de
funciones
comunes.
*Desarrollo de
ensambladores,
compiladores y
cargadores
para facilitar las
tareas de
programación.
*Drivers o
subrutinas
especiales para
cada
dispositivo de
E/S.
*Máquina
parada
mucho
tiempo en el
modo de
trabajo.
*Error podía
implicar
comenzar
de nuevo.
SISTEMAS POR LOTES.
Organización
del trabajo.
Monitor residente. Tarjetas
de
control.
Organización
de la
memoria
para un
monitor
residente.
*Operador
especialista,
minimiza
tiempos de
preparación.
*Reducción de
tiempos por
agrupamiento
en lotes que se
pueden
ejecutar a la
vez.
*Realiza
automáticamente
las acciones.
*tratamiento de
errores.
*Carga y
ejecución
automática de la
siguiente tarea.
Para que
el monitor
residente
sepa qué
programa
ejecutar.
*Cargador,
secuenciado
de trabajos.
*Drivers para
cargador e
intérprete.
*Ventaja:
eliminación
del tiempo de
preparación y
del
secuenciado
manual de
trabajos.
El problema de la entrada/salida.
Entrada/Salida muy lenta en comparación con la CPU, lo que indica que la CPU
queda ociosa mucho tiempo esperando la terminación de las operaciones de
entrada/salida.
MULTIPROGRAMACIÓN.
Debido al Spooling (reserva de trabajos en el disco), el sistema
operativo escoge qué trabajo ejecutar a continuación, con el
criterio de mejorar el aprovechamiento de la CPU.
El aspecto más importante de la planificación es la
Multiprogramación, aumentando el aprovechamiento de la CPU.
Siempre habrá varios trabajos en memoria, el sistema operativo
escogerá de entre ellos y lo ejecutará, de tal forma que siempre
haya un trabajo en ejecución.
Si un proceso se bloquea, esperando por la E/S, en la CPU
ejecutamos instrucciones de otro proceso.
Ejecución entrelazada de procesos: concurrencia.
Mayor rendimiento, finalización de los trabajos en menos tiempo.
SISTEMAS DE TIEMPO COMPARTIDO.
¿Por qué surgen?
El usuario no puede interactuar con el
trabajo durante su ejecución.
Solución:
Sistemas multitarea,
apropiados para tareas
cortas, tiempos de respuesta
cortos.
Desventajas:
Perdemos productividad de la
CPU
Ventajas:
Interacción usuario-sistema e
ilusión de que cada usuario tiene
su ordenador particular.
SISTEMAS DE ORDENADORES PERSONALES
SISTEMA
SISTEMA PARALELOS-
MULTIPROCESADORES.
SISTEMAS DISTRIBUIDOS.
Características:
 El cómputo se reparte entre varios procesadores
conectados en una red.
 Cada procesador tiene su propia memoria local,
ahora no comparten memoria ni reloj.
 Comunicación entre procesadores a través de líneas
de comunicación, buses de alta velocidad o líneas
telefónicas.
 Procesadores de distintos tamaños y funciones.
 Escalable hasta millones de procesadores (Internet).
SISTEMAS DISTRIBUIDOS.
Ventajas:
 Recursos compartidos: accesos remotos,
compartición de archivos, BD distribuidas.
 Computación más rápida, carga de trabajo
compartida.
 Fiabilidad: tolerancia a fallos por redundancia.
 Comunicación: redes.
Desventajas:
 Comunicación compleja al no compartir memoria.
 Redes de comunicaciones no fiable.
 Heterogeneidad de los nodos.
SISTEMA EN TIEMPO REAL.
FUNCIONES DE LOS SISTEMAS OPERATIVOS.
CAPAS DE UN SISTEMA OPERATIVO.
PELÍCULA: LOS PIRATAS DE SILICON VALLEY.
https://vimeo.com/55439991?from=facebook
ESTRUCTURA DE UN SISTEMA OPERATIVO.
Sistemas monolíticos.
• En este modelo, para cada llamada al sistema hay un
procedimiento de servicio que se encarga de la llamada y
la ejecuta.
• Los procedimientos utilitarios hacen cosas que necesitan
varios procedimientos de servicio, como obtener datos de
los programas de usuario.
ESTRUCTURA DE UN SISTEMA MONOLÍTICO.
Sistemas de capas.
El primer sistema en capas fue el THE
(TechnischeHogeschoolEindhoven) en Holanda.
Microkernels.
La idea básica es lograr una alta confiabilidad al
dividir el sistema operativo en módulos pequeños y
bien definidos, solo uno de los cuales se ejecuta en
modo cerner y el resto se ejecuta como procesos de
usuario ordinarios, sin poder relativamente.
Estructura del sistema minis.
Modelo cliente-servidor.
1. Existen dos clases de procesos: los servidores, cada uno
de los cuales proporciona cierto servicio, y los clientes,
que utilizan estos servicios. Este modelo se conoce como
cliente-servidor.
2. La esencia es la presencia de procesos cliente y procesos
servidor.
3. La comunicación entre clientes y servidores se lleva a
cabo comúnmente mediante el paso de mensajes. Para
obtener un servicio, un proceso cliente construye un
mensaje indicando lo que desea y lo envía al servicio
apropiado. Después el servicio hace el trabajo y envía de
vuelta la respuesta. Si el cliente y el servidor se ejecutan
en el mismo equipo se pueden hacer ciertas
optimizaciones, pero en concepto estamos hablando
sobre el paso de mensajes.
Maquinas virtuales.
 Cada máquina virtual es idéntica al verdadero hardware,
cada una puede ejecutar cualquier sistema operativo que
se ejecute directamente sólo en el hardware.
 Distintas máquinas virtuales pueden ejecutar distintos
sistemas operativos.
Unidad 2
Fundamentos de Programación en C.
Historia del Lenguaje C y Otros.
Historia del Lenguaje C.
 Nació en los laboratorios Bell de AT&T y ha sido asociado con el sistema
operativo UNIX, ya que fue creado en este sistema.
 Fue creado entre los años 1970 y 1972 por Brian Jeringan y Dennis Ricio para
escribir el código del sistema operativo UNIX.
 Fue uno de los lenguajes de programación más aceptados por los
programadores, porque hace una combinación del lenguaje de alto nivel y
lenguaje máquina.
 C es el resultado de un proceso de desarrollo que inició con un lenguaje
llamado BCPL. Luego apareció B, lo cual llevo al surgimiento del lenguaje C.
Historia del Lenguaje C.
 En 1978 Jeringan y Ricio publican el libro “Te C
ProgrammingLanguage”, el cual es considerado “La
Biblia del C”.
 A mediados de los 80 ya habían compiladores en C, y
muchas aplicaciones lo utilizaban para aprovechar sus
ventajas.
 Algunos fabricantes introducen mejoras en C, las cuales
son recogidas por un comité de estandarización ANSI y
establecen las especificaciones de lo que se conoce hoy
en día como “ANSI C”.
 En 1980 BjarneStroustrup de los laboratorios Bell de
Murray Hill, New Jersey, adicionó las características de
la programación orientada a objetos (POO) y lo
denominó “C con clases”.
 Para 1983 dicha denominación cambió a la de C++.
 Con este nuevo enfoque surge la nueva metodología que
aumenta las posibilidades de programación bajo nuevos
conceptos.
Lenguaje C y estándares.
 Se crearon muchas implementaciones con C, sin
embargo, como no existía ningún estándar, aparecieron
discrepancias.
 Para remediar la situación, el Instituto de Estándares
América (ANSI) estableció un comité a mediados de
1983 para crear un estándar que definiera al lenguaje C.
 Este comité terminó el proceso de formalización en 1990.
 Empresas que se dedican a vender el compilador de C
son:
 Microsoft Visual C++.
 Borlando C++ Boulder.
Algunos de los C existentes.
 Quick C.
 C++.
 Turbo C.
 Turbo C++.
 Borlando C.
 Borlando C++.
 Microsoft C.
Variables en C.
 En C toda variable antes de ser usada debe ser declarada,
especificando el tipo de dato que almacenará.
 Una variable en C se declara así:
 <tipo de dato><nombre de variable> [, nombre
de variable];
Tipo de datos en C.
SISTEMAS OPERATIVOS: PROPIETARIO Y
LIBRE.
HARDWARE Y SOFTWARE.
 HARDWARE: Se refiere a todas las partes
tangibles de un sistema informático, sus
componentes son: Disco duro, memoria, CPU,
teclado, mouse, monitor, etc.
 SOFTWARE: Es todo el conjunto intangible
de datos y programas de la computadora.
La interacción entre el software y el hardware hace
operativa la computadora, es decir, el software envía
instrucciones al hardware haciendo posible su
funcionamiento.
¿QUÉ ES UN SISTEMA OPERATIVO?
 Un Sistema Operativo es el software básico de una
computadora que provee una interfaz entre el resto
de programas del ordenador, los dispositivos
hardware y el usuario.
 Las funciones básicas del Sistema Operativo son
administrar los recursos de la máquina, coordinar el
hardware, organizar archivos y directorios en
dispositivos de almacenamiento.
SOFTWARE PROPIETARIO.
Software no libre, software privativo, software privado, software
con propietario o software de propiedad. Se refiere a cualquier
programa informático en el que los usuarios tienen limitadas las
posibilidades de usarlo, modificarlo o redistribuirlo con o sin
modificaciones, o cuyo código fuente no está disponible o el
acceso a éste se encuentra restringido.
CARACTERÍSTICAS:
* Este software no te pertenece no puedes hacerle ningún tipo de
modificación al código fuente.
* No puedes distribuirlo sin el permiso del propietario.
* El usuario debe realizar cursos para el manejo del sistema como
tal debido a su alta capacidad de uso.
* Cualquier ayuda en cuanto a los antivirus.
VENTAJAS:
* Mayor mercado laboral actual.
* Mejor protección de las obras con copyright.
* Unificación de productos.
* Facilidad de adquisición (puede venir preinstalado con la compra
del PC, o encontrarlo fácilmente en las tiendas).
* Existencia de programas diseñados específicamente para
desarrollar una tarea.
* Las empresas que desarrollan este tipo de software son por lo
general grandes y pueden dedicar muchos recursos, sobretodo
económicos, en el desarrollo e investigación.
* Interfaces gráficas mejor diseñadas.
SOFTWARE LIBRE.
Es un programa o secuencia de instrucciones usada por un
dispositivo de procesamiento digital de datos para llevar a cabo
una tarea específica o resolver un problema determinado, sobre el
cual su dueño renuncia a la posibilidad de obtener utilidades por
las licencias, patentes, o cualquier forma que adopte su derecho
de propiedad sobre él, por lo que puede utilizarse o transferirse
sin pago alguno al licenciante, o a su creador.
CARACTERÍSTICAS:
1. Se encuentra disponible el código fuente del software, por lo que
puede modificarse el software sin ningún límite.
2. Libertad de estudiarlo y adaptarlo.
3. Libertad de distribuir copias.
4. Libertad de mejora y publicación de cambios.
5. Libertad de usar el programa con cualquier propósito.
VENTAJAS:
1. El usuario no comete delito por tenerlo o usarlo.
2. Amplísima gama y variedad de herramientas libres.
3. Actualizaciones periódicas con frecuencia.
4. 100% libre de virus.
5. Altísimo nivel de estabilidad comprobada.
6. Tiene una gran comunidad de apoyo y soporte.
7. Diversidad de soluciones informáticas.
8. Costo.
9. Flexibilidad de las soluciones informáticas.
NOMBRES DE SISTEMAS OPERATIVOS.
10.Linux.
11.Open sise.
12.Mandria.
13.Debían.
14.Ubuntu.
15.Solaris.
16.Sumían.
17.Windows 95.
18.Windows vista.
19.Windows NT.
20.Mac.
SISTEMAS OPERATIVOS PARA
DISPOSITIVOS MÓVILES.
Antecedentes.
En la actualidad son muchos los avances tecnológicos que se
tienen y se esperan aún más, por el momento tenemos los
suficientes para saber qué es lo que está pasando en el mundo
entero, esto gracias a las telecomunicaciones y a los dispositivos
móviles.
Observando el panorama en una ciudad, cualquier persona se da cuenta
que la población está ocupada utilizando un dispositivo móvil,
generando la incógnita de saber cuál es el sistema operativo dentro de
ese dispositivo, y conocer que es lo que ha pasado con el sistema
operativo desde sus inicios, lograr conocer un poco a su creador y
ventajas sobre otro sistemas operativos para dispositivos móviles.
Los celulares surgieron por la necesidad de estar comunicados uno con
otros, su evolución ha sido muy grande y muy rápida, los primeros
ejemplares solo servían para hacer llamadas y eran de un gran tamaño y
peso, luego se fueron haciendo más pequeños y con mayores funciones.
 Hoy en día se pueden enviar mensajes de texto a otros
celulares, incluyeron en ellos la capacidad para reproducir
música y la posibilidad de conectarse vía infrarrojo y
posteriormente vía bluetooth.
 Incluyendo en los mismos dispositivos la posibilidad de
tomar fotos y/o videos así como una mayor capacidad de
almacenamiento y una mayor definición, en un corto lapso
se crearon celulares con la capacidad de conectarse a
internet ya sea por la cobertura de la compañía o por medio
de wiki y así facilitar la descarga de diferentes tipos de
archivos.
 Cada fabricante de celulares y/o dispositivos móviles tiene
un sistema operativo con un sinfín de aplicaciones, hasta
ahora los sistemas operativos para Smartphone más
conocidos son el Idos de la compañía Apple, el sistema de
Microsoft para móviles que es Windows pone, el sistema
propio de Black Berry y el sistema operativo que fue
adquirido por la empresa de golpe llamado Androide.
SISTEMA OPERATIVO ANDROID.
SISTEMA OPERATIVO ANDROID.
 “Androide” fue una creación de Andy Rubín, quien comenzó con
la propuesta de crear un sistema desde que se encontraba en la
Universidad de Utica, Nueva York.
 En la carrera de Ciencias de la computación en el año de 1986
después de haber terminado la carrera comienza a trabajar de una
empresa a otra hasta que logró trabajar como ingeniero Apple,
donde pasó a una empresa que surgió de Apple llamada General
Mágica, y aquí empezó con lo importante, ya que participó en el
desarrollo de Mágica Cup, lo que pretendía ser un sistema
operativo para teléfonos.
 Sin embargo General Mágica fracasó y se fue a la ruina,
momento en el cual Andy se unió a Artemis Resecar, que fue
comprada por Microsoft.
 Después de un lapso ambicionó hacer algo por cuenta propia, y
fundó Tánger Inc., que finalmente sería también comprada por
Microsoft. En Tánger Inc. suceden cosas muy importantes:
 La primera es que desarrollan el Hip-top, lo que es ya un teléfono
que marcaría las primeras líneas de lo que serían los Smartphone,
y la segunda es que se ve tan frustrado que decide abandonar la
compañía de la que era CEO.
 Todo ello le llevo a su paso final en esta etapa, fundar en 2003
Android Inc.
 En Agosto de 2005, cuando Android Inc. contaba con veintidós
meses de vida, Google adquirió la empresa, pero esta vez se ve
que Andy se mostró satisfecho con esta venta, no como ocurrió
con Danger Inc. Andy pasa a formar parte del equipo de Google,
y es donde trabaja como vicepresidente de ingeniería de Google
supervisando el desarrollo de Android.
 El 5 de Noviembre de 2007 que se hizo el anuncio oficial de
Android. Pero durante estos dos años Google había estado
trabajando, moviéndose, y una de ella fue llegar a acuerdos con
fabricantes de teléfonos móviles para desarrollar el primer
dispositivo Android de la historia.
VERSIONES DE ANDROID.
 Versiones previas de Android, aparecen Astro boy o Bender.
 Android 1.0 o Apple Pie.
 Android 1.1 – PetitFour.
 Android 1.5 – Cup cake.
 Android 1.6 – Donut.
 Android 2.0 – Éclair.
 Android 2.1 – Éclair.
 Android 2.2 – Froyo.
 Android 2.3 – Ginger bread.
 Android 3.0 – Honeycomb.
 Android 4.0 – Ice Cream Sándwich.
 Android 4.1 – JellyBean.
10AZONES PARA ELEGIR ANDROID.
1. Es el más utilizado del mundo.
2. Es libre.
3. Es muy personalizable.
4. Es legal modificarlo.
5. Cuenta con más aplicaciones.
6. Hay más aplicaciones gratuitas.
7. Los SmarthphoneAndroid son más baratos.
8. Cuenta con una mayor comunidad.
9. No es Apple.
10. Android es de Google.
ANDY.
Andy es muñeco verde, logotipo del sistema operativo Android.
Salió por primera vez en el año 2005, cuando Google compró la
empresa Android Inc. Desde entonces, este se ha convertido en la
imagen referencia de Google, en cuanto a Smartphone y tabletas se
refiere.
No se esperaban la buena aceptación y la repercusión que tuvo,
desde el primer momento, el susodicho robot verde.
Aunque existen teorías que dicen que "Andy" está inspirado en
R2D2 (de la ya famosa saga de StarWars).
Andy, el muñequito, se parece a un robotito en un videojuego de los
años 90. Entre los personajes de ese juego se haya uno que deja una
clara pista sobre si Andy es una copia o un diseño 100% original. La
verdad es que las similitudes entre ambos son asombrosas. Desde las
antenas y su forma regordeta, hasta llegar a las extremidades. Si no
fuera por esa cinta azul en el torso, además, los dos se llaman igual,
Android.
La diseñadora encargada del proyecto es Irina Blok.
DISEÑADORA DE ANDY.
VERSIONES.
 Android 1.0 (G1).
El primer dispositivo contaba con GPS y Bluetooth, Multitarea,
Estrecha integración con los servicios de Google como Gmail, Google
Maps (con Street View), y Google Calendar, Aplicaciones: Amazon
MP3 Store, YouTube, AndroidMarket (cerca de 35 aplicaciones en el
lanzamiento), No Microsoft Exchange Server, sin cámara de video.
 Android 1.1-Petit Four.
En febrero de 2009 llego la primera actualización para Android, unos
tres meses después del lanzamiento del G1. La versión 1.1 fue dedicada
básicamente a reparar errores e implementar las actualizaciones
“overthe air” que hasta ese momento ninguna
plataforma estaba haciendo.
 AndroidCupcake-Versión 1.5
Android 1.5 es mejor conocido por su nombre en clave, Cup cake, fue la
primera versión en utilizar nombre de postres. Cada versión después de
Cup cake ha sido nombrada con un nombre de postre continuando el
orden alfabético.
En esta versión se comenzaron a ver algunos cambios en la interfaz de
usuario, como son los cambios en la barra del buscador y en la barra del
menú, también cambió el logo del navegador.
 Android Donut-Versión 1.6
El sistema operativo lanza una nueva versión en el
mes de Septiembre del año 2009 que es novedad y muy aceptada entre
todos los usuario Android que en este lapso ya comienza el auge dentro
del mercado.
La versión se destaca por las funciones con las que cuenta entre las que
se destacan son la de navegación en Google Maps paso-a-paso, mejora
en el interfaz de la cámara de foto y video, búsquedas por voz.
 AndroidEclair-Versión 2.0
Versión del sistema operativo lanzada al mercado en el
mes de Diciembre de 2009, con zoom digital de la
cámara de fotos y video, mejoras en Google Maps,
nuevo navegador de internet con soporte de video e
incluso de Flash, salvapantallas animadas.
Esta es la versión que comienza a demostrar la
robustez y estabilidad como sistema operativo para
dispositivos móviles.
 Android 2.1-Eclair 2.
Versión lanzada en Enero de 2010, entre sus características principales
se encuentran las siguientes:
Fondo de pantalla en vivo, cinco pantallas de inicio, Voz a texto
añadido a cualquier campo de texto, icono del
micrófono para el dictado de voz en mensajes
en correo electrónico, los textos, y así
sucesivamente.
 AndroidFroyo-Versión 2.2
Fue lanzado en Mayo de 2010, dentro de las funciones del
sistema se encuentran la mejora de memoria, mucho más veloz
que las versiones anteriores, hotspotWiFi incluido, soporte de
correo electrónico Microsoft Exchange y video llamada. Soporta
Flash.
Ya tomando su sitio de honor entre la mayoría de los dispositivos
móviles a nivel mundial. Excelente aceptación por parte de los usuarios.
 AndroidGingerbread-Versión 2.3
Versión de Android que se lanza en el mes de
Diciembre de 2010 cuya aceptación en el mercado
sigue siendo muy buena, ya que cuenta con mejores características
visuales dentro de las aplicaciones que se muestran en el menú del
dispositivo móvil.
Dentro de las funciones que se encuentran en la versión son la mejora
del soporte de video online, mejora de la gestión de la energía (y
consumo de la batería), mejora del teclado virtual, soporte para pagos.
Posibilidades para usuarios totalmente conectados.
 AndroidHoneyComb-Versión 3.0/3.4
Sistema operativo optimizado para tabletas, posee plenas
funcionalidades multitareas multitasking para cambiar de aplicaciones
en uso dejando las demás en espera visibles en
una columna, soporte Flash y DivX, aparte de
los navegadores privados tradicionales integra
Dolphin, home page personalizable y widgets.
Soporte de gráficos 3D, Side-by-side las
pestañas del navegador, navegación privada,
Panel de doble modo de libreta de direcciones, e-mail, Interfaz de
usuario rediseñada incluye miniaturas del programa, Video chat con
Google Talk, Pantalla completa en modo de galería de fotos, Bluetooth
tethering.
 AndroidIcecreamSandwich-Versión 4.0
Lanzada al mercado a finales del año 2011,
cuenta con las funciones de diseñado para
todos los dispositivos móviles en que se
puede instalar como son Smartphone,
tabletas y notebooks de todas las medidas y
marcas, pantalla principal con imágenes 3D, barras de estado y
widgetsredimensionables, reconocimiento facial, mejora de
reconocimiento de voz; soporte USB para teclados y controles para PS3.
Novedades y mejoras en la navegación e interfaz, con el objetivo de
dinamizar y facilitar la experiencia del usuario.
 Android 4.2-Jelly Bean.
Lanzada en 2012, la versión mencionada se destaca
sobre todo que cada vez más el sistema se irá
depurando y solucionado todo, y así también llegará
también a más público alrededor del mundo, que es
su objetivo final.
Para lograrlo se utiliza el proyecto mantequilla que fue como decidieron
nombrarlo los programadores del sistema, o mejor descrito como
Project Butter que es el nombre que se ha escogido para describir
algunos objetivos en esta versión Android.
Entrando a términos de software, la siguiente versión será mucho más
fluida, más rápida y más suave, para el agrado de los usuarios.
 Android 5.0-Key Lime Pie.
La denominación como ya es una costumbre
vuelve a basarse en la curiosa correlación de
postres ordenados de forma alfabética y en la
imagen se muestra al androide verde comiendo
cada uno de ellos desde que se lanzó la primera versión hace cinco años,
bautizada como Apple Pie.
Google actualmente.
SEGURIDAD Y PRUEBAS DEL SOFTWARE.
Seguridad de la información.
Conjunto de políticas, procedimientos, tecnologías y personas que
pretenden minimizar el nivel de riesgo de que sea comprometida alguna
de las características de la información.
Riesgo.
Probabilidad que tiene un activo de ser comprometido por parte de
una amenaza.
Características de la información.
SEGURIDAD INFORMÁTICA.
Componente de la seguridad de la información definido como un
conjunto de políticas y mecanismos tecnológicos que pretenden
garantizar la confidencialidad, integridad y disponibilidad de los
recursos de un sistema informático.
INSEGURIDAD INFORMÁTICA.
Es la falta o poca presencia de controles de seguridad en un
sistema operativo, aplicación, red, dispositivo o procedimiento.
VULNERABILIDAD.
Debilidad presente en un sistema informático que permite que sus
componentes y la información que procesa pueda ser comprometida.
Según la jerga de la seguridad informática una vulnerabilidad también
es conocida como un agujero de seguridad.
Las vulnerabilidades surgen por:
 Mal diseñodel sistema informático.
 Ladeficiente implementación del sistema informático.
 Pobres procedimientos para operar y administrar el sistema
informático.
Ciclo de vida de una vulnerabilidad.
Amenaza.
Circunstancia o Evento que puede causar daño comprometiendo la
confidencialidad, integridad o disponibilidad de la información.
El término hace referencia a un evento:
 Infección por un virus de computadora.
 Robo de información.
 Terremoto.
Aprovechamiento de una vulnerabilidad por parte de una amenaza.
Riesgos.
Es la probabilidad de que una amenaza se aproveche de una
vulnerabilidad. Una vulnerabilidad o una amenaza por separado, no
representan un peligro. Pero si se juntan se convierten en un riesgo.
Vulnerabilidad + Amenaza = Riesgo.
“Los riesgos nunca se eliminan… se gestionan”.
Acciones a tomar durante un riesgo.
Hackers.
 El sustantivo hacker es un neologismo utilizado para referirse a
personas expertas en varias o una rama técnica relacionada con la
informática (programación, redes de computadores, sistemas
operativos, hardware de voz/datos, etc…).
 A nivel tecnológico el termino hacking se usa para referirse al
arte informático de descubrir y solucionar problemas que atenten
contra la seguridad de un sistema o aplicación.
 El sustantivo cracker (Criminal hacker) hace referencia a
personas que usan las técnicas de hacking con fines ofensivos.
Clasificación HACKERS UNDERGROUND.
 SAMURAI.
Nivel más alto en la jerarquía, se supone tiene conocimientos y
habilidades superiores.
 BUCANERO.
Hacker con conocimientos y habilidades considerables sobre
hacking
Conoce a fondo el funcionamiento de muchas herramientas y
tiene la habilidad de construir las suyas.
 SCRIPT KIDDIE.
Persona con conocimientos medios, conoce comandos de sistemas
operativos.
Tienen habilidades de crear y correr scripts básicos.
 LAMMER.
Persona con conocimientos muy básicos sobre hacking
Usa herramientas de terceros pero NO sabe cómo funcionan.
 NEWBIE.
Prospecto de hacker, en proceso de
iniciación en el mundo del hacking.
CLASIFICACIÓN DE HACKERS FBI.
LA CULTURA DEL HACKER.
 El hacker desea saber cada vez más.
 Su obsesión por aprender es enfermiza.
 Existen grandes comunidades a nivel mundial:
Grupos.
Foros.
Canales de chat.
 Algunas motivaciones para los hackers:
Curiosidad.
Desafío.
Ideales.
Lucro.
Hackers famosos.
Ataque informático.
 Toda aquella acción que conlleve a poner en riesgo las
propiedades de confidencialidad, integridad y disponibilidad de
un sistema.
 También se pueden considerar como la consumación de
una amenaza.
 Un ataque no se realiza en un solo paso, es una metodología
estructurada.
Tipos de ataques.
Algunos ataques básicos.
Dualismo de la inseguridad informática.
Jornalización de la asignatura.
UNIVERSIDAD GERARDO BARRIOS
JORNALIZACIÓN DE LA ASIGNATURA
CICLO I – 2015
FACULTAD: ____CIENCIA Y
TECNOLOGÍA____________________________________
ASIGNATURA: ____SISTEMAS OPERATIVOS__________________
GRUPO:”UNICO”__
DÍAS: ___MIERCOLES Y JUEVES ___ AULA: ___3A_ HORA: _10:40
AM A 12:20 MD_
CARRERA: ___TECNICO EN INGENIERIA EN SISTEMAS Y REDES
INFORMATICAS______
DOCENTE: ___ LICDA. CARLA MILAGRO LOPEZ
VASQUEZ_____________
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
1
28 E
ne
ro
Saludo y Presentación.
Descripción de la Asignatura y Formas de evaluación.
Reglamento de la cátedra durante el presente ciclo.
Diagnóstico general del grupo y Definición de roles por
equipo.
2
29 E
n
e
r
o
Unidad 01 Introducción a los sistemas operativos.
1.1 ¿Qué es un sistema operativo?
1.2 Historia de los sistemas operativos.
Actividad: Foro Virtual.
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
3
4 F
e
b
r
e
r
o
Explicación: Esquema de llaves sobre clasificación de los
sistemas operativos y glosario.
1.3 Clasificación de los sistemas operativos.
1.4 Funciones de los sistemas operativos.
1.5 Capas de un sistema operativo.
4
5 F
e
b
r
e
r
o
Revisión Esquema de Llaves sobre Clasificación de
los Sistemas Operativos y glosario. Laboratorio 15%.
5
11 F
e
b
r
e
r
o
Unidad 02 Fundamentos de programación en C.
2.1 Historia del lenguaje de programación C.
2.2 Lenguaje de programación C y Sistemas Operativos.
2.3 Variables y tipos de datos en C.
6
12 F
e
b
r
e
r
o
Unidad 03 Conceptos introductorios de arquitectura del
computador.
3.3 Definición de computadora.
7
18 F
e
b
r
e
Explicación:
3.2 Estructura del computador (Arquitectura Von Newman).
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
r
o
8
19 F
e
b
r
e
r
o
Revisión de Infografía sobre Arquitectura de Von
Newman, Laboratorio 15%.
9
25 F
e
b
r
e
r
o
Unidad 04 Sistemas operativos libres y propietarios.
4.1 Definiciones.
4.2 Ventajas y desventajas.
1
0
26 F
e
b
r
e
r
o
4.3 Sistemas operativos y empresas: Inversión.
Explicación:
4.4 Sistemas operativos que utilizan las empresas
usulutecas (investigación).
4.5 Sistemas operativos para dispositivos móviles.
1
1
4 M
a
rz
o
Revisión de Investigación sobre Sistemas Operativos que
utilizan las empresas usulutecas. Laboratorio 30%.
1
2
5 M
a
rz
o
PRIMER EXAMEN PARCIAL 40%.
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
1
3
11 M
ar
z
o
Unidad 05 Procesos de sistemas operativos.
5.1 Concepto de proceso.
1
4
12 M
a
rz
o
5.2 Componentes de los procesos.
1
5
18 M
a
rz
o
5.3 Jerarquía de procesos.
1
6
19 M
a
rz
o
5.4 Hilos.
1
7
25 M
a
rz
o
5.5 Servicios POSIX relacionados con el trabajo de procesos.
1
8
26 M
a
rz
o
Control de lectura 10%.
DEL 30 DE MARZO AL 5 DE ABRIL – VACACIONES DE SEMANA SANTA
1
9
8 A
b
ril
Unidad 06 Comunicación y Sincronización de Procesos.
6.1 Problemas clásicos de comunicación y sincronización.
2
0
9 A
b
6.2 Mecanismos de comunicación y sincronización de
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
ril procesos.
6.3 Servicios POSIX relacionados con la comunicación y
sincronización de procesos.
Explicación: Guía de trabajo A.
2
1
15 A
b
ril
Revisión Guía de Trabajo A 20%.
2
2
16 A
b
ril
Unidad 07 El sistema operativo y la gestión de recursos.
7.1 Conceptos de arquitectura de memoria.
7.2 Los sistemas operativos y la gestión de memoria.
2
3
22 A
b
ril
7.3 La memoria como mecanismo de comunicación.
7.4 El sistema operativo y el manejo de archivos.
7.5 Servicios POSIX relacionados con memoria compartida.
Explicación: Guía de Trabajo B.
2
4
23 A
b
ril
Unidad 08 Seguridad y protección en los sistemas operativos.
8.1 Definición de seguridad y protección desde el punto de
vista de los Sistemas Operativos.
2
5
29 A
b
ril
Revisión Guía de Trabajo B 15%.
2
6
30 A
b
ril
8.2 Problemáticas de la seguridad
8.3 Riesgos de la seguridad.
Actividad: Blog.
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
2
7
6 M
a
y
o
Laboratorio Escrito 15%.
2
8
7 M
a
y
o
SEGUNDO EXAMEN PARCIAL 40%.
2
9
13 M
a
y
o
8.4 Disección de un ataque a la seguridad.
Actividad: Crear diagrama modelo.
3
0
14 M
a
y
o
8.5 Mecanismos de seguridad y protección.
Actividad: Slideshare.
3
1
20 M
a
y
o
Unidad 09 Estudios de casos.
Explicación: Guía de Trabajo C.
9.1 Windows.
3
2
21 M
a
y
o
9.2 Linux.
9.3 Móviles.
3
3
27 M
a
y
o
Proyecto Integrador 30%.
3
4
28 M
a
Revisión Guía de Trabajo C 15%.
N
°
FECHA
Contenidos temáticosDí
a
M
e
s
y
o
3
5
3 J
u
ni
o
15% en todas las preparaciones.
Preparación de Máquinas Virtuales.
3
6
4 J
u
ni
o
Preparación de Máquinas Virtuales.
3
7
10 J
u
ni
o
40% en todas las instalaciones.
Defensa de Instalación de SO Windows en máquina virtual.
3
8
11 J
u
ni
o
Defensa de Instalación de SO Windows en máquina virtual.
3
9
11 J
u
ni
o
Defensa de Instalación de Ubuntu en Máquina Virtual.
4
0
11 J
u
ni
o
Defensa de Instalación de Ubuntu en Máquina Virtual.
Calendarización.
FECHAS ACTIVIDADES A
EVALUAR
PORCENTAJE DEL
COMPUTO
5/Febrero/2015 Revisión de Esquema
de Llaves sobre
Clasificación de los
SO y Glosario.
15%
19/Febrero/2015 Revisión Infografía
sobre Arquitectura
Von Newmann.
15%
4/Marzo/2015 Investigación sobre
SO que utilizan las
empresas
usulutecas.
30%
5/Marzo/2015 Primer Examen
Parcial.
40%
Total Cómputo I 100%
26/Marzo/2015 Control de Lectura. 10%
15/Abril/2015 Revisión Guía de
Trabajo A.
20%
29/Abril/2015 Revisión Guía de 15%
Trabajo B.
6/Mayo/2015 Laboratorio Escrito. 15%
7/Mayo/2015 Segundo Examen
Parcial
40%
Total Cómputo II 100%
27/Mayo/2015 Proyecto Integrador. 30%
28/Mayo/2015 Revisión Guía de
Trabajo C.
15%
3/Junio/2015 Preparación de
Máquina Virtual.
15%
10/Junio/2015 Instalación de SO. 40%
Total Cómputo III 100%
Procesos de Sistemas Operativos – Control de Lectura.
UNIVERSIDAD GERARDO BARRIOS
CENTRO REGIONAL DE USULUTAN
FACULTAD DE CIENCIA Y TECNOLOGIA
SISTEMAS OPERATIVOS
DOCENTE: LICDA. CARLA MILAGRO LOPEZ VASQUEZ, MIW.
CONTROL DE LECTURA
FECHA DE EVALUACION: 9/ABRIL/2015
Unidad 05 - Procesos de sistemas operativos.
Concepto de proceso.
En un sistema multiprogramado o de tiempo compartido, un proceso es la imagen
en memoria de un programa, junto con la información relacionada con el estado de
su ejecución.
Un programa es una entidad pasiva, una lista de instrucciones; un proceso es una
entidad activa, que –empleando al programa– define la actuación que tendrá el
sistema. En contraposición con proceso, en un sistema por lotes se habla de
tareas.
Una tarea requiere mucha menos estructura, típicamente basta con guardar la
información relacionada con la contabilidad de los recursos empleados. Una tarea
no es interrumpida en el transcurso de su ejecución. Ahora bien, esta distinción no
es completamente objetiva -y se pueden encontrar muchos textos que emplean
indistintamente una u otra nomenclatura.
Si bien el sistema brinda la ilusión de que muchos procesos se están ejecutando al
mismo tiempo, la mayor parte de ellos típicamente está esperando para continuar
su ejecución- en un momento determinado sólo puede estar ejecutando sus
instrucciones un número de procesos igual o menor al número de procesadores
que tenga el sistema.
Estados de un proceso.
Un proceso, a lo largo de su vida, alterna entre diferentes estados de ejecución.
Éstos son:
Nuevo: Se solicitó al sistema operativo la creación de un proceso, y sus recursos y
estructuras están siendo creadas.
Listo: Está listo para iniciar o continuar su ejecución pero el sistema no le ha
asignado un procesador.
En ejecución: El proceso está siendo ejecutado en este momento. Sus
instrucciones están siendo procesadas en algún procesador.
Bloqueado: En espera de algún evento para poder continuar su ejecución (aun si
hubiera un procesador disponible, no podría avanzar).
Zombie: El proceso ha finalizado su ejecución, pero el sistema operativo debe
realizar ciertas operaciones de limpieza para poder eliminarlo de la lista.
Terminado: El proceso terminó de ejecutarse; sus estructuras están a la espera
de ser limpiadas por el sistema operativo.
Diagrama de transición entre los estados de un proceso.
Componentes de
Componentes de los procesos.
La información que debe manipular el sistema operativo relativa a cada uno de los
procesos actuales se suele almacenar en una estructura llamada bloque de control
de proceso (PCB - Process Control Block). El PCB incluye campos como:
Estado del proceso: El estado actual del proceso.
Contador de programa: Cuál es la siguiente instrucción a ser ejecutada por el
proceso.
Registros del CPU: La información específica del estado del CPU mientras el
proceso está en ejecución (debe ser respaldada y restaurada cuando se registra
un cambio de estado).
Información de planificación (scheduling): La prioridad del proceso, la cola en
que está agendado, y demás información que puede ayudar al sistema operativo a
planificar los procesos.
Información de administración de memoria: La información de mapeo de
memoria (páginas o segmentos, dependiendo del sistema operativo), incluyendo la
pila (stack) de llamadas.
Información de contabilidad: Información de la utilización de recursos que ha
tenido este proceso —puede incluir el tiempo total empleado y otros (de usuario,
cuando el procesador va avanzando sobre las instrucciones del programa
propiamente, de sistema cuando el sistema operativo está atendiendo las
solicitudes del proceso), uso acumulado de memoria y dispositivos, etcétera.
Estado de E/S: Listado de dispositivos y archivos asignados que el proceso tiene
abiertos en un momento dado.
Procesos e Hilos.
La cantidad de información que el sistema operativo debe manejar acerca de cada
proceso es bastante significativa. Si cada vez que el planificador elige qué proceso
pasar de Listo a En ejecución debe considerar buena parte de dicha información,
la simple transferencia de todo esto entre la memoria y el procesador podría llevar
a un desperdicio burocrático de recursos. Una respuesta a esta problemática fue la
de utilizar los hilos de ejecución, a veces conocidos como procesos ligeros (LWP,
Lightweight processes).
Cuando se consideran procesos basados en un modelo de hilos, se puede
proyectar en sentido inverso que todo proceso es como un solo hilo de ejecución.
Un sistema operativo que no ofreciera soporte expreso a los hilos los planificaría
exactamente del mismo modo.
Pero visto desde la perspectiva del proceso hay una gran diferencia: si bien el
sistema operativo se encarga de que cada proceso tenga una visión de virtual
exclusividad sobre la computadora, todos los hilos de un proceso comparten un
sólo espacio de direccionamiento en memoria y los archivos y dispositivos
abiertos. Cada uno de los hilos se ejecuta de forma (aparentemente) secuencial y
maneja su propio contador de programa y pila.
Patrones de trabajo con hilos.
Hay tres patrones en los que caen generalmente los modelos de hilos; se puede
emplear más de uno de estos patrones en diferentes áreas de cada aplicación, e
incluso se pueden anidar (esto es, se podría tener una línea de ensamblado dentro
de la cual uno de los pasos sea un equipo de trabajo):
a) Jefe/Trabajador: Un hilo tiene una tarea distinta de todos los demás: el hilo jefe
genera o recopila tareas para realizar, las separa y se las entrega a los hilos
trabajadores.
Este modelo es el más común para procesos que implementan servidores (es el
modelo clásico del servidor Web Apache) y para aplicaciones gráficas (GUI), en
que hay una porción del programa (el hilo jefe) esperando a que ocurran eventos
externos. El jefe realiza poco trabajo, se limita a invocar a los trabajadores para
que hagan el trabajo de verdad; como mucho, puede llevar la contabilidad de los
trabajos realizados. Típicamente, los hilos trabajadores realizan su operación,
posiblemente notifican al jefe de su trabajo, y finalizan su ejecución.
Patrón de hilos Jefe/Trabajador
b) Equipo de trabajo: Al iniciar la porción multihilos del proceso, se crean muchos
hilos idénticos, que realizarán las mismas tareas sobre diferentes datos. Este
modelo es frecuentemente utilizado para cálculos matemáticos (p. ej.: criptografía,
render, álgebra lineal). Puede combinarse con un estilo jefe/trabajador para irle
dando al usuario una previsualización del resultado de su cálculo, dado que éste
se irá ensamblando progresivamente, pedazo por pedazo.
Patrón de hilos Equipo de Trabajo.
c) Línea de Ensamblado: Si una tarea larga puede dividirse en pasos sobre
bloques de la información total a procesar, cada hilo puede enfocarse a hacer sólo
un paso y pasarle los datos a otro hilo conforme vaya terminando. Una de las
principales ventajas de este modelo es que ayuda a mantener rutinas simples de
comprender, y permite que el procesamiento de datos continúe, incluso si parte del
programa está bloqueado esperando E/S. Un punto importante a tener en cuenta
en una línea de ensamblado es que, si bien los hilos trabajan de forma secuencial,
pueden estar ejecutándose paralelamente sobre bloques consecutivos de
información y eventos.
Patrón de hilos Línea de Ensamblado.
Concurrencia.
Desde un punto de vista formal, la concurrencia no se refiere a dos o más eventos
que ocurren a la vez sino a dos o más eventos cuyo orden es no determinista, esto
es, eventos acerca de los cuales no se puede predecir el orden relativo en que
ocurrirán. Si bien dos procesos (o también dos hilos) completamente
independientes entre sí ejecutándose simultáneamente son concurrentes, los
temas que en la presente sección se expondrán se ocupan principalmente de
procesos cuya ejecución está vinculada de alguna manera (p. ej.: dos procesos
que comparten cierta información o que dependen uno del otro).
Aunque una de las tareas principales de los sistemas operativos es dar a cada
proceso la ilusión de que se está ejecutando en una computadora dedicada, de
modo que el programador no tenga que pensar en la competencia por recursos, a
veces un programa requiere interactuar con otros: parte del procesamiento puede
depender de datos obtenidos en fuentes externas, y la cooperación con hilos o
procesos externos es fundamental.
Para presentar la problemática y los conceptos relacionados con la concurrencia
suelen utilizarse algunos problemas clásicos, que presentan casos particulares
muy simplificados, y puede encontrárseles relación con distintas cuestiones que un
programador enfrentará en la vida real. Cada ejemplo presenta uno o más
conceptos. Se recomienda comprender bien el ejemplo, el problema y la solución y
desmenuzar buscando los casos límite como ejercicio antes de pasar al siguiente
caso.
Caso práctico: El Jardín Ornamental.
Planteamiento.
Un gran jardín ornamental se abre al público para que todos puedan apreciar sus
fantásticas rosas, arbustos y plantas acuáticas. Por supuesto, se cobra una
módica suma de dinero a la entrada para lo cual se colocan dos torniquetes, uno
en cada una de sus dos entradas. Se desea conocer cuánta gente ha ingresado al
jardín así que se instala una computadora conectada a ambos torniquetes: estos
envían una señal cuando una persona ingresa al jardín. Se realiza un modelo
simplificado de la situación, así que no se estudiarán los detalles del hardware
utilizado. Aquí es importante notar que los dos torniquetes son objetos que existen
y se comportan en paralelo e independientemente: los eventos que generan no
tienen un orden predecible. Es decir, que cuando se escriba el software no se sabe
en qué momento llegará cada visitante ni qué torniquete utilizará. Se simulará un
experimento en el que 20 visitantes ingresan por cada torniquete. Al final de la
simulación deberá haber 40 visitantes contados.
Nota: Elabore un flujograma o algoritmo que represente la solución para el
problema “El Jardín Ornamental”. Puede utilizar la estructura que mejor se
adapte al caso.
En un sistema operativo multitarea cuando un proceso agota su porción de tiempo
de procesador (quantum) o detiene su ejecución por otra razón, los valores
almacenados en registros se preservan (junto con la información sobre el proceso)
para poder restaurarlo cuando la ejecución continúe (de esta forma se provee la
ilusión de la multitarea en sistemas de un solo núcleo). Así, en el problema del
jardín ornamental cada torniquete tiene su propia copia de los valores en los
registros. Sin embargo, se supone que el resto de la memoria es compartida (en
particular, se utiliza ese hecho para llevar la cuenta de personas que ingresan).
Bloqueos mútuos e inanición.
Bloqueo mútuo: Situación que ocurre cuando dos o más procesos poseen
determinados recursos, y cada uno queda detenido, a la espera de alguno de los
que tiene el otro. El sistema puede seguir operando normalmente, pero ninguno de
los procesos involucrados podrán avanzar.
Inanición: Situación en que un proceso no puede avanzar en su ejecución dado
que necesita recursos que están (alternativamente) asignados a otros procesos.
Caso práctico: La cena de los filósofos.
Planteamiento.
Cinco filósofos se dan cita para comer arroz en una mesa redonda. En ella, cada
uno se sienta frente a un plato. A su derecha, tiene un palito chino, y a su izquierda
tiene otro.
Los filósofos sólo saben pensar() y comer(). Cada uno de ellos va a pensar() un
tiempo arbitrario, hasta que le da hambre. El hambre es mala consejera, por lo que
intenta comer(). Los requisitos son:
Sólo un filósofo puede sostener determinado
palito a la vez, esto es, los palitos son recursos
de acceso exclusivo.
Debe ser imposible que un filósofo muera de
inanición estando a la espera de un palito.
Debe ser imposible que se presente un bloqueo
mutuo.
Debe ser posible que más de un filósofo pueda
comer al mismo tiempo.
Nota: Elabore un flujograma o algoritmo que represente la solución para el
problema “La cena de los filósofos”. Puede utilizar la estructura que mejor se
adapte al caso.
Ejemplo de Bloqueo Mútuo.
Un bloqueo mutuo puede ejemplificarse con la situación que se presenta cuando
cuatro automovilistas llegan al mismo tiempo al cruce de dos avenidas del mismo
rango en que no hay un semáforo, cada uno desde otra dirección.
Los reglamentos de tránsito señalan que la precedencia la tiene el automovilista
que viene más por la derecha. En este caso, cada uno de los cuatro debe ceder el
paso al que tiene a la derecha —y ante la ausencia de un criterio humano que
rompa el bloqueo, deberían todos mantenerse esperando por siempre.
Un bloqueo mutuo se presenta cuando (Condiciones de Coffman):
1. Los procesos reclaman control exclusivo de los recursos que piden (condición
de exclusión mutua).
2. Los procesos mantienen los recursos que ya les han sido asignados mientras
esperan por recursos adicionales (condición de espera por).
3. Los recursos no pueden ser extraídos de los procesos que los tienen hasta su
completa utilización (condición de no apropiatividad).
4. Hay una cadena circular de procesos en la que cada uno mantiene a uno o más
recursos que son requeridos por el siguiente proceso de la cadena (condición de
espera circular).
Servicios POSIX relacionados con el trabajo de procesos.
El término POSIX corresponde a las iniciales de interfase de sistema operativo
portable (Portable Operating System Interface). Es un estándar de interfase de
sistema operativo, basado en el popular sistema operativo UNIX. El estándar
POSIX está actualmente en desarrollo, y su principal objetivo es permitir la
portabilidad de aplicaciones a nivel de código fuente, es decir, que sea posible
portar una aplicación de un computador a otro sin más que recompilar su código.
El POSIX es un estándar de sistema operativo en evolución. Una importante parte
de este estándar está pensada para proporcionar la portabilidad de las
aplicaciones con requerimientos de tiempo real. Junto a las interfases de servicios
del sistema, se estandarizan también perfiles de entornos de aplicaciones que
permitirán a los implementadores desarrollar sistemas operativos POSIX de tiempo
real para una gran variedad de plataformas, desde los sistemas empotrados
pequeños hasta los sistemas de tiempo real grandes. El estándar define interfaces
en diferentes lenguajes de programación. En particular, las interfaces de tiempo
real están siendo definidas para C y Ada, que son los lenguajes estándar de
programación más importantes para los sistemas prácticos de tiempo real.
La funcionalidad especificada en el estándar POSIX es similar a la que se encuentra en
la mayoría de los núcleos y sistemas operativos de tiempo real disponibles
comercialmente. Las interfases POSIX se han definido de acuerdo con resultados
recientes de la teoría de planificación con prioridades estáticas. Algunas
implementaciones basadas en borradores iniciales de los estándares POSIX.4 y
POSIX.4a ya han sido desarrolladas y muestran resultados muy prometedores. En
resumen, el estándar POSIX permitirá construir sistemas predecibles y analizables que
cumplen sus requerimientos de tiempo real, y que pueden ser fácilmente portables de
unas plataformas a otras.
Términos básicos a investigar.
1. Programa.
2. Procesos.
3. Hilos.
4. Hebras.
5. Multihilos.
6. POSIX.
7. Servicios del sistema operativo.
8. API.
9. Sincronización.
10. Variable global.
CENTRO REGIONAL DE USULUTAN
FACULTAD DE CIENCIA Y TECNOLOGIA
SISTEMAS OPERATIVOS
DOCENTE: LICDA. CARLA MILAGRO LOPEZ VASQUEZ, MIW.
FECHA DE EVALUACION: 22/ABRIL/2015
Indicación general: Resuelva ordenadamente los ítems que se presentan
a continuación. La solución de la guía deberá ser en parejas y presentarla
impresa
El miércoles 22 de abril sin excepciones.
ÍTEMS
1) Investigue ¿Cuáles son los problemas clásicos de comunicación y
sincronización de procesos? Elabore un listado y descríbalos. Ejemplos.
2) Mencione ¿Cuáles son los mecanismos de sincronización entre procesos?
Descríbalos. Ejemplos.
3) Defina ¿Qué es POSIX? Y ¿Cómo se relaciona con la comunicación y
sincronización de procesos? Ejemplos.
4) Agregue información adicional complementaria acerca de la Unidad 06.
Máximo 1 página.
de procesos
UNIVERSIDAD GERARDO BARRIOS
CENTRO REGIONAL DE USULUTAN
FACULTAD DE CIENCIA Y TECNOLOGIA
SISTEMAS OPERATIVOS
DOCENTE: LICDA. MIW. CARLA MILAGRO LOPEZ VASQUEZ
FECHA DE REVISION: 29/ABRIL/2015
Indicaciones generales:
Resuelva ordenadamente los ítems que se presentan a continuación.
La solución de la guía deberá ser en equipos de 5 integrantes máximo.
Deberá ser presentada en formato blog o sitio web (1 por equipo).
Fecha de entrega: miércoles 29 de abril sin excepciones.
PUNTOS A RESOLVER
1) Defina el término: Arquitectura de memoria.
2) Explique la diferencia entre memoria RAM, ROM y EPROM.
3) ¿Qué es memoria real?
4) ¿Qué es memoria virtual?
5) Defina ¿Qué es unidad de manejo de memoria?
6) ¿Qué es segmentación de memoria?
7) La memoria como mecanismo de comunicación.
8) El sistema operativo y el manejo de archivos.
9) Servicios POSIX relacionados con memoria compartida.
Universidad Gerardo Barrios
Centro Regional de Usulután
Facultad de Ciencia y Tecnología
Sistemas Operativos
“Investigación de los Sistemas Operativos
que utilizan las empresas Usulutecas”.
Carátula
Introducción
Objetivos
o Objetivo general (1)
o Objetivos específicos (2 ó 3)
Contenido
Nombre de las empresas visitadas, pueden incluir el logo de cada una
(1 página).
Descripción de la información obtenida en cada empresa (Las páginas
que sean necesarias. Pueden describir empresa por empresa).
Listado general de los sistemas operativos identificados (Propietarios
y Libres aparte).
Conclusiones.
Recomendaciones.
Anexos
o Cuestionario.
o Guía de entrevista.
o Fotografías.
o Cartas.
o Otros.

Más contenido relacionado

La actualidad más candente

Clasificación de los Sistemas Operativos
Clasificación de los Sistemas OperativosClasificación de los Sistemas Operativos
Clasificación de los Sistemas OperativosMarvin Romero
 
Tendencias de los sistemas operativos. Presentación.
Tendencias de los sistemas operativos. Presentación.Tendencias de los sistemas operativos. Presentación.
Tendencias de los sistemas operativos. Presentación.Absner Anaya
 
Categoría De Los Sistemas Operativos
Categoría De Los Sistemas OperativosCategoría De Los Sistemas Operativos
Categoría De Los Sistemas OperativosArvey Barahona
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas OperativosDaniel
 
Trabajo practico n 2 sistema operativo
Trabajo practico n 2 sistema operativoTrabajo practico n 2 sistema operativo
Trabajo practico n 2 sistema operativoagpmuvi
 
Clasificaciones De Sistemas Operativos
Clasificaciones De Sistemas OperativosClasificaciones De Sistemas Operativos
Clasificaciones De Sistemas Operativoslidiacanche
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosTensor
 
10 Sistemas Operativos
10 Sistemas Operativos10 Sistemas Operativos
10 Sistemas Operativosjcruzess
 
Tipos Sistemas Operativos
Tipos Sistemas OperativosTipos Sistemas Operativos
Tipos Sistemas OperativosArmando_V_G
 
Tipos de sistemas operativos
Tipos de sistemas operativosTipos de sistemas operativos
Tipos de sistemas operativosAnita_Sango
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidossergiooney
 
Tipos de sistemas operativos y su funcionamiento
Tipos de sistemas operativos y su funcionamientoTipos de sistemas operativos y su funcionamiento
Tipos de sistemas operativos y su funcionamientoEzmee XD
 
Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2annyshey
 
Sistemas operativos por estructura
Sistemas operativos por estructuraSistemas operativos por estructura
Sistemas operativos por estructuraProf. Javier Troya
 

La actualidad más candente (20)

Clasificación de los Sistemas Operativos
Clasificación de los Sistemas OperativosClasificación de los Sistemas Operativos
Clasificación de los Sistemas Operativos
 
Tendencias de los sistemas operativos. Presentación.
Tendencias de los sistemas operativos. Presentación.Tendencias de los sistemas operativos. Presentación.
Tendencias de los sistemas operativos. Presentación.
 
Categoría De Los Sistemas Operativos
Categoría De Los Sistemas OperativosCategoría De Los Sistemas Operativos
Categoría De Los Sistemas Operativos
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Trabajo practico n 2 sistema operativo
Trabajo practico n 2 sistema operativoTrabajo practico n 2 sistema operativo
Trabajo practico n 2 sistema operativo
 
Clasificaciones De Sistemas Operativos
Clasificaciones De Sistemas OperativosClasificaciones De Sistemas Operativos
Clasificaciones De Sistemas Operativos
 
Clasificacion de los sistemas operativos
Clasificacion de los sistemas operativosClasificacion de los sistemas operativos
Clasificacion de los sistemas operativos
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Sistemas monousuario y multiusuario
Sistemas monousuario y multiusuarioSistemas monousuario y multiusuario
Sistemas monousuario y multiusuario
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
10 Sistemas Operativos
10 Sistemas Operativos10 Sistemas Operativos
10 Sistemas Operativos
 
Sistemas operativos
Sistemas operativos Sistemas operativos
Sistemas operativos
 
Tipos Sistemas Operativos
Tipos Sistemas OperativosTipos Sistemas Operativos
Tipos Sistemas Operativos
 
Tipos de sistemas operativos
Tipos de sistemas operativosTipos de sistemas operativos
Tipos de sistemas operativos
 
Unidad 1 s.o
Unidad 1 s.oUnidad 1 s.o
Unidad 1 s.o
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Tipos de sistemas operativos y su funcionamiento
Tipos de sistemas operativos y su funcionamientoTipos de sistemas operativos y su funcionamiento
Tipos de sistemas operativos y su funcionamiento
 
Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2
 
Sistemas operativos por estructura
Sistemas operativos por estructuraSistemas operativos por estructura
Sistemas operativos por estructura
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 

Similar a Portafolio de so en pdf

TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWAREJenni2011
 
TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWAREDeBoRaNbA8
 
Sistemas operativos en ambitos actuales relevantes
Sistemas operativos en ambitos actuales relevantesSistemas operativos en ambitos actuales relevantes
Sistemas operativos en ambitos actuales relevantesjoelcampo1
 
Referencias Automaticas
Referencias AutomaticasReferencias Automaticas
Referencias AutomaticasDavid Cardenas
 
Introducción a los Sistemas Operativos.pptx
Introducción a los Sistemas Operativos.pptxIntroducción a los Sistemas Operativos.pptx
Introducción a los Sistemas Operativos.pptxJAIMEALBERTOGALLEGOT
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosTensor
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosTensor
 
Unidad_1_Fundamentos_de_Sistemas_Operati.pptx
Unidad_1_Fundamentos_de_Sistemas_Operati.pptxUnidad_1_Fundamentos_de_Sistemas_Operati.pptx
Unidad_1_Fundamentos_de_Sistemas_Operati.pptxHoinasis
 
Sistema operativo distribuido
Sistema operativo distribuidoSistema operativo distribuido
Sistema operativo distribuidoRamon1 rodriguez1
 
73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.pptjosephcruz207059
 
73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.pptGaloMian
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraJairoMaxKevinMartine
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativosguestea15e3
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosdarioj92
 
Rosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoriaRosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoriarosaespinozamarin
 

Similar a Portafolio de so en pdf (20)

TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWARE
 
Taller no 3
Taller no 3Taller no 3
Taller no 3
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWARE
 
Sistemas operativos en ambitos actuales relevantes
Sistemas operativos en ambitos actuales relevantesSistemas operativos en ambitos actuales relevantes
Sistemas operativos en ambitos actuales relevantes
 
Referencias Automaticas
Referencias AutomaticasReferencias Automaticas
Referencias Automaticas
 
Introducción a los Sistemas Operativos.pptx
Introducción a los Sistemas Operativos.pptxIntroducción a los Sistemas Operativos.pptx
Introducción a los Sistemas Operativos.pptx
 
Taller tic
Taller ticTaller tic
Taller tic
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Unidad_1_Fundamentos_de_Sistemas_Operati.pptx
Unidad_1_Fundamentos_de_Sistemas_Operati.pptxUnidad_1_Fundamentos_de_Sistemas_Operati.pptx
Unidad_1_Fundamentos_de_Sistemas_Operati.pptx
 
SISTEMA OPERATIVO
SISTEMA OPERATIVOSISTEMA OPERATIVO
SISTEMA OPERATIVO
 
Sistema operativo distribuido
Sistema operativo distribuidoSistema operativo distribuido
Sistema operativo distribuido
 
73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt
 
73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt73fb5539f0bab09b614aa5c01ab8e69e.ppt
73fb5539f0bab09b614aa5c01ab8e69e.ppt
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas Estructura
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Rosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoriaRosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoria
 
JULIO REAÑO
JULIO REAÑOJULIO REAÑO
JULIO REAÑO
 

Último

VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Baker Publishing Company
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfDannyTola1
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 

Último (20)

VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdf
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 

Portafolio de so en pdf

  • 1. Universidad Gerardo Barrios Facultad de Ciencia y Tecnología Técnico en Ingeniería en Sistemas y Redes Informáticas Campus Usulután Estudiante: Nelson Amílcar Márquez Velásquez. USTS197615. Asignatura: Matemática Computacional Docente: Lic.: Carla Milagro López Vásquez. Actividad: Elaboración de un portafolio Fecha de Entrega: Usulután, 06 de Mayo de 2015.
  • 2. Unidad 1 Introducción a los sistemas operativos.
  • 3. ¿Qué es un sistema operativo? •Es un conjunto de órdenes y programas que controlan los procesos básicos de una computadora y permiten el óptimo funcionamiento de otros programas. •Es el software básico de una computadora que provee una interfaz entre el resto de programas, el hardware y los usuarios.
  • 4. ¿Cómo funciona un sistema operativo? •Generan una plataforma encima de la cual las aplicaciones pueden funcionar, por lo tanto, la elección del sistema operativo determina en grandes medidas las aplicaciones que puedes usar.
  • 5. Historia de los sistemas operativos. •Los sistemas operativos fueron creados para facilitar y ampliar las posibilidades de uso del hardware, pero estos a su vez pusieron en evidencia la necesidad de cambios en los equipos para facilitar su actividad y brindar mayores posibilidades.
  • 6. Primera Generación. •La primera generación (1945-1955) corresponde a los primeros equipos, construidos con válvulas de vacío. •En esta etapa no existieron sistemas operativos. Segunda Generación. •La segunda generación (1955-1965) corresponde a la etapa a los equipos que estaban basados en el uso de los transistores. •Eran más confiables y más duraderos. •Desde el punto de vista de los sistemas operativos se tiene el uso de monitores simples.
  • 7. •Sistemas de Operación de esta etapa son el FMS (Fortran Monitor Sistema) y el IBSYS de la 7094. Transistores. Tercera Generación. •La tercera generación (1965-1980) se caracterizó por la utilización de circuitos integrados. •Los sistemas operativos vinculados a esta etapa introdujeron los conceptos de la multiprogramación. •También
  • 8. corresponde a esta etapa la aparición del tiempo compartido. Circuitos integrados. •En esta etapa no pueden dejar de mencionarse los sistemas de operación OS/360 y Multicas. •Aquí surgen las primeras versiones del Unix. Cuarta Generación.
  • 9. •La cuarta generación (1980-1990) surge con los circuitos integrados de alta integración y por ello aparecen en el mercado las computadoras personales. •Esta etapa la dominan sistemas operativos MS-DOS y el Unix. Quinta Generación. •El actual desarrollo de los sistemas operativos basados en GUI (GraphicUser Interface) y la incorporación de orientación a objetos así como el soporte multimedia, es suficientemente fuerte para hablar de la quinta generación de los sistemas operativos.
  • 10. Sistemas Operativos más comunes. Familia Windows: •Windows 95, Windows 98, Windows ME, Windows NT, Windows 2000, Windows 2000 Server, Windows XP, Windows Server 2003, Windows CE, Windows Mobile, Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10. Sistemas Operativos más comunes. Familia Macintosh: •Mac OS 7, Mac OS 8, Mac OS 9, Mac OS X.
  • 11. Sistemas Operativos más comunes. Familia Unix: •AIX, AMIX, GNU/Linux, GNU/Herd, HP-UX, Iris, Minx, System V, Solaris, UnixWare. Clasificación de los Sistemas Operativos. Multiusuario. Permite que dos o mas usuarios utilicen sus programas al mismo tiempo Multiprocesador. Soporta abrir un programa más de una vez. Multitarea. Permite que varios programas se ejecuten al mismo tiempo.
  • 12. Multigrano. Permite que diversas partes de un solo programa funcionen al mismo tiempo Tiempo real. Responde alas entradas inmediatas. Tareas. •Glosario de términos. •Investigar la Clasificación de los sistemas operativos. •Elaborar un esquema de llaves que refleje de forma ordenada la clasificación de los sistemas operativos. •Análisis de la película: Los piratas de Silicón Valley.
  • 13. Clasificación de los sistemas operativos. • Tipos de Sistemas Operativos. • Primeros Sistemas. • Sistemas por lotes. • Multiprogramación. • Sistemas de tiempo compartido. • Sistemas de ordenadores personales. • Sistemas paralelos-multiprocesadores. • Sistemas distribuidos. • Sistemas en tiempo real. • Tendencias actuales y futuras en sistemas operativos. PRIMEROS SISTEMAS. Caracterización. Organización del trabajo. Mejoras. Desventajas.
  • 14. Gran tamaño y ejecución desde panel de control. Un solo usuario en cada momento. Operaciones: establecer inicio, activar ejecución, vigilar ejecución. *Físicas: lectores de tarjetas, impresoras y cintas magnéticas. *Reutilización de código: Bibliotecas de funciones comunes. *Desarrollo de ensambladores, compiladores y cargadores para facilitar las tareas de programación. *Drivers o subrutinas especiales para cada dispositivo de E/S. *Máquina parada mucho tiempo en el modo de trabajo. *Error podía implicar comenzar de nuevo. SISTEMAS POR LOTES. Organización del trabajo. Monitor residente. Tarjetas de control. Organización de la memoria para un monitor residente. *Operador especialista, minimiza tiempos de preparación. *Reducción de tiempos por agrupamiento en lotes que se pueden ejecutar a la vez. *Realiza automáticamente las acciones. *tratamiento de errores. *Carga y ejecución automática de la siguiente tarea. Para que el monitor residente sepa qué programa ejecutar. *Cargador, secuenciado de trabajos. *Drivers para cargador e intérprete. *Ventaja: eliminación del tiempo de preparación y del secuenciado manual de trabajos.
  • 15. El problema de la entrada/salida. Entrada/Salida muy lenta en comparación con la CPU, lo que indica que la CPU queda ociosa mucho tiempo esperando la terminación de las operaciones de entrada/salida. MULTIPROGRAMACIÓN. Debido al Spooling (reserva de trabajos en el disco), el sistema operativo escoge qué trabajo ejecutar a continuación, con el criterio de mejorar el aprovechamiento de la CPU. El aspecto más importante de la planificación es la Multiprogramación, aumentando el aprovechamiento de la CPU. Siempre habrá varios trabajos en memoria, el sistema operativo escogerá de entre ellos y lo ejecutará, de tal forma que siempre haya un trabajo en ejecución. Si un proceso se bloquea, esperando por la E/S, en la CPU ejecutamos instrucciones de otro proceso. Ejecución entrelazada de procesos: concurrencia. Mayor rendimiento, finalización de los trabajos en menos tiempo. SISTEMAS DE TIEMPO COMPARTIDO. ¿Por qué surgen? El usuario no puede interactuar con el trabajo durante su ejecución. Solución: Sistemas multitarea, apropiados para tareas cortas, tiempos de respuesta cortos. Desventajas: Perdemos productividad de la CPU Ventajas: Interacción usuario-sistema e ilusión de que cada usuario tiene su ordenador particular.
  • 16. SISTEMAS DE ORDENADORES PERSONALES SISTEMA SISTEMA PARALELOS- MULTIPROCESADORES.
  • 17. SISTEMAS DISTRIBUIDOS. Características:  El cómputo se reparte entre varios procesadores conectados en una red.  Cada procesador tiene su propia memoria local, ahora no comparten memoria ni reloj.  Comunicación entre procesadores a través de líneas de comunicación, buses de alta velocidad o líneas telefónicas.  Procesadores de distintos tamaños y funciones.  Escalable hasta millones de procesadores (Internet). SISTEMAS DISTRIBUIDOS.
  • 18. Ventajas:  Recursos compartidos: accesos remotos, compartición de archivos, BD distribuidas.  Computación más rápida, carga de trabajo compartida.  Fiabilidad: tolerancia a fallos por redundancia.  Comunicación: redes. Desventajas:  Comunicación compleja al no compartir memoria.  Redes de comunicaciones no fiable.  Heterogeneidad de los nodos. SISTEMA EN TIEMPO REAL.
  • 19.
  • 20. FUNCIONES DE LOS SISTEMAS OPERATIVOS.
  • 21. CAPAS DE UN SISTEMA OPERATIVO.
  • 22.
  • 23. PELÍCULA: LOS PIRATAS DE SILICON VALLEY. https://vimeo.com/55439991?from=facebook ESTRUCTURA DE UN SISTEMA OPERATIVO. Sistemas monolíticos. • En este modelo, para cada llamada al sistema hay un procedimiento de servicio que se encarga de la llamada y la ejecuta. • Los procedimientos utilitarios hacen cosas que necesitan varios procedimientos de servicio, como obtener datos de los programas de usuario.
  • 24. ESTRUCTURA DE UN SISTEMA MONOLÍTICO. Sistemas de capas. El primer sistema en capas fue el THE (TechnischeHogeschoolEindhoven) en Holanda.
  • 25. Microkernels. La idea básica es lograr una alta confiabilidad al dividir el sistema operativo en módulos pequeños y bien definidos, solo uno de los cuales se ejecuta en modo cerner y el resto se ejecuta como procesos de usuario ordinarios, sin poder relativamente. Estructura del sistema minis.
  • 26. Modelo cliente-servidor. 1. Existen dos clases de procesos: los servidores, cada uno de los cuales proporciona cierto servicio, y los clientes, que utilizan estos servicios. Este modelo se conoce como cliente-servidor. 2. La esencia es la presencia de procesos cliente y procesos servidor. 3. La comunicación entre clientes y servidores se lleva a cabo comúnmente mediante el paso de mensajes. Para obtener un servicio, un proceso cliente construye un mensaje indicando lo que desea y lo envía al servicio apropiado. Después el servicio hace el trabajo y envía de vuelta la respuesta. Si el cliente y el servidor se ejecutan en el mismo equipo se pueden hacer ciertas optimizaciones, pero en concepto estamos hablando sobre el paso de mensajes. Maquinas virtuales.
  • 27.  Cada máquina virtual es idéntica al verdadero hardware, cada una puede ejecutar cualquier sistema operativo que se ejecute directamente sólo en el hardware.  Distintas máquinas virtuales pueden ejecutar distintos sistemas operativos. Unidad 2 Fundamentos de Programación en C. Historia del Lenguaje C y Otros. Historia del Lenguaje C.  Nació en los laboratorios Bell de AT&T y ha sido asociado con el sistema operativo UNIX, ya que fue creado en este sistema.  Fue creado entre los años 1970 y 1972 por Brian Jeringan y Dennis Ricio para escribir el código del sistema operativo UNIX.  Fue uno de los lenguajes de programación más aceptados por los programadores, porque hace una combinación del lenguaje de alto nivel y lenguaje máquina.  C es el resultado de un proceso de desarrollo que inició con un lenguaje llamado BCPL. Luego apareció B, lo cual llevo al surgimiento del lenguaje C.
  • 28. Historia del Lenguaje C.  En 1978 Jeringan y Ricio publican el libro “Te C ProgrammingLanguage”, el cual es considerado “La Biblia del C”.  A mediados de los 80 ya habían compiladores en C, y muchas aplicaciones lo utilizaban para aprovechar sus ventajas.  Algunos fabricantes introducen mejoras en C, las cuales son recogidas por un comité de estandarización ANSI y establecen las especificaciones de lo que se conoce hoy en día como “ANSI C”.  En 1980 BjarneStroustrup de los laboratorios Bell de Murray Hill, New Jersey, adicionó las características de la programación orientada a objetos (POO) y lo denominó “C con clases”.  Para 1983 dicha denominación cambió a la de C++.  Con este nuevo enfoque surge la nueva metodología que aumenta las posibilidades de programación bajo nuevos conceptos.
  • 29. Lenguaje C y estándares.  Se crearon muchas implementaciones con C, sin embargo, como no existía ningún estándar, aparecieron discrepancias.  Para remediar la situación, el Instituto de Estándares América (ANSI) estableció un comité a mediados de 1983 para crear un estándar que definiera al lenguaje C.  Este comité terminó el proceso de formalización en 1990.  Empresas que se dedican a vender el compilador de C son:  Microsoft Visual C++.  Borlando C++ Boulder. Algunos de los C existentes.  Quick C.  C++.  Turbo C.  Turbo C++.  Borlando C.  Borlando C++.  Microsoft C.
  • 30. Variables en C.  En C toda variable antes de ser usada debe ser declarada, especificando el tipo de dato que almacenará.  Una variable en C se declara así:  <tipo de dato><nombre de variable> [, nombre de variable]; Tipo de datos en C.
  • 31. SISTEMAS OPERATIVOS: PROPIETARIO Y LIBRE. HARDWARE Y SOFTWARE.  HARDWARE: Se refiere a todas las partes tangibles de un sistema informático, sus componentes son: Disco duro, memoria, CPU, teclado, mouse, monitor, etc.  SOFTWARE: Es todo el conjunto intangible de datos y programas de la computadora.
  • 32. La interacción entre el software y el hardware hace operativa la computadora, es decir, el software envía instrucciones al hardware haciendo posible su funcionamiento. ¿QUÉ ES UN SISTEMA OPERATIVO?  Un Sistema Operativo es el software básico de una computadora que provee una interfaz entre el resto de programas del ordenador, los dispositivos hardware y el usuario.  Las funciones básicas del Sistema Operativo son administrar los recursos de la máquina, coordinar el hardware, organizar archivos y directorios en dispositivos de almacenamiento.
  • 33. SOFTWARE PROPIETARIO. Software no libre, software privativo, software privado, software con propietario o software de propiedad. Se refiere a cualquier programa informático en el que los usuarios tienen limitadas las posibilidades de usarlo, modificarlo o redistribuirlo con o sin modificaciones, o cuyo código fuente no está disponible o el acceso a éste se encuentra restringido. CARACTERÍSTICAS: * Este software no te pertenece no puedes hacerle ningún tipo de modificación al código fuente. * No puedes distribuirlo sin el permiso del propietario. * El usuario debe realizar cursos para el manejo del sistema como tal debido a su alta capacidad de uso. * Cualquier ayuda en cuanto a los antivirus. VENTAJAS: * Mayor mercado laboral actual. * Mejor protección de las obras con copyright. * Unificación de productos. * Facilidad de adquisición (puede venir preinstalado con la compra del PC, o encontrarlo fácilmente en las tiendas). * Existencia de programas diseñados específicamente para desarrollar una tarea. * Las empresas que desarrollan este tipo de software son por lo general grandes y pueden dedicar muchos recursos, sobretodo económicos, en el desarrollo e investigación. * Interfaces gráficas mejor diseñadas.
  • 34. SOFTWARE LIBRE. Es un programa o secuencia de instrucciones usada por un dispositivo de procesamiento digital de datos para llevar a cabo una tarea específica o resolver un problema determinado, sobre el cual su dueño renuncia a la posibilidad de obtener utilidades por las licencias, patentes, o cualquier forma que adopte su derecho de propiedad sobre él, por lo que puede utilizarse o transferirse sin pago alguno al licenciante, o a su creador. CARACTERÍSTICAS: 1. Se encuentra disponible el código fuente del software, por lo que puede modificarse el software sin ningún límite. 2. Libertad de estudiarlo y adaptarlo. 3. Libertad de distribuir copias. 4. Libertad de mejora y publicación de cambios. 5. Libertad de usar el programa con cualquier propósito. VENTAJAS: 1. El usuario no comete delito por tenerlo o usarlo. 2. Amplísima gama y variedad de herramientas libres. 3. Actualizaciones periódicas con frecuencia. 4. 100% libre de virus. 5. Altísimo nivel de estabilidad comprobada. 6. Tiene una gran comunidad de apoyo y soporte. 7. Diversidad de soluciones informáticas. 8. Costo. 9. Flexibilidad de las soluciones informáticas.
  • 35. NOMBRES DE SISTEMAS OPERATIVOS. 10.Linux. 11.Open sise. 12.Mandria. 13.Debían. 14.Ubuntu. 15.Solaris. 16.Sumían. 17.Windows 95. 18.Windows vista. 19.Windows NT. 20.Mac.
  • 37. Antecedentes. En la actualidad son muchos los avances tecnológicos que se tienen y se esperan aún más, por el momento tenemos los suficientes para saber qué es lo que está pasando en el mundo entero, esto gracias a las telecomunicaciones y a los dispositivos móviles. Observando el panorama en una ciudad, cualquier persona se da cuenta que la población está ocupada utilizando un dispositivo móvil, generando la incógnita de saber cuál es el sistema operativo dentro de ese dispositivo, y conocer que es lo que ha pasado con el sistema operativo desde sus inicios, lograr conocer un poco a su creador y ventajas sobre otro sistemas operativos para dispositivos móviles.
  • 38. Los celulares surgieron por la necesidad de estar comunicados uno con otros, su evolución ha sido muy grande y muy rápida, los primeros ejemplares solo servían para hacer llamadas y eran de un gran tamaño y peso, luego se fueron haciendo más pequeños y con mayores funciones.
  • 39.  Hoy en día se pueden enviar mensajes de texto a otros celulares, incluyeron en ellos la capacidad para reproducir música y la posibilidad de conectarse vía infrarrojo y posteriormente vía bluetooth.  Incluyendo en los mismos dispositivos la posibilidad de tomar fotos y/o videos así como una mayor capacidad de almacenamiento y una mayor definición, en un corto lapso se crearon celulares con la capacidad de conectarse a internet ya sea por la cobertura de la compañía o por medio de wiki y así facilitar la descarga de diferentes tipos de archivos.  Cada fabricante de celulares y/o dispositivos móviles tiene un sistema operativo con un sinfín de aplicaciones, hasta ahora los sistemas operativos para Smartphone más conocidos son el Idos de la compañía Apple, el sistema de Microsoft para móviles que es Windows pone, el sistema propio de Black Berry y el sistema operativo que fue adquirido por la empresa de golpe llamado Androide. SISTEMA OPERATIVO ANDROID.
  • 40. SISTEMA OPERATIVO ANDROID.  “Androide” fue una creación de Andy Rubín, quien comenzó con la propuesta de crear un sistema desde que se encontraba en la Universidad de Utica, Nueva York.
  • 41.  En la carrera de Ciencias de la computación en el año de 1986 después de haber terminado la carrera comienza a trabajar de una empresa a otra hasta que logró trabajar como ingeniero Apple, donde pasó a una empresa que surgió de Apple llamada General Mágica, y aquí empezó con lo importante, ya que participó en el desarrollo de Mágica Cup, lo que pretendía ser un sistema operativo para teléfonos.  Sin embargo General Mágica fracasó y se fue a la ruina, momento en el cual Andy se unió a Artemis Resecar, que fue comprada por Microsoft.  Después de un lapso ambicionó hacer algo por cuenta propia, y fundó Tánger Inc., que finalmente sería también comprada por Microsoft. En Tánger Inc. suceden cosas muy importantes:  La primera es que desarrollan el Hip-top, lo que es ya un teléfono que marcaría las primeras líneas de lo que serían los Smartphone, y la segunda es que se ve tan frustrado que decide abandonar la compañía de la que era CEO.  Todo ello le llevo a su paso final en esta etapa, fundar en 2003 Android Inc.  En Agosto de 2005, cuando Android Inc. contaba con veintidós meses de vida, Google adquirió la empresa, pero esta vez se ve que Andy se mostró satisfecho con esta venta, no como ocurrió
  • 42. con Danger Inc. Andy pasa a formar parte del equipo de Google, y es donde trabaja como vicepresidente de ingeniería de Google supervisando el desarrollo de Android.  El 5 de Noviembre de 2007 que se hizo el anuncio oficial de Android. Pero durante estos dos años Google había estado trabajando, moviéndose, y una de ella fue llegar a acuerdos con fabricantes de teléfonos móviles para desarrollar el primer dispositivo Android de la historia. VERSIONES DE ANDROID.  Versiones previas de Android, aparecen Astro boy o Bender.  Android 1.0 o Apple Pie.  Android 1.1 – PetitFour.  Android 1.5 – Cup cake.  Android 1.6 – Donut.  Android 2.0 – Éclair.  Android 2.1 – Éclair.  Android 2.2 – Froyo.  Android 2.3 – Ginger bread.  Android 3.0 – Honeycomb.  Android 4.0 – Ice Cream Sándwich.  Android 4.1 – JellyBean.
  • 43. 10AZONES PARA ELEGIR ANDROID. 1. Es el más utilizado del mundo. 2. Es libre. 3. Es muy personalizable. 4. Es legal modificarlo. 5. Cuenta con más aplicaciones. 6. Hay más aplicaciones gratuitas. 7. Los SmarthphoneAndroid son más baratos. 8. Cuenta con una mayor comunidad. 9. No es Apple. 10. Android es de Google.
  • 44. ANDY. Andy es muñeco verde, logotipo del sistema operativo Android. Salió por primera vez en el año 2005, cuando Google compró la empresa Android Inc. Desde entonces, este se ha convertido en la imagen referencia de Google, en cuanto a Smartphone y tabletas se refiere. No se esperaban la buena aceptación y la repercusión que tuvo, desde el primer momento, el susodicho robot verde. Aunque existen teorías que dicen que "Andy" está inspirado en R2D2 (de la ya famosa saga de StarWars).
  • 45. Andy, el muñequito, se parece a un robotito en un videojuego de los años 90. Entre los personajes de ese juego se haya uno que deja una clara pista sobre si Andy es una copia o un diseño 100% original. La verdad es que las similitudes entre ambos son asombrosas. Desde las antenas y su forma regordeta, hasta llegar a las extremidades. Si no fuera por esa cinta azul en el torso, además, los dos se llaman igual, Android. La diseñadora encargada del proyecto es Irina Blok. DISEÑADORA DE ANDY.
  • 46. VERSIONES.  Android 1.0 (G1). El primer dispositivo contaba con GPS y Bluetooth, Multitarea, Estrecha integración con los servicios de Google como Gmail, Google Maps (con Street View), y Google Calendar, Aplicaciones: Amazon MP3 Store, YouTube, AndroidMarket (cerca de 35 aplicaciones en el lanzamiento), No Microsoft Exchange Server, sin cámara de video.  Android 1.1-Petit Four. En febrero de 2009 llego la primera actualización para Android, unos tres meses después del lanzamiento del G1. La versión 1.1 fue dedicada básicamente a reparar errores e implementar las actualizaciones
  • 47. “overthe air” que hasta ese momento ninguna plataforma estaba haciendo.  AndroidCupcake-Versión 1.5 Android 1.5 es mejor conocido por su nombre en clave, Cup cake, fue la primera versión en utilizar nombre de postres. Cada versión después de Cup cake ha sido nombrada con un nombre de postre continuando el orden alfabético. En esta versión se comenzaron a ver algunos cambios en la interfaz de usuario, como son los cambios en la barra del buscador y en la barra del menú, también cambió el logo del navegador.  Android Donut-Versión 1.6 El sistema operativo lanza una nueva versión en el mes de Septiembre del año 2009 que es novedad y muy aceptada entre todos los usuario Android que en este lapso ya comienza el auge dentro del mercado. La versión se destaca por las funciones con las que cuenta entre las que se destacan son la de navegación en Google Maps paso-a-paso, mejora en el interfaz de la cámara de foto y video, búsquedas por voz.  AndroidEclair-Versión 2.0 Versión del sistema operativo lanzada al mercado en el mes de Diciembre de 2009, con zoom digital de la cámara de fotos y video, mejoras en Google Maps,
  • 48. nuevo navegador de internet con soporte de video e incluso de Flash, salvapantallas animadas. Esta es la versión que comienza a demostrar la robustez y estabilidad como sistema operativo para dispositivos móviles.  Android 2.1-Eclair 2. Versión lanzada en Enero de 2010, entre sus características principales se encuentran las siguientes: Fondo de pantalla en vivo, cinco pantallas de inicio, Voz a texto añadido a cualquier campo de texto, icono del micrófono para el dictado de voz en mensajes en correo electrónico, los textos, y así sucesivamente.  AndroidFroyo-Versión 2.2 Fue lanzado en Mayo de 2010, dentro de las funciones del sistema se encuentran la mejora de memoria, mucho más veloz que las versiones anteriores, hotspotWiFi incluido, soporte de correo electrónico Microsoft Exchange y video llamada. Soporta Flash. Ya tomando su sitio de honor entre la mayoría de los dispositivos móviles a nivel mundial. Excelente aceptación por parte de los usuarios.  AndroidGingerbread-Versión 2.3 Versión de Android que se lanza en el mes de Diciembre de 2010 cuya aceptación en el mercado
  • 49. sigue siendo muy buena, ya que cuenta con mejores características visuales dentro de las aplicaciones que se muestran en el menú del dispositivo móvil. Dentro de las funciones que se encuentran en la versión son la mejora del soporte de video online, mejora de la gestión de la energía (y consumo de la batería), mejora del teclado virtual, soporte para pagos. Posibilidades para usuarios totalmente conectados.  AndroidHoneyComb-Versión 3.0/3.4 Sistema operativo optimizado para tabletas, posee plenas funcionalidades multitareas multitasking para cambiar de aplicaciones en uso dejando las demás en espera visibles en una columna, soporte Flash y DivX, aparte de los navegadores privados tradicionales integra Dolphin, home page personalizable y widgets. Soporte de gráficos 3D, Side-by-side las pestañas del navegador, navegación privada, Panel de doble modo de libreta de direcciones, e-mail, Interfaz de usuario rediseñada incluye miniaturas del programa, Video chat con Google Talk, Pantalla completa en modo de galería de fotos, Bluetooth tethering.  AndroidIcecreamSandwich-Versión 4.0
  • 50. Lanzada al mercado a finales del año 2011, cuenta con las funciones de diseñado para todos los dispositivos móviles en que se puede instalar como son Smartphone, tabletas y notebooks de todas las medidas y marcas, pantalla principal con imágenes 3D, barras de estado y widgetsredimensionables, reconocimiento facial, mejora de reconocimiento de voz; soporte USB para teclados y controles para PS3. Novedades y mejoras en la navegación e interfaz, con el objetivo de dinamizar y facilitar la experiencia del usuario.  Android 4.2-Jelly Bean. Lanzada en 2012, la versión mencionada se destaca sobre todo que cada vez más el sistema se irá depurando y solucionado todo, y así también llegará también a más público alrededor del mundo, que es su objetivo final. Para lograrlo se utiliza el proyecto mantequilla que fue como decidieron nombrarlo los programadores del sistema, o mejor descrito como Project Butter que es el nombre que se ha escogido para describir algunos objetivos en esta versión Android. Entrando a términos de software, la siguiente versión será mucho más fluida, más rápida y más suave, para el agrado de los usuarios.
  • 51.  Android 5.0-Key Lime Pie. La denominación como ya es una costumbre vuelve a basarse en la curiosa correlación de postres ordenados de forma alfabética y en la imagen se muestra al androide verde comiendo cada uno de ellos desde que se lanzó la primera versión hace cinco años, bautizada como Apple Pie. Google actualmente.
  • 52.
  • 53. SEGURIDAD Y PRUEBAS DEL SOFTWARE. Seguridad de la información. Conjunto de políticas, procedimientos, tecnologías y personas que pretenden minimizar el nivel de riesgo de que sea comprometida alguna de las características de la información. Riesgo. Probabilidad que tiene un activo de ser comprometido por parte de una amenaza.
  • 54. Características de la información. SEGURIDAD INFORMÁTICA. Componente de la seguridad de la información definido como un conjunto de políticas y mecanismos tecnológicos que pretenden garantizar la confidencialidad, integridad y disponibilidad de los recursos de un sistema informático. INSEGURIDAD INFORMÁTICA. Es la falta o poca presencia de controles de seguridad en un sistema operativo, aplicación, red, dispositivo o procedimiento. VULNERABILIDAD. Debilidad presente en un sistema informático que permite que sus componentes y la información que procesa pueda ser comprometida.
  • 55. Según la jerga de la seguridad informática una vulnerabilidad también es conocida como un agujero de seguridad. Las vulnerabilidades surgen por:  Mal diseñodel sistema informático.  Ladeficiente implementación del sistema informático.  Pobres procedimientos para operar y administrar el sistema informático. Ciclo de vida de una vulnerabilidad.
  • 56. Amenaza. Circunstancia o Evento que puede causar daño comprometiendo la confidencialidad, integridad o disponibilidad de la información. El término hace referencia a un evento:  Infección por un virus de computadora.  Robo de información.  Terremoto. Aprovechamiento de una vulnerabilidad por parte de una amenaza.
  • 57. Riesgos. Es la probabilidad de que una amenaza se aproveche de una vulnerabilidad. Una vulnerabilidad o una amenaza por separado, no representan un peligro. Pero si se juntan se convierten en un riesgo. Vulnerabilidad + Amenaza = Riesgo. “Los riesgos nunca se eliminan… se gestionan”. Acciones a tomar durante un riesgo.
  • 58. Hackers.  El sustantivo hacker es un neologismo utilizado para referirse a personas expertas en varias o una rama técnica relacionada con la informática (programación, redes de computadores, sistemas operativos, hardware de voz/datos, etc…).  A nivel tecnológico el termino hacking se usa para referirse al arte informático de descubrir y solucionar problemas que atenten contra la seguridad de un sistema o aplicación.  El sustantivo cracker (Criminal hacker) hace referencia a personas que usan las técnicas de hacking con fines ofensivos.
  • 59.
  • 60.
  • 61. Clasificación HACKERS UNDERGROUND.  SAMURAI. Nivel más alto en la jerarquía, se supone tiene conocimientos y habilidades superiores.  BUCANERO. Hacker con conocimientos y habilidades considerables sobre hacking Conoce a fondo el funcionamiento de muchas herramientas y tiene la habilidad de construir las suyas.
  • 62.  SCRIPT KIDDIE. Persona con conocimientos medios, conoce comandos de sistemas operativos. Tienen habilidades de crear y correr scripts básicos.  LAMMER. Persona con conocimientos muy básicos sobre hacking Usa herramientas de terceros pero NO sabe cómo funcionan.  NEWBIE. Prospecto de hacker, en proceso de iniciación en el mundo del hacking.
  • 63. CLASIFICACIÓN DE HACKERS FBI. LA CULTURA DEL HACKER.  El hacker desea saber cada vez más.  Su obsesión por aprender es enfermiza.  Existen grandes comunidades a nivel mundial: Grupos. Foros. Canales de chat.  Algunas motivaciones para los hackers: Curiosidad.
  • 65. Ataque informático.  Toda aquella acción que conlleve a poner en riesgo las propiedades de confidencialidad, integridad y disponibilidad de un sistema.  También se pueden considerar como la consumación de una amenaza.  Un ataque no se realiza en un solo paso, es una metodología estructurada. Tipos de ataques.
  • 67. Dualismo de la inseguridad informática.
  • 68. Jornalización de la asignatura. UNIVERSIDAD GERARDO BARRIOS JORNALIZACIÓN DE LA ASIGNATURA CICLO I – 2015 FACULTAD: ____CIENCIA Y TECNOLOGÍA____________________________________ ASIGNATURA: ____SISTEMAS OPERATIVOS__________________ GRUPO:”UNICO”__ DÍAS: ___MIERCOLES Y JUEVES ___ AULA: ___3A_ HORA: _10:40 AM A 12:20 MD_ CARRERA: ___TECNICO EN INGENIERIA EN SISTEMAS Y REDES INFORMATICAS______ DOCENTE: ___ LICDA. CARLA MILAGRO LOPEZ VASQUEZ_____________ N ° FECHA Contenidos temáticosDí a M e s 1 28 E ne ro Saludo y Presentación. Descripción de la Asignatura y Formas de evaluación. Reglamento de la cátedra durante el presente ciclo. Diagnóstico general del grupo y Definición de roles por equipo. 2 29 E n e r o Unidad 01 Introducción a los sistemas operativos. 1.1 ¿Qué es un sistema operativo? 1.2 Historia de los sistemas operativos. Actividad: Foro Virtual.
  • 69. N ° FECHA Contenidos temáticosDí a M e s 3 4 F e b r e r o Explicación: Esquema de llaves sobre clasificación de los sistemas operativos y glosario. 1.3 Clasificación de los sistemas operativos. 1.4 Funciones de los sistemas operativos. 1.5 Capas de un sistema operativo. 4 5 F e b r e r o Revisión Esquema de Llaves sobre Clasificación de los Sistemas Operativos y glosario. Laboratorio 15%. 5 11 F e b r e r o Unidad 02 Fundamentos de programación en C. 2.1 Historia del lenguaje de programación C. 2.2 Lenguaje de programación C y Sistemas Operativos. 2.3 Variables y tipos de datos en C. 6 12 F e b r e r o Unidad 03 Conceptos introductorios de arquitectura del computador. 3.3 Definición de computadora. 7 18 F e b r e Explicación: 3.2 Estructura del computador (Arquitectura Von Newman).
  • 70. N ° FECHA Contenidos temáticosDí a M e s r o 8 19 F e b r e r o Revisión de Infografía sobre Arquitectura de Von Newman, Laboratorio 15%. 9 25 F e b r e r o Unidad 04 Sistemas operativos libres y propietarios. 4.1 Definiciones. 4.2 Ventajas y desventajas. 1 0 26 F e b r e r o 4.3 Sistemas operativos y empresas: Inversión. Explicación: 4.4 Sistemas operativos que utilizan las empresas usulutecas (investigación). 4.5 Sistemas operativos para dispositivos móviles. 1 1 4 M a rz o Revisión de Investigación sobre Sistemas Operativos que utilizan las empresas usulutecas. Laboratorio 30%. 1 2 5 M a rz o PRIMER EXAMEN PARCIAL 40%.
  • 71. N ° FECHA Contenidos temáticosDí a M e s 1 3 11 M ar z o Unidad 05 Procesos de sistemas operativos. 5.1 Concepto de proceso. 1 4 12 M a rz o 5.2 Componentes de los procesos. 1 5 18 M a rz o 5.3 Jerarquía de procesos. 1 6 19 M a rz o 5.4 Hilos. 1 7 25 M a rz o 5.5 Servicios POSIX relacionados con el trabajo de procesos. 1 8 26 M a rz o Control de lectura 10%. DEL 30 DE MARZO AL 5 DE ABRIL – VACACIONES DE SEMANA SANTA 1 9 8 A b ril Unidad 06 Comunicación y Sincronización de Procesos. 6.1 Problemas clásicos de comunicación y sincronización. 2 0 9 A b 6.2 Mecanismos de comunicación y sincronización de
  • 72. N ° FECHA Contenidos temáticosDí a M e s ril procesos. 6.3 Servicios POSIX relacionados con la comunicación y sincronización de procesos. Explicación: Guía de trabajo A. 2 1 15 A b ril Revisión Guía de Trabajo A 20%. 2 2 16 A b ril Unidad 07 El sistema operativo y la gestión de recursos. 7.1 Conceptos de arquitectura de memoria. 7.2 Los sistemas operativos y la gestión de memoria. 2 3 22 A b ril 7.3 La memoria como mecanismo de comunicación. 7.4 El sistema operativo y el manejo de archivos. 7.5 Servicios POSIX relacionados con memoria compartida. Explicación: Guía de Trabajo B. 2 4 23 A b ril Unidad 08 Seguridad y protección en los sistemas operativos. 8.1 Definición de seguridad y protección desde el punto de vista de los Sistemas Operativos. 2 5 29 A b ril Revisión Guía de Trabajo B 15%. 2 6 30 A b ril 8.2 Problemáticas de la seguridad 8.3 Riesgos de la seguridad. Actividad: Blog.
  • 73. N ° FECHA Contenidos temáticosDí a M e s 2 7 6 M a y o Laboratorio Escrito 15%. 2 8 7 M a y o SEGUNDO EXAMEN PARCIAL 40%. 2 9 13 M a y o 8.4 Disección de un ataque a la seguridad. Actividad: Crear diagrama modelo. 3 0 14 M a y o 8.5 Mecanismos de seguridad y protección. Actividad: Slideshare. 3 1 20 M a y o Unidad 09 Estudios de casos. Explicación: Guía de Trabajo C. 9.1 Windows. 3 2 21 M a y o 9.2 Linux. 9.3 Móviles. 3 3 27 M a y o Proyecto Integrador 30%. 3 4 28 M a Revisión Guía de Trabajo C 15%.
  • 74. N ° FECHA Contenidos temáticosDí a M e s y o 3 5 3 J u ni o 15% en todas las preparaciones. Preparación de Máquinas Virtuales. 3 6 4 J u ni o Preparación de Máquinas Virtuales. 3 7 10 J u ni o 40% en todas las instalaciones. Defensa de Instalación de SO Windows en máquina virtual. 3 8 11 J u ni o Defensa de Instalación de SO Windows en máquina virtual. 3 9 11 J u ni o Defensa de Instalación de Ubuntu en Máquina Virtual. 4 0 11 J u ni o Defensa de Instalación de Ubuntu en Máquina Virtual.
  • 75. Calendarización. FECHAS ACTIVIDADES A EVALUAR PORCENTAJE DEL COMPUTO 5/Febrero/2015 Revisión de Esquema de Llaves sobre Clasificación de los SO y Glosario. 15% 19/Febrero/2015 Revisión Infografía sobre Arquitectura Von Newmann. 15% 4/Marzo/2015 Investigación sobre SO que utilizan las empresas usulutecas. 30% 5/Marzo/2015 Primer Examen Parcial. 40% Total Cómputo I 100% 26/Marzo/2015 Control de Lectura. 10% 15/Abril/2015 Revisión Guía de Trabajo A. 20% 29/Abril/2015 Revisión Guía de 15%
  • 76. Trabajo B. 6/Mayo/2015 Laboratorio Escrito. 15% 7/Mayo/2015 Segundo Examen Parcial 40% Total Cómputo II 100% 27/Mayo/2015 Proyecto Integrador. 30% 28/Mayo/2015 Revisión Guía de Trabajo C. 15% 3/Junio/2015 Preparación de Máquina Virtual. 15% 10/Junio/2015 Instalación de SO. 40% Total Cómputo III 100% Procesos de Sistemas Operativos – Control de Lectura. UNIVERSIDAD GERARDO BARRIOS CENTRO REGIONAL DE USULUTAN FACULTAD DE CIENCIA Y TECNOLOGIA SISTEMAS OPERATIVOS DOCENTE: LICDA. CARLA MILAGRO LOPEZ VASQUEZ, MIW. CONTROL DE LECTURA FECHA DE EVALUACION: 9/ABRIL/2015 Unidad 05 - Procesos de sistemas operativos. Concepto de proceso. En un sistema multiprogramado o de tiempo compartido, un proceso es la imagen en memoria de un programa, junto con la información relacionada con el estado de su ejecución. Un programa es una entidad pasiva, una lista de instrucciones; un proceso es una entidad activa, que –empleando al programa– define la actuación que tendrá el sistema. En contraposición con proceso, en un sistema por lotes se habla de tareas.
  • 77. Una tarea requiere mucha menos estructura, típicamente basta con guardar la información relacionada con la contabilidad de los recursos empleados. Una tarea no es interrumpida en el transcurso de su ejecución. Ahora bien, esta distinción no es completamente objetiva -y se pueden encontrar muchos textos que emplean indistintamente una u otra nomenclatura. Si bien el sistema brinda la ilusión de que muchos procesos se están ejecutando al mismo tiempo, la mayor parte de ellos típicamente está esperando para continuar su ejecución- en un momento determinado sólo puede estar ejecutando sus instrucciones un número de procesos igual o menor al número de procesadores que tenga el sistema. Estados de un proceso. Un proceso, a lo largo de su vida, alterna entre diferentes estados de ejecución. Éstos son: Nuevo: Se solicitó al sistema operativo la creación de un proceso, y sus recursos y estructuras están siendo creadas. Listo: Está listo para iniciar o continuar su ejecución pero el sistema no le ha asignado un procesador. En ejecución: El proceso está siendo ejecutado en este momento. Sus instrucciones están siendo procesadas en algún procesador. Bloqueado: En espera de algún evento para poder continuar su ejecución (aun si hubiera un procesador disponible, no podría avanzar). Zombie: El proceso ha finalizado su ejecución, pero el sistema operativo debe realizar ciertas operaciones de limpieza para poder eliminarlo de la lista. Terminado: El proceso terminó de ejecutarse; sus estructuras están a la espera de ser limpiadas por el sistema operativo. Diagrama de transición entre los estados de un proceso. Componentes de
  • 78. Componentes de los procesos. La información que debe manipular el sistema operativo relativa a cada uno de los procesos actuales se suele almacenar en una estructura llamada bloque de control de proceso (PCB - Process Control Block). El PCB incluye campos como: Estado del proceso: El estado actual del proceso. Contador de programa: Cuál es la siguiente instrucción a ser ejecutada por el proceso. Registros del CPU: La información específica del estado del CPU mientras el proceso está en ejecución (debe ser respaldada y restaurada cuando se registra un cambio de estado). Información de planificación (scheduling): La prioridad del proceso, la cola en que está agendado, y demás información que puede ayudar al sistema operativo a planificar los procesos. Información de administración de memoria: La información de mapeo de memoria (páginas o segmentos, dependiendo del sistema operativo), incluyendo la pila (stack) de llamadas. Información de contabilidad: Información de la utilización de recursos que ha tenido este proceso —puede incluir el tiempo total empleado y otros (de usuario, cuando el procesador va avanzando sobre las instrucciones del programa propiamente, de sistema cuando el sistema operativo está atendiendo las solicitudes del proceso), uso acumulado de memoria y dispositivos, etcétera. Estado de E/S: Listado de dispositivos y archivos asignados que el proceso tiene abiertos en un momento dado. Procesos e Hilos. La cantidad de información que el sistema operativo debe manejar acerca de cada proceso es bastante significativa. Si cada vez que el planificador elige qué proceso pasar de Listo a En ejecución debe considerar buena parte de dicha información, la simple transferencia de todo esto entre la memoria y el procesador podría llevar a un desperdicio burocrático de recursos. Una respuesta a esta problemática fue la de utilizar los hilos de ejecución, a veces conocidos como procesos ligeros (LWP, Lightweight processes). Cuando se consideran procesos basados en un modelo de hilos, se puede proyectar en sentido inverso que todo proceso es como un solo hilo de ejecución. Un sistema operativo que no ofreciera soporte expreso a los hilos los planificaría exactamente del mismo modo. Pero visto desde la perspectiva del proceso hay una gran diferencia: si bien el sistema operativo se encarga de que cada proceso tenga una visión de virtual exclusividad sobre la computadora, todos los hilos de un proceso comparten un sólo espacio de direccionamiento en memoria y los archivos y dispositivos abiertos. Cada uno de los hilos se ejecuta de forma (aparentemente) secuencial y maneja su propio contador de programa y pila. Patrones de trabajo con hilos. Hay tres patrones en los que caen generalmente los modelos de hilos; se puede emplear más de uno de estos patrones en diferentes áreas de cada aplicación, e incluso se pueden anidar (esto es, se podría tener una línea de ensamblado dentro de la cual uno de los pasos sea un equipo de trabajo):
  • 79. a) Jefe/Trabajador: Un hilo tiene una tarea distinta de todos los demás: el hilo jefe genera o recopila tareas para realizar, las separa y se las entrega a los hilos trabajadores. Este modelo es el más común para procesos que implementan servidores (es el modelo clásico del servidor Web Apache) y para aplicaciones gráficas (GUI), en que hay una porción del programa (el hilo jefe) esperando a que ocurran eventos externos. El jefe realiza poco trabajo, se limita a invocar a los trabajadores para que hagan el trabajo de verdad; como mucho, puede llevar la contabilidad de los trabajos realizados. Típicamente, los hilos trabajadores realizan su operación, posiblemente notifican al jefe de su trabajo, y finalizan su ejecución. Patrón de hilos Jefe/Trabajador b) Equipo de trabajo: Al iniciar la porción multihilos del proceso, se crean muchos hilos idénticos, que realizarán las mismas tareas sobre diferentes datos. Este modelo es frecuentemente utilizado para cálculos matemáticos (p. ej.: criptografía, render, álgebra lineal). Puede combinarse con un estilo jefe/trabajador para irle dando al usuario una previsualización del resultado de su cálculo, dado que éste se irá ensamblando progresivamente, pedazo por pedazo. Patrón de hilos Equipo de Trabajo.
  • 80. c) Línea de Ensamblado: Si una tarea larga puede dividirse en pasos sobre bloques de la información total a procesar, cada hilo puede enfocarse a hacer sólo un paso y pasarle los datos a otro hilo conforme vaya terminando. Una de las principales ventajas de este modelo es que ayuda a mantener rutinas simples de comprender, y permite que el procesamiento de datos continúe, incluso si parte del programa está bloqueado esperando E/S. Un punto importante a tener en cuenta en una línea de ensamblado es que, si bien los hilos trabajan de forma secuencial, pueden estar ejecutándose paralelamente sobre bloques consecutivos de información y eventos. Patrón de hilos Línea de Ensamblado. Concurrencia. Desde un punto de vista formal, la concurrencia no se refiere a dos o más eventos que ocurren a la vez sino a dos o más eventos cuyo orden es no determinista, esto es, eventos acerca de los cuales no se puede predecir el orden relativo en que ocurrirán. Si bien dos procesos (o también dos hilos) completamente independientes entre sí ejecutándose simultáneamente son concurrentes, los
  • 81. temas que en la presente sección se expondrán se ocupan principalmente de procesos cuya ejecución está vinculada de alguna manera (p. ej.: dos procesos que comparten cierta información o que dependen uno del otro). Aunque una de las tareas principales de los sistemas operativos es dar a cada proceso la ilusión de que se está ejecutando en una computadora dedicada, de modo que el programador no tenga que pensar en la competencia por recursos, a veces un programa requiere interactuar con otros: parte del procesamiento puede depender de datos obtenidos en fuentes externas, y la cooperación con hilos o procesos externos es fundamental. Para presentar la problemática y los conceptos relacionados con la concurrencia suelen utilizarse algunos problemas clásicos, que presentan casos particulares muy simplificados, y puede encontrárseles relación con distintas cuestiones que un programador enfrentará en la vida real. Cada ejemplo presenta uno o más conceptos. Se recomienda comprender bien el ejemplo, el problema y la solución y desmenuzar buscando los casos límite como ejercicio antes de pasar al siguiente caso. Caso práctico: El Jardín Ornamental. Planteamiento. Un gran jardín ornamental se abre al público para que todos puedan apreciar sus fantásticas rosas, arbustos y plantas acuáticas. Por supuesto, se cobra una módica suma de dinero a la entrada para lo cual se colocan dos torniquetes, uno en cada una de sus dos entradas. Se desea conocer cuánta gente ha ingresado al jardín así que se instala una computadora conectada a ambos torniquetes: estos envían una señal cuando una persona ingresa al jardín. Se realiza un modelo simplificado de la situación, así que no se estudiarán los detalles del hardware utilizado. Aquí es importante notar que los dos torniquetes son objetos que existen y se comportan en paralelo e independientemente: los eventos que generan no tienen un orden predecible. Es decir, que cuando se escriba el software no se sabe en qué momento llegará cada visitante ni qué torniquete utilizará. Se simulará un experimento en el que 20 visitantes ingresan por cada torniquete. Al final de la simulación deberá haber 40 visitantes contados. Nota: Elabore un flujograma o algoritmo que represente la solución para el problema “El Jardín Ornamental”. Puede utilizar la estructura que mejor se adapte al caso.
  • 82. En un sistema operativo multitarea cuando un proceso agota su porción de tiempo de procesador (quantum) o detiene su ejecución por otra razón, los valores almacenados en registros se preservan (junto con la información sobre el proceso) para poder restaurarlo cuando la ejecución continúe (de esta forma se provee la ilusión de la multitarea en sistemas de un solo núcleo). Así, en el problema del jardín ornamental cada torniquete tiene su propia copia de los valores en los registros. Sin embargo, se supone que el resto de la memoria es compartida (en particular, se utiliza ese hecho para llevar la cuenta de personas que ingresan). Bloqueos mútuos e inanición. Bloqueo mútuo: Situación que ocurre cuando dos o más procesos poseen determinados recursos, y cada uno queda detenido, a la espera de alguno de los que tiene el otro. El sistema puede seguir operando normalmente, pero ninguno de los procesos involucrados podrán avanzar. Inanición: Situación en que un proceso no puede avanzar en su ejecución dado que necesita recursos que están (alternativamente) asignados a otros procesos. Caso práctico: La cena de los filósofos. Planteamiento. Cinco filósofos se dan cita para comer arroz en una mesa redonda. En ella, cada uno se sienta frente a un plato. A su derecha, tiene un palito chino, y a su izquierda tiene otro. Los filósofos sólo saben pensar() y comer(). Cada uno de ellos va a pensar() un tiempo arbitrario, hasta que le da hambre. El hambre es mala consejera, por lo que intenta comer(). Los requisitos son: Sólo un filósofo puede sostener determinado palito a la vez, esto es, los palitos son recursos de acceso exclusivo.
  • 83. Debe ser imposible que un filósofo muera de inanición estando a la espera de un palito. Debe ser imposible que se presente un bloqueo mutuo. Debe ser posible que más de un filósofo pueda comer al mismo tiempo. Nota: Elabore un flujograma o algoritmo que represente la solución para el problema “La cena de los filósofos”. Puede utilizar la estructura que mejor se adapte al caso. Ejemplo de Bloqueo Mútuo.
  • 84. Un bloqueo mutuo puede ejemplificarse con la situación que se presenta cuando cuatro automovilistas llegan al mismo tiempo al cruce de dos avenidas del mismo rango en que no hay un semáforo, cada uno desde otra dirección. Los reglamentos de tránsito señalan que la precedencia la tiene el automovilista que viene más por la derecha. En este caso, cada uno de los cuatro debe ceder el paso al que tiene a la derecha —y ante la ausencia de un criterio humano que rompa el bloqueo, deberían todos mantenerse esperando por siempre. Un bloqueo mutuo se presenta cuando (Condiciones de Coffman): 1. Los procesos reclaman control exclusivo de los recursos que piden (condición de exclusión mutua). 2. Los procesos mantienen los recursos que ya les han sido asignados mientras esperan por recursos adicionales (condición de espera por). 3. Los recursos no pueden ser extraídos de los procesos que los tienen hasta su completa utilización (condición de no apropiatividad). 4. Hay una cadena circular de procesos en la que cada uno mantiene a uno o más recursos que son requeridos por el siguiente proceso de la cadena (condición de espera circular). Servicios POSIX relacionados con el trabajo de procesos. El término POSIX corresponde a las iniciales de interfase de sistema operativo portable (Portable Operating System Interface). Es un estándar de interfase de sistema operativo, basado en el popular sistema operativo UNIX. El estándar POSIX está actualmente en desarrollo, y su principal objetivo es permitir la portabilidad de aplicaciones a nivel de código fuente, es decir, que sea posible portar una aplicación de un computador a otro sin más que recompilar su código. El POSIX es un estándar de sistema operativo en evolución. Una importante parte de este estándar está pensada para proporcionar la portabilidad de las aplicaciones con requerimientos de tiempo real. Junto a las interfases de servicios del sistema, se estandarizan también perfiles de entornos de aplicaciones que permitirán a los implementadores desarrollar sistemas operativos POSIX de tiempo real para una gran variedad de plataformas, desde los sistemas empotrados pequeños hasta los sistemas de tiempo real grandes. El estándar define interfaces en diferentes lenguajes de programación. En particular, las interfaces de tiempo real están siendo definidas para C y Ada, que son los lenguajes estándar de programación más importantes para los sistemas prácticos de tiempo real.
  • 85. La funcionalidad especificada en el estándar POSIX es similar a la que se encuentra en la mayoría de los núcleos y sistemas operativos de tiempo real disponibles comercialmente. Las interfases POSIX se han definido de acuerdo con resultados recientes de la teoría de planificación con prioridades estáticas. Algunas implementaciones basadas en borradores iniciales de los estándares POSIX.4 y POSIX.4a ya han sido desarrolladas y muestran resultados muy prometedores. En resumen, el estándar POSIX permitirá construir sistemas predecibles y analizables que cumplen sus requerimientos de tiempo real, y que pueden ser fácilmente portables de unas plataformas a otras. Términos básicos a investigar. 1. Programa. 2. Procesos. 3. Hilos. 4. Hebras. 5. Multihilos. 6. POSIX. 7. Servicios del sistema operativo. 8. API. 9. Sincronización. 10. Variable global.
  • 86. CENTRO REGIONAL DE USULUTAN FACULTAD DE CIENCIA Y TECNOLOGIA SISTEMAS OPERATIVOS DOCENTE: LICDA. CARLA MILAGRO LOPEZ VASQUEZ, MIW. FECHA DE EVALUACION: 22/ABRIL/2015 Indicación general: Resuelva ordenadamente los ítems que se presentan a continuación. La solución de la guía deberá ser en parejas y presentarla impresa El miércoles 22 de abril sin excepciones. ÍTEMS 1) Investigue ¿Cuáles son los problemas clásicos de comunicación y sincronización de procesos? Elabore un listado y descríbalos. Ejemplos. 2) Mencione ¿Cuáles son los mecanismos de sincronización entre procesos? Descríbalos. Ejemplos. 3) Defina ¿Qué es POSIX? Y ¿Cómo se relaciona con la comunicación y sincronización de procesos? Ejemplos. 4) Agregue información adicional complementaria acerca de la Unidad 06. Máximo 1 página. de procesos
  • 87. UNIVERSIDAD GERARDO BARRIOS CENTRO REGIONAL DE USULUTAN FACULTAD DE CIENCIA Y TECNOLOGIA SISTEMAS OPERATIVOS DOCENTE: LICDA. MIW. CARLA MILAGRO LOPEZ VASQUEZ FECHA DE REVISION: 29/ABRIL/2015 Indicaciones generales: Resuelva ordenadamente los ítems que se presentan a continuación. La solución de la guía deberá ser en equipos de 5 integrantes máximo. Deberá ser presentada en formato blog o sitio web (1 por equipo). Fecha de entrega: miércoles 29 de abril sin excepciones. PUNTOS A RESOLVER 1) Defina el término: Arquitectura de memoria. 2) Explique la diferencia entre memoria RAM, ROM y EPROM. 3) ¿Qué es memoria real? 4) ¿Qué es memoria virtual? 5) Defina ¿Qué es unidad de manejo de memoria? 6) ¿Qué es segmentación de memoria? 7) La memoria como mecanismo de comunicación. 8) El sistema operativo y el manejo de archivos. 9) Servicios POSIX relacionados con memoria compartida.
  • 88. Universidad Gerardo Barrios Centro Regional de Usulután Facultad de Ciencia y Tecnología Sistemas Operativos “Investigación de los Sistemas Operativos que utilizan las empresas Usulutecas”. Carátula Introducción Objetivos o Objetivo general (1) o Objetivos específicos (2 ó 3) Contenido Nombre de las empresas visitadas, pueden incluir el logo de cada una (1 página). Descripción de la información obtenida en cada empresa (Las páginas que sean necesarias. Pueden describir empresa por empresa). Listado general de los sistemas operativos identificados (Propietarios y Libres aparte). Conclusiones. Recomendaciones. Anexos o Cuestionario. o Guía de entrevista.