Vous êtes sur la page 1sur 31

Laboratorio de Algoritmos y Programacin I

Laboratorio 0

$ Definicin de Sistema Operativo

$ Software Libre

$ Distribuciones Linux

$ Definicin de LiveCD

$ Programa Fuente, Programa Objeto, Compilador

$ Uso del CentOS

$ Comandos por consola

$ Construccin del primer programa en C


Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Definicin de Sistema Operativo

Un sistema operativo (SO) es un conjunto de programas destinados a


permitir la comunicacin del usuario con un ordenador y gestionar sus recursos
de manera eficiente. Comienza a trabajar cuando se enciende el ordenador, y
gestiona el hardware de la mquina desde los niveles ms bsicos.

Un sistema operativo se puede encontrar normalmente en la mayora de los


aparatos electrnicos que podamos utilizar sin necesidad de estar conectados a
un ordenador y que utilicen microprocesadores para funcionar, ya que gracias a
estos podemos entender la mquina y que sta cumpla con sus funciones
(telfonos mviles, reproductores de DVD, equipos de sonido... y
computadoras)

Fuente: http://es.wikipedia.org/wiki/Sistema_operativo
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
Software Libre

Software libre (en ingls free software) es el software que, una vez obtenido,
puede ser usado, copiado, estudiado, modificado y redistribuido libremente.

El software libre suele estar disponible gratuitamente en Internet, o a precio


del coste de la distribucin a travs de otros medios; sin embargo no es
obligatorio que sea as y, aunque conserve su carcter de libre, puede ser
vendido comercialmente.

Anlogamente, el software gratis o gratuito (denominado usualmente


freeware) incluye en algunas ocasiones el cdigo fuente; sin embargo, este
tipo de software no es libre en el mismo sentido que el software libre, al
menos que se garanticen los derechos de modificacin y redistribucin de
dichas versiones modificadas del programa.

Fuente: http://es.wikipedia.org/wiki/Software_libre
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
Software Libre

La definicin mantenida por la Fundacin para el Software Libre dice que para
que un programa de ordenador sea considerado software libre debe respetar
cuatro derechos o libertades considerados como fundamentales para el
usuario de ese programa:

Los usuarios deben tener derecho a utilizar el programa, sin restricciones,


donde quiera, como quiera y para lo que quiera.

Los usuarios deben tener derecho a estudiar cmo funciona el programa y, si


lo desean, a adaptarlo a sus necesidades especficas.

Los usuarios deben tener derecho a distribuir copias a sus amigos, empleados,
conocidos, empleadores y, en fin, a cualquier persona que deseen.

Los usuarios deben tener derecho a mejorar el programa, publicar y distribuir


sus mejoras al pblico (o a quien deseen) de modo que ms personas salgan
beneficiadas de los cambios.
Fuente: http://www.gnu.org/home.es.html
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
Software GNU

La denominacin de Software GNU engloba de forma general a cualquier software


desarrollado o mantenido por el Proyecto GNU, que conforma el Sistema
Operativo GNU. El Directorio de Software de la Free Software Foundation
proporciona una interfaz web para buscar Software GNU y Software Libre
catalogados por funcionalidades.

Fuente: http://www.gnu.org/home.es.html
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Distribuciones Linux

Distribuciones no comerciales:

Archlinux (optimimizada para procesadores i686)


Aurox (basada en Red Hat Linux)
BestLinux
Bluewall
ByzantineOS
Debian (x86/PPC)
CentOS (basada en Red Hat Enterprise Linux)
Fedora Core (x86/PPC) (basada en Red Hat Linux)
Gentoo Linux (x86/PPC)
Gnoppix (basada en Ubuntu, antes en Debian, de tipo
CD autnomo)
Knoppix (basada en Debian, de tipo CD autnomo)
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Distribuciones Linux

Distribuciones no comerciales: (continuacin)


(x86/PPC/x86-64) (basada en Debian)
Kubuntu (x86/PPC/x86-64) (Ubuntu con KDE)
Mandriva Linux (x86/PPC/x86-64) (antes Mandrake Linux)
MkLinux (para todo tipo de modelos Apple [[Macintosh])
Pardus (basada en Debian)
ROCK Linux
Slackware
Slax (live basada en Slackware)
Scientific Linux (basada en Red Hat Enterprise Linux)
OpenSuSE
Trinux (basada en Debian, de tipo CD autnomo)
Trustix Secure Linux
VectorLinux (basada en Slackware)
White Box (basada en Red Hat Enterprise Linux)
Jarro Negro (basada en Slackware)
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Distribuciones Linux

Distribuciones no comerciales hispanoamericanas

ASLinux Desktop (distribucin para escritorios de descarga gratuita basada en Debian y KDE mantenida por la
empresa andaluza Activa Sistemas)
EduLinux (una distribucin educativa chilena)
Admelix (una distribucin chilena)
Linuxinf (una distribucin educativa/informatica chilena)
Espactra (Estacin Practica de Trabajo)
Gobierno GDF/Linux (creada por la Delegacin Tlalpan del Gobierno del Distrito Federal (Mxico), basada en
Fedora)
Jarro Negro (creada por la Comunidad Linux UNAM Naucalpan CLUN, por estudiantes del Colegio de Ciencias y
Humanidades plantel Naucalpan, basada en Slackware y Debian)
GuadaLinex (x86/PPC) (impulsada por la Junta de Andaluca (Espaa) basada en Ubuntu, antes en Debian)
JuegaLinex (x86/PPC) (Hermana de Guadalinex, pero con muchos juegos)
gnUAMix (patrocinada por la Universidad Autnoma de Madrid, basada en Debian y de tipo CD autnomo)
Linedux ( distribucin educativa creada en Lima - Per y basada en Debian)
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Distribuciones Linux

Distribuciones no comerciales hispanoamericanas (continuacin)

LinEspa (creada por el foro LinuxenEspaol, basada en Debian)


LinEx (creada por la Junta de Extremadura (Espaa),)
Linuxin (basada en Debian GNU/Linux 3.0 (Woody) y realizada para novatos)
LliureX (creada por la Generalitat Valenciana (Espaa) y orientada al sistema educativo, basada en Knoppix.
Soporta 2 idiomas: espaol y valenciano)
LUC3M (distribucin de la Universidad Carlos III de Madrid)
Molinux (creada por la Comunidad Autnoma de Castilla-La Mancha (Espaa), basada en Ubuntu)
Musix GNU+Linux (100% Libre. Destinado a msicos, tcnicos sonidistas y usuarios en general)
Pequelin (distribucin educativa para nios y jvenes, basada en Knoppix)
UTUTO XS (distribucin 100% libre creada en Argentina por el Proyecto UTUTO con repositorios compilados
para diversos procesadores Intel y AMD)
Tuquito ( distribucin creada en Tucuman - Argentina y basada en Debian)
Kwort ( distribucin creada en Rosario - Argentina y basada en Slackware )
WENDYX (distribucin Chilena orientada a Desktop [1], basada en knoppix/Debian/biglinux)
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Distribuciones Linux
Distribuciones comerciales
ASLinux Desktop (distribucin para escritorios de descarga gratuita basada en Debian y KDE mantenida
por la empresa andaluza Activa Sistemas)
Caldera Linux
Corel Linux (basada en Debian)
Linspire (basada en Debian) (antes Lindows)
Lycoris Desktop/LX
Mandriva Fusion de Conectiva y Mandrake.
Tumix GNu/linux
Red Hat Linux
Red Hat Enterprise Linux
SUSE Linux (x86/PPC)
Turbolinux
Xandros (basada en Corel Linux e inspirada en Debian)
Yellow Dog Linux (para PPC, basada en Fedora Core PPC)
Fuente: http://es.wikipedia.org/wiki/Distribuciones_de_Linux
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Definicin de LiveCD
Un LiveCD (traducido en ocasiones como CD vivo o CD autnomo) es un sistema
operativo (normalmente acompaado de un conjunto de aplicaciones)
almacenado en un medio extrable, tradicionalmente un CD (de ah su nombre),
que puede ejecutarse desde ste sin necesidad de instalarlo en el disco duro del
ordenador, para lo cual usa la memoria RAM como disco duro virtual y el propio
medio como sistema de archivos. Algunos LiveCD incluyen una herramienta que
permite instalarlos en el disco duro. Otra caracterstica es que por lo general no
se efectan cambios en la computadora utilizada, aunque algunos pueden
almacenar preferencias si as se requiere.

Para usar un LiveCD es necesario obtener uno (muchos de ellos distribuyen


libremente una imagen ISO que puede bajarse de Internet y grabarse en disco) y
configurar el ordenador para que arranque desde la unidad lectora, reiniciando
luego el ordenador con el disco en la lectora, con lo que el LiveCD se iniciar
automticamente.
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Cdigo Fuente, Programa Objeto, Compilador

Cdigo fuente: es el cdigo del programa original escrito en un lenguaje de programacin.

Programa Objeto: es un programa en lenguaje de mquina que resulta de la compilacin de


un programa fuente.

Compilador: Es un programa que acepta otros programas escritos en un lenguaje de alto nivel
y los traduce a otro lenguaje, generando un programa equivalente independiente, que puede
ejecutarse tantas veces como se quiera.
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Uso del CentOS
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Comandos por consola

man //despliega la documentacin en lnea


//acerca de un comando
ls // lista los archivos del directorio
Argumentos de ls: ls l, ls help // lista los archivos del directorio mostrando
// diferentes caractersticas segn el
// parmetro.
Mkdir // crea directorio (mkdir nombreDirectorio)
Cp // copia un archivo (cp archivo1 archivo2)
Mv // cambia el nombre (mv archivo1 archivo2)
// cambia el archivo de directorio
(mv /dir1/archivo1 /dir2/archivo2)
Rm // elimina el archivo indicado (rm archivo1)
Argumentos de rm: rm r // elimina archivos del directorio
(rm r /home/usuario/Desktop)
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Comandos por consola

Pwd // directorio actual


Clear // limpia la pantalla
Top // muestra los procesos en ejecucin
Kill // detiene el proceso indicado (kill 23)

Uso del Tabulador:


Facilita la bsqueda de directorios.
Permite completar los nombres de archivos.

Uso del historial


Permite acceder a los comandos que se han ejecutado en la consola, a travs
del cursor del teclado.
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Editores de texto por consola: PICO
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Construccin del primer programa en C

#include <stdio.h>

main()
{
printf(Hola Mundo);
}

Cdigo del programa 0 Hola Mundo


Laboratorio de Algoritmos y Programacin I
Laboratorio 0
Explicacin de la sintaxis (ejemplo anterior en lenguaje C):

#include <stdio.h> $ Librera que contiene las funciones standard in y out


(comunicacin entre el usuario y el computador)

main() $ main = principal. El main es el cdigo que el


computador ejecutar en primer lugar. Los parntesis
sirven para enviar valores, si fuese necesario.

{ $ Indica el comienzo del cdigo dentro del main()

Printf(hola mundo); Printf es el comando que utiliza el lenguaje C para


escribir en la pantalla. En este caso, lo que se quiere
escribir en pantalla es la frase hola mundo. Las comillas
se utilizan para indicarle al comando Printf lo que debe
escribir en la pantalla. El punto y coma ; indica el final de
una lnea de cdigo.

} Indica el final del cdigo dentro del main().


Laboratorio de Algoritmos y Programacin I
Laboratorio 0
Otras consideraciones bsicas del Lenguaje C:

El comando #include siempre se ubicar al principio del programa. El lenguaje C


contiene varias libreras, con diferentes funciones que realizan distintas tareas. En
un mismo programa pueden incluirse las libreras que sean necesarias.

Es importante que cada llave que abre { tenga su correspondiente llave que cierra
}. Esto aplica para todas las funciones del lenguaje C que utilizan llaves.

Es importante que cada una de las lneas del cdigo terminen con punto y coma (;).
El compilador generar un error si no consigue un punto y coma para cada una de
las lneas de un programa en C, mas no as para la inclusin de libreras
(#include<>) y las llaves.

Los comandos en lenguaje C son case sensitive (distincin entre maysculas y


minsculas). Esto implica que si se escribe el comando Printf() o PRINTF() en vez
del comando correcto printf(), el compilador generar un error.
Laboratorio de Algoritmos y Programacin I
Laboratorio 0
$ Comandos por consola: Compilacin

Archivos en C (nombrearchivo.c)
Archivos en C++ (nombrearchivo.cpp)
Archivos en java (nombrearchivo.java)
Archivos en Pascal (nombrearchivo.pas)

Sintaxis de compilacin de programas en lenguaje C (cnsola de Linux)

gcc nombrearchivo.c o nombreprograma


Sintaxis de compilacin al utilizar la librera math.h

gcc nombrearchivo.c o nombre programa lm

Vous aimerez peut-être aussi