Universidad Nacional de Córdoba
Facultad de Matemática, Astronomía y Física


Sistemas Operativos - 2002

Bernadro Gonzalez Krieguel   Nicolás Wolovick
Marcos Dione   Paula Estrella   Ariel Fiuri   Felipe Madero   Carolina Piva

 
Información

 
Bibliografía

 
Material de Lectura

 
Prácticos

 
Laboratorios

Lab1: Observando el Comportamiento de Linux

El enunciado se encuentra disponible aqui. Para aquellos que sepan programar en "C", pero no manejan bien herramientas como gdb, make, emacs, etc., Felipe Madero recomienda el libro Advanced Linux Programming que está para bajar. Para aquellos que no sepan programar en "C", algunos alumnos y docentes ofrecieron estos enlaces:

Quienes no quieran instalar Linux en sus casas está la posibilidad de grabar DemoLinux. DemoLinux es una distribución que corre sobre el CD y opcionalmente instala un "ancla" en alguna de las particiones del disco duro, ya sea de Windows o Linux, para guardar configuraciones, archivos de intercambio, etc. Esta distribución está mantenido por un grupo de la Universidad Paris VII, entre los que se encuentran Roberto DiCosmo, el cual dictó en Fa.M.A.F. una conferencia en Diciembre del año pasado acerca de "Software Libre: una oportunidad y una necesidad para el mundo digital" (transcripción)

Un producto similar, pero más avanzado en las versiones que utiliza (kernel 2.4.18, KDE 3.0.2, OpenOffice 1.0, etc) es Knoppix.

Para obtener una copia de DemoLinux o Knoppix, dirigirse al CeIMAF.

El problema de los R/W a disco en kernel 2.4 ha sido exterminado por el ayudante alumno Maderos. Aquí una copia de su email.

La fecha de entrega es el jueves 29 de Agosto de 2002 viernes 30 de Agosto de 2002 hasta las 23:59pm , y se deberá enviar un email a so2002@famaf.unc.edu.ar con el archivo LabxGyy.tar.gz adjuntado. El tema del email debe ser igual al nombre del tar.gz.

 

Lab2: Un Baash

Para comenzar a trabajar deberán leer el paper

También está para fotocopiar en CeIMAF.

Para los que no se arreglen bien con el ingliés Babel de Altavista o FreeTranslation brindan servicios gratuitos de traducción de páginas web, pero de dudosa calidad. Un poco de paciencia y algún diccionario suelen dar mucho mejor resultado.

El lunes 2 de Septiembre se hará una discusión en el horario del teórico acerca de este paper.

El enunciado del laboratorio está aqui.

Hay muy buena documentación de las funciones de la libc en las infopages. Se acceden a través del comando info libc o pinfo libc.

La fecha de entrega es el viernes 27 de Septiembre de 2002 viernes 4 de Octubre de 2002 hasta las 23:59pm , y se deberá enviar un email a so2002@famaf.unc.edu.ar con el archivo Lab2Gyy.tar.gz adjuntado, que contiene todo por debajo del directorio Lab2Gyy/ donde deberán trabajar. El tema del email debe ser igual al nombre completo del archivo. Seguir estas instrucciones al pie de la letra

Pueden encontrar más material acerca de UNIX en "Unix Seventh Edition Manual", en particular el paper anterior y un trabajo acerca de Bourne Shell.

Confeccionamos un esqueleto con una posible forma de modularizar el problema. Se llama Lab2Skel.

 

Lab3: Programando con Hilos

El enunciado está aquí, y la fecha límite de entrega es el viernes 1 de Noviembre a las 23:59hs viernes 8 de Noviembre a las 23:59hs.

El énfasis del laboratorio está en:

La página principal de LinuxThreads (la implementación más utilizada de POSIX threads para Linux) contiene información general, y muchos enlaces a otras páginas. Un tutorial clásico pero un poco obsoleto ya es Getting Started With POSIX Threads [pdf] (gracias Guille). Hay material en español en Tutorial de Threads (NO FUNCIONA!). Hay otro material, de menor calidad por Schumi (gracias Emiliano). Se puede encontrar mucho material en inglés. El listado siguente está da las distintas posibilidades en algún orden de calidad:

Hay compilaciones de Preguntas más Frecuentes (FAQs) que aparecieron en el grupo de noticias comp.programming.threads.

El libro Advanced Linux Programming en su capítulo 4 trata el tema de los Hilos en Linux. Además el tutorial Programming in C UNIX System Calls and Subroutines using C de A. D. Marshall cubre también este tópico.

En el directorio /usr/share/doc/glibc-common-2.2.4/examples.threads podemos encontrar ejemplos que se incluyen con la glibc. Toda la documentación de la libc también tiene muchos datos interesantes, se puede consultar con pinfo libc o directamente en los manuales de GNU de la libc.

Hay un artículo interesante en la Linux Magazine sobre "Common Concurrent Programming Errors".

Hay 2 nuevas versiones de PThreads para Linux (Next Generation POSIX Threads NGPT y Native POSIX Thread Library NPTL), que mejoran muchos de los problemas de performance de la actual implementación. Hay un artículo en Linux Weekly News sobre estas nuevas bibliotecas.

Lab4 (opcional): El dispositivo FIFO

El enunciado esta aquí

Pueden encontrar mucho material de lectura relacionado a Linux Device Drivers y Modulos, aqui damos un raconto de los destacados.

30 de Abril 2003