¡Oh no! ¿Dónde está el JavaScript? El navegador Web no tiene JavaScript activado o no es compatible con JavaScript. Active JavaScript en su explorador Web para ver correctamente este sitio Web o actualizar a un navegador Web que admita JavaScript.
Sabías que...
Algunos volúmenes de Dreamon incluyen un juego completo, muy sencillo, llamado SEGA Swirl.
Artículos

Guia de Linux en DC para Principiantes

Guia de Linux en Dreamcast para principiantes



Basada en "Linux on Dreamcast: A Beginners Guide", de Adrian O´Grady.



-¿Qué es Linux DC?:



LINUX es un sistema operativo de 32 bits, basado y totalmente compatible con UNIX, probablemente la mejor familia de Sistemas Operativos que existen. LINUX fue creado inicialmente por Linus Torvalds, a partir de UNIX. Lo llamó "Unix para el 386" y pronto miles de programadores se interesarian por su idea y empezarían a colaborar en la creación de este Sistema Operativo. Linux es el núcleo (kernel) del Sistema, que al unirlo con el proyecto GNU de Richard Stallman formó lo que hoy conocemos como GNU/Linux, conocido como Linux a secas por mayor comodidad (aunque linux repito es el nombre del kernel). Se cambió radicalmente un aspecto con respecto UNIX: era un sistema operativo libre (GNU). LINUX tenía el código totalmente abierto (programado en C) y cada usuario podría modificar el Sistema Operativo de acuerdo a sus necesidades. Bajo este tipo de licencia eran lanzados los programas también: todo programa tenía su código fuente disponible al público, para que cada uno lo modificara si lo creía necesario.



En contra de lo que alguien pueda pensar, LINUX se ha convertido en el Sistema Operativo por excelencia para el usuario de nivel alto y medio, y no tiene nada que envidiar a otras soluciones de la competencia. Es un sistema operativo MULTIUSUARIO de 32 bits, con un sistema de archivos mucho más eficiente de lo que nos tienen acostumbrados los sistemas monousuario de la competencia: el EXT2 que permite un altísimo aprovechamiento de la capacidad de disco y un indice 0 de fragmentación (no hay fragmentación). Hay que añadir que se trata de un sistema con concurrencia de procesos muy eficiente, lo que junto a su capacidad de trabajar con varios procesadores a la vez definen el concepto de "Multitarea".





-¿Porque existe una version para Dreamcast?:



Muy simple. Es un clon de UNIX que se caracteriza por ser un sistema PORTABLE, que significa que modificando minimamente el código puede ser compilado para ser usado por otro tipo de procesador, lo que hace que tengamos versiones de UNIX en PC, en Workstations, en MAC... toda clase de miniordenadores. LINUX también tiene esta caracteristica, y ha sido compilado para un tipo un tanto "especial" de miniordenador: la consola Sega Dreamcast.





-Requerimientos:



El unico requerimiento 100% necesario es un TECLADO. Sin él no podrás escribir y por tanto no podrás hacer login (entrar al sistema) con lo cual no podrás usar LINUX DC.



Se hace aconsejable que tengas un RATON para las X-WINDOWS, y si tienes un VGA BOX mejor que mejor (con la TV es posible que se te coma parte de la pantalla, con lo que puedes perder parte de la linea de comandos, bien por abajo o por la izquierda). Los mandos corrientes de DC se pueden usar para jugar con PRBOOM y XMAME.





-Arrancando LINUX:



Pon tu LINUX DC en la dreamcast y enciende (suponiendo que te hayas bajado una imagen AUTOBOOT). Si te la has compilado tu mismo (para poner roms, o algo similar) y NO has hecho el disco AUTOBOOT, carga el boot cd de Utopia y despues cambia el disco por el de LINUX DC.



Tras unos segundos aparecerá una imagen azul y después empezará el proceso de carga de demonios y los checkeos del sistema. Cuando el proceso de carga haya finalizado, el shell del sistema nos pedirá que introduzcamos nuestro nombre de usuario:



Debian GNU/Linux testing/unestable dreamcast tty1



dreamcast login:



Una vez visto esto pondremos "root" (*) y pulsamos enter para hacer LOGIN. Despues de el mensaje de vienvenida (/etc/motd) se te presentará el PROMPT del sistema:



dreamcast:~#



Bienvenido al maravilloso mundo de Linux



(*) El "root" es el superusuario del Sistema, tiene UID 0 (todos los privilegios). Es el encargado de crear nuevos usuarios, administrar sus permisos y crear grupos, entre otras cosas. En ESTA VERSION para DC solo hay 1 usuario: el "root", y además NO TIENE CLAVE, porque en este caso no es necesario Esto no es lo normal En un sistema UNIX/LINUX funcionando en un ordenador. Normalmente es totalmente indispensable que el superusuario tenga un password que nadie conozca y además este debe ser cambiado con regularidad, debe ser alfanumerico y que preferiblemente no se encuentre en ningún diccionario (por motivos de seguridad).





-Consideraciones a tener en cuenta:



1) Nuestro teclado es español (se supone) pero LINUX viene con el teclado configurado en inglés. Así que algunas teclas no estarán donde aparecen representadas. Puedes poner cualquier caracter si conoces su código ASCII, pulsando ALT + ASCII. Por ejemplo, para poner el símbolo ~ debemos pulsar ALT + 126 (126 es el códgo ASCII del carácter ~)



2) Los directorios se separan con barras, no contrabarras. Aunque no lo parezca todos los SO´s trabajan así, solo Microsoft introdujo la contrabarra para separar directorios, para utilizar la barra / al añadir modificadores a los comandos.



3) Linux es "case sensitive", es decir, distingue mayúsculas y minúsculas. No es lo mismo el archivo "cosas.doc", que "COSAS.DOC" o "Cosas.doc". Lo mismo sucede con los comandos, que hay que escribir en minúsculas.



4) Los comandos y programas tienen una entrada estándar y una salida estándar. Podemos cambiar esto mediante los redirecionamientos (>, <, >>, << ). Por ejemplo, la salida estándar del comando ls será la pantalla. Podemos hacer que en lugar de mostrarlo por pantalla lo guarde en un fichero:



ls -lagF > fichero



O podemos hacer que, si existía el fichero, añada los datos a continuación, sin borrar lo que había:



ls -lagF >> fichero



Son solo dos ejemplos, el que quiera más información que la busque. No acabaría si me pusiera a hablar de los redirecionamientos



5) Se puede usar la SALIDA de un programa como ENTRADA de otro. Para esto usamos las tuberías | :



ls | sort



La salida de ls (listado de archivos) la recibe como entrada sort, quien recibe la lista de archivos y los ordena, y luego los muestra por la salida estándar de sort: la pantalla.





-Unos cuantos comandos simples:



No voy a explayarme demasiado sobre estos comandos, tenéis multitud de informacion sobre como funciona LINUX en internet. No obstante, aquí van algunos comandos:



Nota: el comando MAN no está en esta versión. Este comando, nos muestra como se usa cualquier comando del sistema.



pwd: Te enseña en el directorio en que estás posicionado (directorio activo).



cd directorio: cambia al directorio especificado. Recordemos que en LINUX la se utiliza la barra / para separar directorios, no la contrabarra como en los sistemas Microsoft.



ls: nos muestra los archivos y directorios del directorio actual. Es el equivalente al comando DIR de MS-DOS. Podemos poner detrás una ruta de directorio para que haga el ls alli en lugar de en el directorio activo. Con ls -l haremos un listado largo (veremos todos los datos), y con ls -a veremos también los archivos ocultos. Nota: podemos encadenar varios modificadores: ls -alFg



mkdir: Igual que en MS-DOS, crea un directorio.



rmdir: Borra un directorio. Debe estar vacío.



more archivo: Nos muestra, paginado, el contenido de un archivo.



startx: Inicia el entorno de ventanas X-WINDOWS.



xdm: Igual que startx pero pidiendo, además, LOGIN.



df: Enseña cuanto espacio de disco está usado.



which comando: Te dice exactamente que ejecutable está asociado a un comando



shutdown -h now: Apaga el sistema. No es necesario en este LINUX puesto que no tenemos disco duro, la unidad está emulada en RAM y por tanto es volátil y no causará daños en archivos al apagar (directamente se destruirán).



cat: Concatenar. Recibe texto y lo manda a la salida estándar. Podemos usarlo para escribir en un fichero (cat > fichero), o para leer lo que contiene, por ejemplo (cat fichero).



who: muestra los usuarios que hay utilizando el sistema. En este caso solo puedes estar tu.



vi: programa editor de texto muy potente, aunque un poco complicado de usar para novatos. Si escribimos código C nos coloreará el texto.





-El sistema de archivos:



LINUX DC arranca usando más o menos 2 megas de RAMDISK (disco en memoria RAM). Esto se traduce en que no hay mucho espacio para guardar tus archivos en la DC. De todas formas, cuando apagues la consola todos los datos se borrarán. No obstante, hay algunos directorios importantes en esta versión de LINUX:



/root: Tu "home" o directorio principal. Aquí es donde puedes guardar todo el trabajo que hagas. Es tu directorio personal de usuario que en el caso de cualquier usuario normal es /home/usuario, pero el root siempre tiene uno fijo llamado /root.



/etc: La mayoria de los ficheros de configuración de los programas en esta distribución están aqui.



/gdrom: Es un enlace a /mnt/gdrom, es decir, aquí encontraremos el contenido del GD de LINUX. Por desgracia, en esta versión no se puede hacer un "umount" para montar la unidad de nuevo, por lo que solo podremos leer el disco original de LINUX no pudiendo cambiarlo por otro.



/bin /sbin /usr/bin /usr/sbin: En estos directorios están la mayoria de los binarios o programas que incluye esta distribución. Basta echar un ojo para ver que contienen.



/usr/games: Unos cuantos juegos para LINUX, la mayoría en modo texto.



/usr/doc: Documentación sobre LINUX.



Muchos programas puede que no estén en el path, así que tendréis que ejecutarlos de forma absoluta, anteponiendo ./ al comando, por ejemplo:



./startx





-Prboom:



Empieza lo divertido. Prboom es un port del DOOM de MS-DOS para LINUX. Pues como tenemos LINUX podemos jugarlo.



Lo primero es fijar el "frame buffer depth". Lo haremos escribiendo:



fbset -depth 16



Despues lanza el prboom escribiendo prboom. En ocasiones falla, asi que vuelve a poner el fbset y vuelve a intentar lanzar el prboom. Tarde o temprano funcionará.





-Como usar vi para editar los ficheros:



Esto es una breve explicación de como se usa vi. Que conste que un manual completo nos podria llevar fácilmente 30 páginas, porque a pesar de ser muy potente, vi sigue siendo un poco complejo para usuarios no experimentados.



Para abrir o crear un archivo con vi, escribe vi seguido del nombre del fichero:



dreamcast:~# vi hola.txt



Una vez que se haya cargado el programa, tienes que ponerte en modo "insertar" para poder escribir cualquier cosa. Para esto pulsa "i". Una vez hecho esto, puedes escribir como el cualquier otro editor de texto y moverte por el texto con las teclas de dirección.



Cuando hayas terminado de editar tu documento, presiona ESCAPE para abandonar el modo de inserción. Puedes salir sin guardar los cambios escribiendo ZZ (shift + zz) o salir guardando los cambios escribiendo :q!





-Programando con la Dreamcast:



Esta versión de LINUX viene con un compilador de C/C++ para Dreamcast. El límite solo lo pone el tamaño de la RAM. Para empezar, aquí tenemos un típico programa "hola mundo" en C.



Primero necesitamos editar el codigo fuente:



dreamcast:~# vi hola.c



Luego ponemos el siguiente texto:



main() { printf("Hola mundo!! "); return 0;



}



Que conste que la función principal siempre debe devolver algo en DC.



Después de guardarlo podemos compilarlo así:



dreamcast:~# gcc hola.c -o hola



(Donde "hola" es el nombre del fichero ejecutable resultante)



Luego podrás ejecutar el programa de la siguiente manera:



dreamcast:~# ./hola Hola mundo!!



dreamcast:~#



Felicidades. Acabas de escribir tu primer programa para Dreamcast. Aquí va otro ejemplo un poco más complejo, por si alguien quiere probarlo:





main() { int num1, num2; printf("Escriba un numero "); scanf("%d", &num1); printf("Escriba otro numero "); scanf("%d", &num2); printf("La suma de los dos números es %d ", num1+num2); return 0; }





-Uso del coders cable:



Puedes usar el coders cable para conectar la Dreamcast desde tu PC. Abre tu programa de comunicaciónes (por ejemplo, el Hyper Terminal) y configuralo a 115200bpp (8-N-1) y una vez que la dreamcast haya arrancado, deberías ver la pantalla de login. Haz login como root.



Ahora podemos usar el cable para guardar datos en el PC desde la Dreamcast. Para ello escribiremos:



dreamcast:~# gzip stuff.dat dreamcast:~# uuencode stuff.dat.gz stuff.dat.gz.uue > stuff.dat.gz.uue dreamcast:~# more stuff.dat.gz.uue



Así copiamos la salida en un fichero de texto y lo guardamos en el disco duro del pc. Para devolver el archivo a la dreamcast primero le dremos a la dreamcast que copie alguna entrada en un fichero:



dreamcast:~# cat > stuff.dat.gz.uue



Despúes, copiamos los datos del archivo de texto al archivo de comandos y presionamos CONTROL + C (en una nueva linea) cuando lo haya mandado todo. Después escribimos:



dreamcast:~# uudecode stuff.dat.gz.uue -o stuff.dat.gz dreamcast:~# gunzip stuff.dat.gz dreamcast:~# rm stuff.dat.gz.uue



Ya tenemos el archivo stuff.dat de vuelta.



Redactado Por Pro^^

Gromber abril 11 2009 6316 visto 1 comentarios 2 calificaciones Imprimir

1 comentarios

Deja un comentario

Debes iniciar sesión para publicar un comentario.
  • J
    La verdad , el comentario anterior tiene toda la razon del mundo , ahora el Limite del linux no es la ram de la DC , es el tamaño de la SD card wink
    - mayo 10 2009 20:45:29

La valoración sólo está disponible para miembros. Por favor Iniciar sesión o Registro para votar.
¡Excelente! (1)50 %
Muy Bien (1)50 %
Bien (0)0 %
Normal (0)0 %
Pobre (0)0 %
Sponsors
Afiliados
SEGA Saturno - Saturn, SEGA y Videojuegos