Preguntas S.O
Preguntas S.O
Preguntas S.O
Android, iOS, kaIOS, Windows, Samsung, PlayStation, Series 40, Nokia, Xbox, Tizen,
Linux, BlackBerry OS.
Windows Server, UNIX, Debian, Red Hat, CentOS, Ubuntu, FreeBSD, Gentoo.
Otra función que tiene es que cada uno de estos elementos necesitan
del uno de otro para poder funcionar ya que son parte importante del
sistema. Para poder ocupar un software debemos contar con un
sistema operativo primero que es la herramienta que hacen que
funcionen los comandos que se utilizan en el software de aplicación
que son los que más se utilizan tanto local como en la web.
Periféricos
Aplicaciones
Hardware
5. ¿Cómo eran los sistemas operativos en cada generación de computadores?
Capa de datos: es donde residen los datos y es la encargada de acceder a los mismos. Está
formada por uno o más gestores de bases de datos que realizan todo el almacenamiento de
datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de
negocio.
9. ¿Cuáles son los servicios proporcionados por el SO en general? ¿Con respecto al
acceso? ¿Con respecto al manejo de errores?
Desarrollo de programas: Proporciona variedad de utilidades y servicios, tales como editores y
depuradores para asistir al programador en la creación de programas.
Ejecución de programas: Se necesita realizar una serie de pasos para ejecutar un programa. Las
instrucciones y los datos se deben cargar en la memoria principal.
Acceso a dispositivos de E/S: Cada dispositivo tendrá una interfaz única con propias
instrucciones o señales de control para cada operación. El SO presenta interfaz estándar para los
usuarios.
Acceso controlado a los archivos o ficheros: Acceso a diferentes medios por medio de una
interfaz común
Contabilidad: Un buen sistema operativo recogerá estadísticas de uso de los diferentes recursos
y monitorizará parámetros de rendimiento tales como el tiempo de respuesta.
10. ¿Cuáles son las fases de evolución de los SO en los primeros años? ¿Describa en
qué consistía cada fase?
Sistemas Operativos por lotes: Los Sistemas Operativos por lotes, procesan una gran cantidad
de trabajos con poca o ninguna interacción entre los usuarios y los programas en ejecución. Se
reúnen todos los trabajos comunes para realizarlos al mismo tiempo, evitando la espera de dos o
más trabajos como sucede en el procesamiento en serie.
12. ¿Cuáles son los modos de operación básicos que encontramos en los SO? ¿Cuáles son
los servicios que se ejecutan en cada uno de los modos?
Modo Kernel: Es un modo de ejecución del sistema operativo en el cual se tiene un modo de
funcionamiento privilegiado. En este modo todas las instrucciones de hardware están
disponibles. El sistema operativo es el único que debe ejecutar en este modo.
multiprogramación?
Un sistema multitarea puede ejecutar múltiples aplicaciones y programas a la vez. Esto es
generalmente usado en computadores donde el usuario desea navegar en internet, ejecutar un
programa de edición de imágenes, escuchar música mediante un reproductor de multimedia y
escribir en un programa de procesamiento de palabras todo de manera simultánea.
Requisitos: para que el proceso se ponga en marcha se deben desencadenar unos requisitos
iniciales. Un proceso de préstamos de documentos originales del archivo se desencadena
porque se recibe una petición formalizada de acuerdo a un procedimiento reglado.
Salida: como resultado de la ejecución del proceso se produce una respuesta o salida. Puede
ser un producto o un servicio.
Cliente: siempre existe un cliente receptor de la salida del proceso. Un juez recibe un
documento original de un archivo de una Consejería como prueba porque ha formalizado una
petición de acuerdo con un procedimiento judicial que le habilita para ello.
Los procesos son gestionados por el sistema operativo y están formados por:
19.
¿
Una vez que el planificador ejecuta y elige el proceso a asignar al procesador, se invoca al
despachador (dispatcher) que es el encargado de asignar el proceso al procesador. Es decir, el
planificador elige el proceso que entra a la CPU, en ese momento el despachador toma el proceso
que estaba en la CPU y actualiza el PCB del proceso en su CPU virtual, luego elige el proceso
seleccionado por el planificador y le asigna la CPU. Asignar a la CPU no es más que cargar la
CPU virtual del proceso y reemplazarlo en la CPU.
Finalización:
- Finalización Normal
- Memoria no disponible
- Error de protección
- Intervención del operador o el SO
Se le llama proceso Padre al original o proceso creador, mientras que proceso hijo es el nuevo
proceso. Cuando un proceso lanza otro, al primero se le denomina proceso padre, y al proceso
creado se le denomina proceso hijo. Habitualmente, la relación entre procesos necesita
comunicación y cooperación entre ellos. Cuando es invocado por un proceso, el sistema
operativo crea un nuevo proceso idéntico al que lo llamó, diferenciándose únicamente en el valor
entregado. Ejemplo: Si ocurre algún error, el sistema entrega un número negativo (indicando la
causa del error). En caso de ser exitoso, el proceso nuevo (o proceso hijo) recibe el valor 0,
mientras que el preexistente (o proceso padre) recibe el PID (número identificador de proceso)
del hijo, compartiendo mutuamente todas sus páginas de memoria.
Cuando ninguno de los procesos en memoria principal se encuentra en estado Listo, el sistema
operativo intercambia uno de los procesos bloqueados a disco, en la cola de suspendidos. Esta es
una lista de procesos existentes que han sido temporalmente expulsados de la memoria principal
o suspendidos.
Cuando todos los procesos en m.p se encuentran en estado bloqueado, el sistema operativo puede
suspender un proceso en el estado suspendido y transferirlo a disco. El espacio que se libera en
m.p puede usarse para traer otro proceso.
Una de las razones para implementar el estado Bloqueado era poder hacer que los procesos se
puedan mantener esperando algún suceso, por ejemplo, una Entrada/Salida. Sin embargo, al ser
mucho más lentas estas operaciones, puede suceder en nuestro modelo de cinco estados todos los
procesos en memoria estén esperando en el estado Bloqueado y que no haya más memoria
disponible para nuevos procesos. Podría conseguirse más memoria, aunque es probable que esto
sólo permita procesos más grandes y no necesariamente nuevos procesos. Además, hay un costo
asociado a la memoria y de cualquier forma es probable que se llegaría al mismo estado con el
tiempo.
Ya que los procesos pueden intercambiarse en disco para liberar más memoria y usar el
procesador en otros procesos aparecen dos nuevos estados:
29. Explique el modelo de procesos con todos los estados estudiados en la unidad.
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).
Por lo tanto, Los hilos permiten la ejecución concurrente de varias secuencias de instrucciones
asociadas a diferentes funciones dentro de un mismo proceso, compartiendo un mismo espacio
de direcciones y las mismas estructuras de datos del núcleo. Un hilo se ejecuta secuencialmente y
se puede interrumpir de forma que el procesador pueda dar paso a otro hilo.
Todos los hilos de un proceso comparten el estado y los recursos de ese proceso, residen en el
mismo espacio de direcciones y tienen acceso a los mismos datos. Cuando un hilo cambia de
determinados datos en memoria, otros hilos ven los resultados cuando acceden a estos datos. Si
un hilo abre un archivo con permisos de lectura, los demás hilos del mismo proceso pueden
también leer ese archivo.
Los mayores beneficios de los hilos provienen de las consecuencias del rendimiento:
1. Lleva mucho menos tiempo crear un nuevo hilo en un proceso existente que crear un
proceso totalmente nuevo. Los estudios realizados por lo que desarrollaron el sistema
operativo Mach muestran que la creación de un hilo es 10 veces más rápida que la
creación de un proceso en UNIX.
2. Lleva menos tiempo finalizar un hilo que un proceso.
3. Lleva menos tiempo cambiar entre dos hilos dentro del mismo proceso
4. Los hilos mejoran la eficiencia de la comunicación entre diferentes programas que se
están ejecutando. Ya que los hilos dentro de un mismo proceso comparten memoria y
archivos, se pueden comunicar entre ellos sin necesidad de invocar el núcleo.
Existen, sin embargo, diversas acciones que afectan a todos los hilos de un proceso y que el
sistema operativo debe gestionar a nivel de proceso y que el sistema operativo debe gestionar a
nivel de proceso.
Todos los hilos de un proceso comparten el mismo espacio de direcciones y otros recursos,
como, por ejemplo, los archivos abiertos. Cualquier alteración de un recurso por cualquiera de
los hilos, afecta el entorno del resto de los hilos del mismo proceso. Por tanto, es necesario
sincronizar las actividades de los hilos para que no interfieran entre ellos o corrompan estructuras
de datos. Por ejemplo, si dos hilos de modo simultaneo intentan añadir un elemento a una lista
doblemente enlazada, se podría perder un elemento o la lista podría acabar malformada.
En un sistema monoprogramado, la memoria se divide en dos partes: una parte para el sistema
operativo (monitor residente, núcleo) y una parte para el programa actualmente en ejecución. En
un sistema multiprogramado, la parte de “usuario” de la memoria se debe subdividir
posteriormente para acomodar múltiples procesos. El sistema operativo es el encargado de la
tarea de subdivisión y a esta tarea se le denomina gestión de la memoria.
La memoria virtual es el uso de la memoria RAM del PC en combinación del disco duro. En
algunos casos como cuando por ejemplo tenemos una memoria RAM de reducido tamaño y
latencia, la memoria virtual mueve los datos que existen en la memoria RAM a un espacio que se
llama archivo de paginación. Estos movimientos crean un espacio extra en la memoria RAM
para que así se pueda completar la tarea que se esté realizando con mayor solvencia.
El sistema de paginación proporciona una proyección dinámica entre las direcciones virtuales
utilizadas en el programa y una dirección real, o dirección física, de memoria principal.
Tanto las particiones de tamaño fijo como variable son ineficientes en el uso de la memoria; los
primeros provocan fragmentación interna, los últimos fragmentación externa. Supóngase, sin
embargo, que la memoria principal se divide en porciones de tamaño fijo relativamente
pequeños, y que cada proceso también se divide en porciones pequeñas del mismo tamaño fijo.
A dichas porciones del proceso, conocidas como páginas, se les asigna porciones disponibles de
morirá, conocidas como marcos o marcos de página.
Marco de Página: bloque de memoria principal contiguo y de longitud fija que se usa para
contener una página.
42. ¿Para qué son los bits de presencia y el bit de modificado en una tabla de
páginas o segmentos? //61
Otro bit se necesita para determinar si el segmento se ha modificado desde que fue
cargado en la memoria principal
43. ¿En la paginación para que se utiliza el puntero de la tabla de página? //59
si el contenido de la página ha sido modificado desde que fue modificada por última
carga
Segmento: en la memoria virtual, un bloque que tiene una dirección virtual. Los bloques
de un programa pueden ser de longitud desigual y pueden ser incluso de longitud variable
dinámicamente.
47. ¿Qué características brinda la combinación entre la paginación y la
segmentación? //63
Por el principio de localidad, esta debe ser la página con menos probabilidades de tener
una referencia en un futuro próximo.
Difícil de aplicar.
Primero entrar- Primero en Salir (FIFO)
La planificación a largo plazo determina cuáles son los programas admitidos en el sistema. De
este modo, se controla el grado de multiprogramación. Una vez admitido, un trabajo o un
programa de usuario se convierte en un proceso y es añadido a la cola del planificador a corto
plazo. En algunos sistemas, un proceso recién creado comienza en situación de descargado de la
memoria principal, en cuyo caso se añade a la cola del planificador a medio plazo.
El planificador a largo plazo se ejecuta con relativa poca frecuencia, tomando una primera
decisión sobre si tomar o no un nuevo proceso y cuál tomar. El planificador a medio plazo se
ejecuta con algo más de frecuencia, para tomar la decisión del intercambio. El planificador a corto
plazo, también conocido como distribuidor (dispatcher), es el de ejecución más frecuente y toma
decisiones con un mayor detalle sobre el proceso que se ejecutará a continuación.
El planificador a corto plazo se ejecuta cuando ocurre un suceso que puede conducir a la
interrupción del proceso actual o que ofrece la oportunidad de expulsar de la ejecución al proceso
actual en favor de otro. Como ejemplos de estos sucesos se tienen: