From a00ca3206a95676ae8068e722d0b497d017efaed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Ortega=20Froysa?= Date: Thu, 23 Sep 2021 17:21:50 +0200 Subject: [PATCH] Added algorithm research assignment. --- 1/ISO/assignments/algorithms/algorithms.pdf | Bin 0 -> 19059 bytes 1/ISO/assignments/algorithms/algorithms.tex | 42 ++++++++++++++++++++ 1/ISO/notes/unit-01.md | 17 ++++++++ 3 files changed, 59 insertions(+) create mode 100644 1/ISO/assignments/algorithms/algorithms.pdf create mode 100644 1/ISO/assignments/algorithms/algorithms.tex diff --git a/1/ISO/assignments/algorithms/algorithms.pdf b/1/ISO/assignments/algorithms/algorithms.pdf new file mode 100644 index 0000000000000000000000000000000000000000..72e1b192c90ad93b11c79c9921c9da820da4d731 GIT binary patch literal 19059 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 literal 0 HcmV?d00001 diff --git a/1/ISO/assignments/algorithms/algorithms.tex b/1/ISO/assignments/algorithms/algorithms.tex new file mode 100644 index 0000000..bdf5d41 --- /dev/null +++ b/1/ISO/assignments/algorithms/algorithms.tex @@ -0,0 +1,42 @@ +\documentclass[12pt]{article} +\usepackage[spanish]{babel} + +\title{Algoritmos De Prioridad De Procesos} +\author{Nicolás A. Ortega Froysa} + +\begin{document} +\maketitle + +\section{Apropiación} +La planificación de procesos puede ser de dos tipos distintos: + +\begin{itemize} + \item \textbf{Apropiativa:} el planificador (proceso a cargo de planificar + los procesos) puede interrumpir un proceso durante su ejecución, y + forzarlo al estado de espera. + \item \textbf{No Apropiativa:} el planificador \textbf{no} puede interrumpir + un proceso durante su ejecución, y tiene que esperar a que el proceso + devuelva el control al planificador. Esto puede ser por causa de bloqueo + necesario o voluntario. +\end{itemize} + +Los sistemas no apropiativos eran más comunes cuando se valía de sistemas +operativos monousuario y monoprogramadas. Mas hoy en día apenas se usan ya que +un proceso podría monopolizar de la CPU, que empeoraría la experiencia del +usuario y el tiempo de respuesta. + +\section{Round-Robin} +Este algoritmo es, por definición, \textit{apropiativa}. El planificador asigna +a cada proceso un cuanto de tiempo \texttt{q} de igual tamaño y en orden +circular. Gestiona todos los procesos sin prioridad. El planificador concede la +CPU al proceso durante \texttt{q}; si el proceso no devuelve control de la CPU +al planificador dentro de su cuanto de tiempo, el planificador se apropia de la +CPU, interrumpiendo al proceso, y asigna la CPU al siguiente proceso. + +\section{Colas Multi-nivel} +Se distribuyen las tareas en una cola de varios niveles de prioridad, +dependiendo de diferentes factores (e.g.\ tiempo de CPU, acceso E/S, tamaño de +memoria, etc.). Un proceso sólo puede apropiarse de la CPU si todas las colas de +mayor prioridad están vacías. + +\end{document} diff --git a/1/ISO/notes/unit-01.md b/1/ISO/notes/unit-01.md index c766f24..a83bec4 100644 --- a/1/ISO/notes/unit-01.md +++ b/1/ISO/notes/unit-01.md @@ -81,3 +81,20 @@ Un proceso puede tener los siguientes estados: - Transición - Ejecución/Activo - Bloqueado + +## Gestión de Memoria +Cuando un sistema es monoprograma, entonces el único proceso tiene acceso pleno +a toda la memoria de la máquina. Mas cuando hay varios programas, tiene que +haber un sistema para asignar la memoria a los diferentes procesos. + +El sistema operativo también se tiene que ocupar de no dejar que un proceso +acceda a la memoria de otro - y por supuesto no del sistema operativo. Esto se +soluciona sobre todo con la memoria virtual, tal que el proceso cree que tiene +toda la memoria (incluso más grande que el tamaño físico de la memoria), y la +CPU se ocupa de traducir las direcciones. Cuando se intenta usar más memoria de +lo que hay en memoria física, se hace uso de un almacenamiento secundario que se +llama __swap__. + +Para gestionar la memoria se suele usar una estructura lógica de __páginas__. Si +es demasiado pequeña entonces sobrecarga el sistema al tener que gestionar +tantas. Mas si es demasiado grande se desaprovecha espacio.