Luxur0.0.4-alpha con entorno grafico+permisos de usuarios

Iniciado por taul, 24 Junio 2010, 00:26 AM

0 Miembros y 1 Visitante están viendo este tema.

taul

asi se ve la version q acabo de sacar:



para los que no sepan...Luxur es un sistema operativo (mejor dicho un kernel) creado totalmente en C y Asm...es facil de usar y esta en desarrollo..es de codigo abierto para que todo aquel q lo quiera modificar a su manera lo pueda hacer.

como no tengo muchas ganas de hacer una documentacion les explicare aca como es su extructura y que tan facil es modificarlo a su gusto.


el codigo esta escrito para q sea facil agregar o quitar comandos,funciones,etc...


boot.s <--este archivo carga el kernel en memoria y salta a el...osea o debemos darle importancia ya que siempre sera el mismo..si lo modifican si saber lo que hacen podria ocacionar problemas al iniciar..o mejor dicho no iniciara..xD.


fs.c <--contiene todas las funciones para crear archivos...los archivos se guardan en array de extructuras en el source esta bien documentado.

kernel.c<---aca inicia el sistema...y llama a menu.c q es donde esta el entorno grafico.

menu.c<---este es solo el entorno grafico...no realiza nada mas que llamar a shell() y mostrar su resultado

lib/ <---directorio que contiene las funciones basicas de una mini libc

pero entonces cual es el motor de Luxur el que se encarga de todo????

el motor y archivo mas importante de luxur es kernel/shell.c

la funcion shell() identifica si el usuario es un user comun o si es root....y pasa esa informacion a cmd() que es el encargado de ejecutar todo...

ejemplo:

int cmd(char *buf,int uso){

...

/******************************************************************************/
   else if(strcmp(buf,"ls")==0)filelist(uso);   /*fs/file.c*/
/******************************************************************************/
   else if(strcmp(buf,"edit")==0)login(permiso,fileedit(uso)); /*fs/file.c*/
/******************************************************************************/
   else if(strcmp(buf,"open")==0)fileopen(uso); /*fs/file.c*/
/******************************************************************************/

*buf es el comando q el user introdujo....
comparamos con strcmp y llamamos a la funcion q corresponda...

pero si queremos q nuestra funcion se ejecute solo si el usuario es root?

para ello hacemos..
strcmp...si es el comando de nuestra funcion ejecutamos:

login(permiso,funcion()); <--donde funcion es la funcion de ustedes..la cual se ejecutara solamente si es root.


es solo cuestion de mirar un poco el codigo es muy facil de entender y de modificar....


esta version tiene permiso de usuario y entorno grafico....si queremos salir del shell y volver al entorno grafico ejecutamos exit


para compilarlo ejecuten:

#chmod 777 compilar
#./compilar

si lo quieren hacer a mano ejecuten

#apt-get install scons
#scons

pd: compila perfectamente...descargan el .iso...lo abren y remplazan el kernel x el q acaban de compilar y listo.

web de luxur: http://www.luxur.com.ar
cualquier duda pregunten en el foro de luxur.

saludos.

@synthesize


taul

#2
si queres podes preguntar en el foro de luxur (http:://foro.luxur.com.ar)..pero para figurar en el codigo con los creditos correspondientes...tienes q enviar un mail a mi correo (figura en la web http://luxur.com.ar) con el cambio que isiste o que le agregaste al kernel + tu nombre para mencionarte como colaborador de luxur.

en la proxima version implementare memtest como un programa de luxur...y en español (ya logre implementar una calculadora).
esto nos permitira testear la memoria,podemos crear un fichero e ir guardando los testeos q vayamos haciendo...para no olvidarnos...vamos a darle un poco de utilidad..!!!


preguntas q a lo mejor se estan realizando:


pero luxur le restringira a memtest memoria?
claro q no...luxur se encargara de ejecutar memtest cuando el usuario quiera...y toda la memoria estara disponible.

podria colapsar el sistema si no le restringe la memoria?
ok pero si luxur no le restrinje la memoria a memtest podria colapsar el sistema operativo culpa de la falta de memoria....esto es cierto pero luxur se iniciara con un minimo de 32 mb de ram.

y si no tengo 32 mb...y le asigno menos?
luxur iniciara igual pero no podra ejecutarse memtest ya que la memoria no es la adecuada...ooo este luxur me hace acordar a windows..siempre decidiendo por mi....jajaja pense en esa frase antes q me la digan jajaja...podra ejecutarse memtest igual si quieren pero primero deberan identificarse como root. (asiendose cargo q si se reinicia la pc por falta de memoria es culpa de ustedes y no de luxur.)

pero si pones memtest como una aplicacion de luxur teniendo los beneficios de memtest+los de luxur...me conviene usar luxur antes q memtest?

y si....esa es la idea jajajaja.


pd: y pensar q todo empeso con un code q no creo q aiga superado las 100 lineas jajaja.actualmente no conte las cantidad de lineas q tiene pero seguro superan las 1000 lineas

saludos...y esperemos q avanse....muchas gracias por comentar!!!

saludos.

@synthesize

¿Qué compilador usas? La sintaxis varía de unos a otros..

taul

se compila con gcc + ld en linux..... en windows se puede compilar pero es mas complicado.

en vez de make uso scons qe para mi es mucho mejor...una ves q lo instalas a scons ejecutas

#scons

te lo compila y linkea.

@synthesize

Vale, yo he estado de formateos estos días y todavía no me he instalado ningún GNU/Linux, mañana cuando lo instale me pongo a ello, a ver si te puedo aportar alco de cf.

taul

dale...si queres podes iniciarlo con grub en tu pc o sino usa virtualbox.

Debci

MMmm lo que se me plantea es la creación de ejecutables para dicho sistema, pues si haces una calculadora, la añades al código, no es que la programes y la compiles para el Kernel no?

Saludos