PDF de programación - PRÁCTICA DE LLAMADAS AL SISTEMA OPERATIVO UNIX

Imágen de pdf PRÁCTICA DE LLAMADAS AL SISTEMA OPERATIVO UNIX

PRÁCTICA DE LLAMADAS AL SISTEMA OPERATIVO UNIXgráfica de visualizaciones

Publicado el 14 de Enero del 2017
341 visualizaciones desde el 14 de Enero del 2017
11,4 KB
5 paginas
Creado hace 21a (05/02/1999)
PRÁCTICA DE LLAMADAS AL

SISTEMA OPERATIVO UNIX

1.- Introducción

El objetivo de esta práctica es crear un pequeño Shell con algunas de las
capacidades más usuales: creación de procesos, ejecución de programas,
redirección de salida/entrada, pipes, etc.

Se dejará a disposición de los grupos de prácticas una versión compilada de
un programa que cumple los requisitos de esta práctica para que puedan
comprobar cuál es el prototipo básico de funcionamiento que se pide.

2.- Especificación

MYSH (1)

NOMBRE

MYSH (1)

arqsh - Shell para las Prácticas de Arquitectura de

Computadores

SYNOPSIS

arqsh

DESCRIPCIÓN

Esta Shell cubre las características básicas de gestión de procesos y redirección
de salida de las Shells. Se enumeran a continuación los requisitos que cumple
mediante apartados que se deben intentar resolver:

1) Ejecución de programas simples

Debe ser capaz de leer de la entrada de teclado el nombre de comandos sin
opciones y ejecutarlos, continuando después el progreso del Shell. Los
comandos que debe ser capaz de ejecutar son aquellos que se encuentren en
alguno de los directorios señalados en la variable PATH o de los que se
especifique el camino completo.

Ej:

arqsh%> ls
fichero1
arqsh%>

fichero2

fichero3

2) Cambio de directorio de trabajo

Se debe poder cambiar el directorio de trabajo del proceso Shell mediante un

comando interno del mismo que se invocará de la siguiente forma:

arqsh%> cd directorionuevo

3) Ejecución de programas con un número indeterminado de argumentos.

Debe ampliarse para aceptar que los comandos tengan un número
desconocido a priori de argumentos y opciones que se deberán emplear en la
ejecución del programa.

Ej:

arqsh%> ls -a directorio_practicas
.
..
arqsh%>

ej1.c

ej2.c

ej3.c

4) Redirección de salida estándar

El Shell debe aceptar que se especifique un fichero al que redireccionar la
salida estándar de un comando. El carácter que especifica la redirección será >
que irá seguido del nombre del fichero. Si el fichero existe se perderá su anterior
contenido. La redirección debe ir después de todas las opciones y argumentos del
comando.

Ej:

arqsh%> ls -a directorio_practicas > listado
arqsh%> cat listado
.
..
ej1.c
ej2.c
ej3.c
arqsh%>

5) Redirección de la entrada estándar

El Shell debe aceptar que se especifique un fichero del cual obtendrá el
contenido de la entrada estándar el comando. El carácter que especifica esta
redirección será < que irá seguido del nombre del fichero. Si el fichero no existe
se señalará con un mensaje de error conveniente. La redirección debe ir después
de todas las opciones y argumentos del comando. El orden entre si de las
redirecciones (entrada y salida) no debe importar.

Ej:

arqsh%> wc -l < listado

arqsh%> wc -l < listado > cuenta_ficheros
arqsh%> cat cuenta_ficheros

5

5
arqsh%>

6) Pipelines

El Shell debe ser capaz de encadenar dos comandos mediante una pipe,
conectando la salida estándar de uno con la entrada estándar del siguiente. El
carácter para simbolizar esta conexión será | colocado al final del comando del
que se quiere redireccional la salida; a continuación se colocará el comando que
tomará como entrada esa salida. Ambos comandos deben soportar un número
indeterminado de opciones.

Ej:

arqsh%> cat listado | wc -l

5
arqsh%>

7) Generalización

El Shell debe soportar un número de pipes indeterminado encadenadas,
donde cada comando puede tener redireccionada su entrada y/o su salida. Se
considera incompatible que un comando redireccione su salida a un fichero y a
una pipe de forma simultánea, por lo que de requerirse este comportamiento al
Shell por parte de un usuario se debe indicar el error.

Ej:

arqsh%> cat listado | tail -2 | wc -c

12
arqsh%>

Nota: Para facilitar el procesado todos los argumentos han de estar separados

por espacios. Es decir, no se soportan comandos como:

arqsh%> cat fichero|wc -l

sino que debe ser:

arqsh%> cat fichero | wc -l

3.- Presentación

En el directorio HOME de cada grupo debe existir un directorio llamado
solucion, dentro del cual se dejarán todos los ficheros necesarios para compilar
el programa así como un fichero para la utilidad make. A la hora de la
corrección se borrarán todos los ficheros compilados o ejecutables de ese
directorio, en él sólo deben estar las fuentes, y se hará make en él. Como
resultado debe aparecer en ese directorio un ejecutable de nombre arqsh que será
el que se empleará para evaluar la práctica.
  • Links de descarga
http://lwp-l.com/pdf871

Comentarios de: PRÁCTICA DE LLAMADAS AL SISTEMA OPERATIVO UNIX (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad