La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 - Introducción a UNIX Programación II Ing. Diego J. Arcusin

Presentaciones similares


Presentación del tema: "1 - Introducción a UNIX Programación II Ing. Diego J. Arcusin"— Transcripción de la presentación:

1 1 - Introducción a UNIX Programación II Ing. Diego J. Arcusin

2 En sentido estricto, es el núcleo (Kernel) de un sistema operativo.
¿Qué es Unix? En sentido estricto, es el núcleo (Kernel) de un sistema operativo. En un sentido amplio abarca también programas esenciales como compiladores, editores, shells, programas para administración de archivos, etc. En un sentido más amplio, puede incluir programas desarrollados por los propios usuarios,

3 Características del Unix
Sistema de Código Abierto Desarrollado en su mayor parte en un lenguaje de alto nivel (Lenguaje C) Sistema Operativo de Tiempo Compartido Código Abierto. Se distribuye con el código fuente. Hecho en C (Antes se desarrollaban en Assembler) Lenguaje en C -> Portabilidad entre distintos Hardware. Fácil de modificar y mejorar. Tiempo Compartido: Contra los recursos de una computadora y los asigna entre los usuarios.

4 Historia del Unix Primera a Sexta Edición AT&T System V -> SCO Unix
Berkley Software Distributions (BSD) -> FreeBSD y NetBSD Linux Variantes del UNIX Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

5 Arquitectura de Software de UNIX
Aplicaciones: Editores, Navegadores, ftp, telnet, compiladores Interfaz del Usuario de Aplicaciones Shell de UNIX Bibliotecas de lenguajes: C, C++, Java, Fortran,etc. Interfaz del Programador de Aplicaciones Interfaz de llamadas al sistema Núcleo (Kernel) Administración de Archivos, Administración del Almacenamiento, Administración de Procesos, etc. Sistema Operativo Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas. Controladores (Drivers) Hardware: Cables, Transistores, CPU, Memoria, Disco, etc.

6 Inicio de Sesión Autenticación en UNIX El Prompt (Símbolo de Espera)
Login Contraseña El Prompt (Símbolo de Espera) Por lo general un símbolo $ o % Tecleo de Comandos Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

7 El Manual man [nombre de comando] Ejemplos: Intente: man man man who
man date Intente: man man Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

8 Algunos Comandos date (fecha y hora) who (Quién está logueado)
who am i echo (Imprime en la terminal el argumento recibido) cat (muestra el contenido de un archivo) more (pagina el contenido de un archivo) Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

9 Más Comandos ls (lista de nombres de archivo)
mv (Movimiento y Renombre de archivos) cp (Copiado de Archivos) rm (eliminación de archivos) wc (Cuenta líneas, palabras y caracteres) grep (Búsqueda de textos dentro archivos) sort (Ordenamiento de archivos) tail (despliega las últimas 10 líneas de un archivo) Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

10 El Editor Unix cuenta con varios editores. Entre ellos:
Editor muy elemental. Utilizado en versiones anteriores. vi Potente editor de textos de una enorme flexibilidad. Otros editores: pico emacs Editores gráficos Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

11 Directorios Directorios Home Directory Directorio de Trabajo
Directorio Personal, de origen o de login Es el directorio al cuál se accede al iniciar la sesión Directorio de Trabajo Directorio actual Puede ser diferente al Home Directory Por defecto, los archivos se crean en el directorio de trabajo. Un directorio puede contener archivos u otro directorios A ésta organización se la denomina “Arbol de directorios” Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

12 Directorios (cont) Es posible desplazarse a cualquier directorio del árbol de directorios. Comandos: pwd (Print Working Directory) – indica el directorio actual cd (Change Directory) – cambio de directorio mkdir (Make Directory) – Crear directorio rmdir (Remove Directory) – Eliminar directorio pathname (Trayectoria) de un archivo Representa el nombre completo de una ruta desde la raiz hasta un archivo, a través del árbol completo de directorios. Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

13 Arbol de Directorios / bin dev etc usr tmp unix boot
ls carlos martin andrea pendientes.txt fuente.c foto.jpg pendientes.txt Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

14 El Shell Intérprete de comandos.
Es el Intermediario entre el usuario y el Kernel. Es un programa como cualquier otro aunque con muchas funcionalidades. Las más importantes: Administra abreviaturas de nombres de archivos. Posibilita el redireccionamiento de la entrada-salida Permite la personalización del entorno Existen varios Shells disponibles: Sh, ksh, csh, rsh, etc. Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

15 Procesos Identificador de proceso (Process ID)
Estructura jerárquica de los procesos Parent Process ID (PPID) El símbolo & (Procesos en Foreground y Background) Comandos útiles ps (Listado de Procesos) wait (Espera la finalización del proceso para devolver el prompt) kill (Mata ,o envía señales, a un proceso) nohup (mantiene el proceso en ejecución al cerrar la sesión) nice (cambia la prioridad de los procesos) at (Programa comando para comenzar su ejecución a cierta hora) Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

16 El Entorno El UNIX permite la personalización del Ambiente de Trabajo
stty (Comando para la configuración de teclas especiales) El archivo .profile Archivo ejecutado por el shell al iniciar la sesión del usuario Util para configurar automáticamente el entorno al inicio de la sesión El .profile debe encontrarse en el Home Directory del usuario Permite la ejecución automática de cualquier comando Permite la configuración de variables del SHELL. Algunas de ellas: PS1 = (Cadena que muestra el intérprete de comandos) PATH (Directorio de búsqueda de comandos) TERM (Tipo de terminal utilizada) Variables personales (Por ejemplo: d=/directorio/horriblemente/largo) Se puede decir que las variantes de Bell (1era a 6ta= era una versión comercial continuada por AT&T, y la versión de Berkley era una versión academica. Linux toma partes de cada una de estas ramas.

17 Preguntas ?

18 Ejercicios 1. 1. ¿Cuáles son las diferencias entre los siguientes comandos? $ ls pendientes.txt $ echo pendientes.txt $ ls / $ echo / $ ls $ echo $ ls * $ echo * $ ls ‘*’ $ echo ‘*’ 1. 2. ¿Cuál era la rama académica de UNIX?¿Cuál la rama comercial? 1. 3.¿Qué es una llamada al sistema? 1. 4.¿Qué es el Kernel?¿Qué diferencia hay entre Kernel y Shell? 1. 5. ¿Qué datos son necesarios para iniciar una sesión? 1.6. ¿Qué comando utilizaría para listar los archivos de un directorio?

19 Ejercicios (cont) 1.7. ¿Cómo averiguaría cuántos usuarios hay conectados en un momento dado en su sistema? 1.8. Cómo se cierra una sesión de Shell 1.9. Para que sirve la variable PATH. 1.10 ¿Para que sirve el .profile? ¿En que directorio debe encontrarse? 1.11 Escriba un comando para ver los archivos lab1, lab2, lab3 y lab4. ¿Podría escribir otros dos comandos que hagan lo mismo? 1.12 Escriba un comando que muestre los datos del mayor usuario (alfabéticamente hablando) que se encuentra logueado en este momento.

20 Ejercicios (cont) 1.13. Utilice el comando ls para listar recursivamente todo los directorios y archivos debajo de /etc 1.14. Utilice el comando ls para listar los archivos invisibles en su Home Directory 1.15. Crear una archivo llamado himno1 con la primer línea del himno nacional, repetir para los archivos himno2 e himno3 Crear un único archivo llamado himno con las 3 líneas del himno Ordene las líneas alfabéticamente (Intente hacerlo sin utilizar el archivo himno) Indique cuántos caracteres tiene su versión del himno. 1.16. Investigue el comando touch ¿Para que sirve? 1.17. Investigue la opción –k del comando man ¿Podría ser de utilidad?

21 Ejercicios Complementarios
1c.1. Ingrese con su Login y Passwd 1c.2. Liste el contenido de su HOME Directory 1c.3. Cree 3 directorios (Fuentes, Datos, Varios) 1c.4. Cree al menos 5 archivos en cada directorio. Utilice cat, cp, redireccionamientos de salida y el editor vi 1c.5. Cree en Datos un archivo con los usuarios logueados y la fecha del día 1c.6. Liste el contenido de los directorios. Utilice las opciones –a –l y –t) 1c.7. Elimine el directorio varios 1c.8. Cuente las palabras de todos los archivos de datos (Individualmente y el total general). 1c.9. Indique qué archivos dentro del directorio fuentes contienen la letra q 1c.10. Ordene el archivo /etc/passwd . Investigue las opciones –r –n –nr y –F del comando sort.

22 Ejercicios Complementarios
1c.11. Cree en su directorio una copia del /etc/passwd, edítelo y modifique el contenido en dos líneas diferentes. Investigue los comandos cmp y diff para compararlos y analice las diferencias. 1c.12. Muestre la primer y última fila del /etc/passwd 1c.13. Cómo averiguaría qué usuarios usan los shells ksh o csh 1c.14. Liste el contenido del directorio /etc y /bin 1c.15. Investigue los comandos du y find 1c.16. Utilice el comando find para buscar todos los archivos del disco que contengan la cadena passwd . Lance el mismo comando en background 1c.17. Utilice ps . investigue las opciones –e y –f ¿Para qué sirven? 1c-18 Modifique su .profile para modificar su prompt principal y para incluir un saludo de bienvenida al iniciar la sesión.


Descargar ppt "1 - Introducción a UNIX Programación II Ing. Diego J. Arcusin"

Presentaciones similares


Anuncios Google