Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: prometheus48 en 10 Diciembre 2011, 11:38 am



Título: Mini Sistema Operativo!!!
Publicado por: prometheus48 en 10 Diciembre 2011, 11:38 am
Hola.

Estaba haciendo un sistema operativo desde cero, primero en ensamblador.
El boot lo voy a hacer con grub o lilo aunque eso es lo de menos, bueno mi pregunta es esta:
Código:
BITS 16

start:
mov ax, 07C0h
add ax, 288
mov ss, ax
mov sp, 4096

mov ax, 07C0h
mov ds, ax


mov si, text_string
call print_string

jmp $


text_string db 'Hola Amigos de el hacker.net!', 0


print_string:
mov ah, 0Eh

.repeat:
lodsb
cmp al, 0
je .done
int 10h
jmp .repeat

.done:
ret


times 510-($-$$) db 0
dw 0xAA55
En donde dice:
text_string db 'Hola Amigos de el hacker.net!', 0
¿Podría cargar un archivo hecho en C++, por ejemplo llamado main.cpp, que seria el sistema operativo?
En realidad no se si funcionaria porque como va a interpretar el ordenador el código en C++ si no tiene compilador o interpretador?
Osea:
¿Cómo hago para que en donde dice text_string db 'Hola Amigos de el hacker.net!', 0 se cargue un archivo de C++, que va a ser la línea de comandos (hecha por mí),?
Tengo que añadir algo al código?
¿O debería hacer un kernel?

Gracias chicos.
Salu2!


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 16 Diciembre 2011, 22:12 pm
¿Podría cargar un archivo hecho en C++, por ejemplo llamado main.cpp, que seria el sistema operativo?
En realidad no se si funcionaria porque como va a interpretar el ordenador el código en C++ si no tiene compilador o interpretador?
Osea:
¿Cómo hago para que en donde dice text_string db 'Hola Amigos de el hacker.net!', 0 se cargue un archivo de C++, que va a ser la línea de comandos (hecha por mí),?
Tengo que añadir algo al código?
¿O debería hacer un kernel?

Gracias chicos.
Salu2!
Por supuesto que si se puede, de hecho yo estoy en lo mismo pero ya no me interesa abrir un archivo cpp o c. Pero creo que tienes una idea equivocada sobre eso, porque tienes que compilar ambos programas, el bootloader y el kernel por separado, el bootloader deberia tener alguna función para cargar sectores la cual llamaras desde el main de tu bootloader, luego grabas el boot en un floppy (en el MBR) y el kernel lo grabas en el segundo sector del floppy.
Aca hay una excelente página que te muestra las interrupciones y sus usos, y hay una, la Int 13h que es para manejar el floppy y los discos duros.
http://www.ctyme.com/intr/rb-0607.htm (http://www.ctyme.com/intr/rb-0607.htm)
Yo tambien estoy en lo de crear un SO, y estoy desarrollando un blog en el que muestro mis avances, si te interesa vemos como te mando el link, ya que no quiero meterme en lios con el moderador -.-
Ahhh y se me olvidaba, la wikipedia tambien nos da información sobre como usar las interrupciones.
http://es.wikipedia.org/wiki/Llamadas_de_interrupci%C3%B3n_del_BIOS#Tabla_de_interrupciones (http://es.wikipedia.org/wiki/Llamadas_de_interrupci%C3%B3n_del_BIOS#Tabla_de_interrupciones)
Somos pocos los que quedamos con ganas de crear nuestro propio sistema operativo :D


Título: Re: Mini Sistema Operativo!!!
Publicado por: Stoya en 16 Diciembre 2011, 23:10 pm
Un SO sin kernel sería una idea muy novedosa  :rolleyes:


Título: Re: Mini Sistema Operativo!!!
Publicado por: Khronos14 en 17 Diciembre 2011, 01:55 am
Un SO sin kernel sería una idea muy novedosa  :rolleyes:

Al mismo tiempo que una idea estúpida...


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 17 Diciembre 2011, 02:51 am
Al mismo tiempo que una idea estúpida...
Sin embargo, en este tema nadie ha dicho algo de hacer un SO sin kernel. Quien comenzo el tema dijo que si debia hacer un kernel, ya que lo que el esta haciendo es un bootloader. Aun que si se le puede cuestionar el hecho de haber nombrado a LILO y GRUB, porque no los necesita, ¿no esta haciendo un boot?
Aunque no es tan estupido ni alocado hacer un SO sin kernel, ya que se puede hacer un interprete de comandos lo suficientemente pequeño como para que se encuentre junto al boot dentro de 512 bytes, pero el que lo haga sera un maestro. ;D


Título: Re: Mini Sistema Operativo!!!
Publicado por: farresito en 17 Diciembre 2011, 03:29 am
Hacer un sistema operativo no es novedoso; es estúpido. De hecho, los primeros sistemas operativos no tenian kernel. Pero entonces es una *****. No tienes gestión de RAM, ni de privilegios, ni procesos...


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 17 Diciembre 2011, 03:42 am
Hacer un sistema operativo no es novedoso; es estúpido. De hecho, los primeros sistemas operativos no tenian kernel. Pero entonces es una *****. No tienes gestión de RAM, ni de privilegios, ni procesos...
No necesariamente, si observas Mac OSX es un SO novedoso, pero si miras Windows claramente no lo es. Para explicarlo mejor te doy el siguiente ejemplo, cuando Linus Torvalds escribió Linux lo que hizo no fue para nada novedoso, de hecho fue criticado por lo poco novedoso que fue, el escribió un núcleo monolítico que era considerado obsoleto, sin embargo todos conocemos el resto de la historia, y nos dimos cuenta que no fue estúpido, sino que todo lo contrario. Y es que siempre ha habido poca gente dispuesta a hacer un sistema operativo. Hay tres tipos de personas en ese sentido: 1) La que sabe hacer y lo hace 2) La que no sabe pero aprende haciendo 3) La que tiene solo las ganas. Las personas que no le interesa el tema no debería desanimar a los que les interesa, sea cual sea su tipo.


Título: Re: Mini Sistema Operativo!!!
Publicado por: Khronos14 en 17 Diciembre 2011, 12:21 pm
armizh y prometheus48 también, miraos la definición de Sistema Operativo anda.

Un Sistema Operativo permite la ejecución de programas, para llegar a este punto necesitas un sistema de gestión de memoria, un scheduler, GDT, IDT, LDT, etc.. El sistema operativo puede ser monotarea (como las primeras versiones de iOS) o multitarea...

Si llegas a este punto tu solo ya eres un dios, luego te queda la tarea de crear un sistema de drivers, con todas las implicaciones que ello conlleva como los anillos de privilegio y la seguridad... Un Sistema Operativo se tiene que enterar de absolutamente todo lo que sucede en tu ordenador...

http://wiki.osdev.org/Main_Page

Lo que prometheus48 hace en su código es ejecutar un programa de 16 bits, que se ejecuta sin un Sistema Operativo...

Saludos.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 17 Diciembre 2011, 16:16 pm
armizh y prometheus48 también, miraos la definición de Sistema Operativo anda.

Un Sistema Operativo permite la ejecución de programas, para llegar a este punto necesitas un sistema de gestión de memoria, un scheduler, GDT, IDT, LDT, etc.. El sistema operativo puede ser monotarea (como las primeras versiones de iOS) o multitarea...

Si llegas a este punto tu solo ya eres un dios, luego te queda la tarea de crear un sistema de drivers, con todas las implicaciones que ello conlleva como los anillos de privilegio y la seguridad... Un Sistema Operativo se tiene que enterar de absolutamente todo lo que sucede en tu ordenador...

http://wiki.osdev.org/Main_Page

Lo que prometheus48 hace en su código es ejecutar un programa de 16 bits, que se ejecuta sin un Sistema Operativo...

Saludos.

Estoy de acuerdo contigo, y lo que hace prometheus48 solo es un programa que inicia el sistema, pero esa es la primerisima parte para crear un mini sistema operativo, ya le falta pasar al modo de 32 bits, controlar el texto en pantalla, el teclado, el audio, gestionar la memoria, etc. o simplemente crear un SO a 16 bits con las debilidades estructurales que esto implica, pero no es necesario ser un Dios para hacer todo eso solo... al menos no creo que Linus Torvalds y Andrew Tanenbaum lo sean, aunque claramente nosotros estamos a años luz de ellos, pero a lo que quiero llegar es a que no es imposible lo de crear un SO basico.


Título: Re: Mini Sistema Operativo!!!
Publicado por: prometheus48 en 18 Diciembre 2011, 12:22 pm
Hola.
Gracias por los comentarios.
1.-Mencione lo del lilo y el grub porque no voy a utilizar mi bootloader. Lo hize lo más
fácil posible para que me dijeran si yo podría cargar el archivo .cpp.
2.-Lo del kernel lo dije porque no pensaba que la shell ocupara mas de 512 bytes,
ya lo se,¿Cómo va a caber una shell en 512 bytes?. Cuando me puse a hacer el bootloader no me di cuanta, seguramente pense en MiB.
El comentario de khronos14 me a puesto  :-(  El foro es para compartir y aprender.!
Salu2!


Título: Re: Mini Sistema Operativo!!!
Publicado por: prometheus48 en 18 Diciembre 2011, 12:30 pm
Hola,

Me podrias dar el enlace de tu blog?Estoy interesado.
Salu2!


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 18 Diciembre 2011, 12:56 pm
Hola,

Me podrias dar el enlace de tu blog?Estoy interesado.
Salu2!


Bueno, pero no es mucho lo que he logrado, mi proyecto esta recien comenzando. Mi bootloader muestra un par de mensaje, inicia el modo protegido y escribe a la pantalla desde este modo, y estoy trabajando para cargar sectores del floppy o del disco duro desde el modo real y modo protegido.
http://nuosdeveloper.blogspot.com/ (http://nuosdeveloper.blogspot.com/)


Título: Re: Mini Sistema Operativo!!!
Publicado por: farresito en 18 Diciembre 2011, 19:35 pm
Lo difícil de un SO no es tanto lo de la gestión de memoria, sinó crear, como han dicho, drivers para muchas plataformas y etc.

@armizh:
Linux fue criticado por una persona, llamada Tennebaum (o algo asi), el creador de Minix. Pero Linux en su momento fue muy bien aceptado y negarlo es no haber leído su historia. Muchísima gente colaboró y que alguien no lo aceptara, como el lógico debido a que sus intereses eran obtener usuarios para su sistema operativo, no quiere decir nada.

Por cierto, ha habido MUCHA gente que ha hecho SO, pero lo que hizo Linus en su momento fue crear uno libre optimizado para i386, algo que no existía, y hay que recordar que los proyectos que triunfan son los que innovan. No habia OS para i386 que corrieran.

Por cierto, lo de que Windows no es novedoso y que Mac lo es vas totalmente equivocado. Soy pro-Linux así voy a ser imparcial: MacOS no es exactamente un Microkernel (es derivado del núcleo Mach pero no exactamente un microkernel) y recuerda que los monolíticos corren mucho más en términos generales, por lo que lo de innovación es en una parte sí y en otra no.

Si hablasemos de innovación hay el SO 'plan 9' creado por Bell Labs, los mismos que los de Unix. Entonces podríamos afirmar que todos los SO actuales están pasados teniendo el Plan 9. Es relativo. Por que no está totalmente usado Plan 9? Por diferentes cosas a pesar de ser muy innovativo.

Un abrazo.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 4 Enero 2012, 00:53 am
@armizh:
Linux fue criticado por una persona, llamada Tennebaum (o algo asi), el creador de Minix. Pero Linux en su momento fue muy bien aceptado y negarlo es no haber leído su historia. Muchísima gente colaboró y que alguien no lo aceptara, como el lógico debido a que sus intereses eran obtener usuarios para su sistema operativo, no quiere decir nada.

Por cierto, ha habido MUCHA gente que ha hecho SO, pero lo que hizo Linus en su momento fue crear uno libre optimizado para i386, algo que no existía, y hay que recordar que los proyectos que triunfan son los que innovan. No habia OS para i386 que corrieran.

Por cierto, lo de que Windows no es novedoso y que Mac lo es vas totalmente equivocado. Soy pro-Linux así voy a ser imparcial: MacOS no es exactamente un Microkernel (es derivado del núcleo Mach pero no exactamente un microkernel) y recuerda que los monolíticos corren mucho más en términos generales, por lo que lo de innovación es en una parte sí y en otra no.

Si hablasemos de innovación hay el SO 'plan 9' creado por Bell Labs, los mismos que los de Unix. Entonces podríamos afirmar que todos los SO actuales están pasados teniendo el Plan 9. Es relativo. Por que no está totalmente usado Plan 9? Por diferentes cosas a pesar de ser muy innovativo.

Un abrazo.

Quizas esto venga tarde pero va. Windows no es novedoso en el sentido de que es escrito uno sobre el otro por lo que internamente Windows 7 funciona de forma parecida a XP, apesar de las nuevas funcionalidades. Sobre lo de Mac realmente lo es viene dado por el funcionamiento que tiene, ya que que es bastante estable incluso mas que linux (ni hablar windows) y el hecho de ser el so basado en un microkernel mas popular y estable del mercado, sin contar el hecho de que cada vez apple nos viene con cada novedad como el port hacia IA32, relacion funcionalidad/apariencia mejor que otros SOs. Linux fue duramente criticado por Tanenbaum debido al modelo de kernel y no por otra cosa, segun Tanenbaum era obsoleto y riesgoso usar un kernel monolitico, debido a que si cae un servicio se cae todo el sistema, ademas de que es mas dificil la depuracion, programacion, etc etc. En cambio un kernel hibrido posee un orden y si un servicio cae, solo cae el modula al que pertenece y el kernel podra reiniciar el modulo y el servicio sin reiniciar el sistema. La base de la disputa entre Tanenbaum y Linus fue esa. Con el tiempo hemos visto que ambos tenian razon, y si analizamos un poco, los 3 SOs mas populares de la actualidad son los mejores dentro de su ambito: Linux dentro de los monoliticos, Windows en los hibridos (al mas puro estilo peor es mejor) y Mac en microkernel (apesar de que tal como lo dices, no es exactamente un microkernel, sino que funciona sobre un microkernel)


Título: Re: Mini Sistema Operativo!!!
Publicado por: Khronos14 en 4 Enero 2012, 01:28 am
armizh, no se donde sacaste eso de que Mac OS X es un microkernel porque no es cierto. Es un kernel híbrido.

Saludos.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 4 Enero 2012, 02:27 am
armizh, no se donde sacaste eso de que Mac OS X es un microkernel porque no es cierto. Es un kernel híbrido.

Saludos.
Bueno, como antes dije, Mac OSX no es exactamente un microkernel, sino que mas bien esta construido sobre un microkernel.

Saludos.


Título: Re: Mini Sistema Operativo!!!
Publicado por: BlackZeroX en 6 Enero 2012, 08:40 am
Quizas esto venga tarde pero va. Windows no es novedoso en el sentido de que es escrito uno sobre el otro por lo que internamente Windows 7 funciona de forma parecida a XP, apesar de las nuevas funcionalidades. Sobre lo de Mac realmente lo es viene dado por el funcionamiento que tiene, ya que que es bastante estable incluso mas que linux (ni hablar windows) ...

Pues recrear un S.O. desde 0 uff... es muchisimo tiempo... por otro lado seria mejor.
¿Seria tan amable de definir estable?

Dulces Lunas!¡.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 7 Enero 2012, 00:00 am
Pues recrear un S.O. desde 0 uff... es muchisimo tiempo... por otro lado seria mejor.
¿Seria tan amable de definir estable?

Dulces Lunas!¡.

Con estable me refiero a que la cantidad de veces que el sistema se cuelga, ocurren excepciones, errores etc, es menor comparado a la de otros sistemas operativos (p.ej. Windows). Bueno, en MAC OSX eso esta dado igual por las características de las PC, ademas del hecho que las computadoras Mac estan diseñadas para ser compatible con OSX y viceversa.

Saludos


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 15 Enero 2012, 18:49 pm
Hacer un sistema operativo no es novedoso; es estúpido. De hecho, los primeros sistemas operativos no tenian kernel. Pero entonces es una *****. No tienes gestión de RAM, ni de privilegios, ni procesos...

Los primeros Sistemas Operativos no tenian eso porque eran orientados a procesadores sin gestión de multitarea, basicamente porque eso en aquella época no existía.

Si es que hay cada listillo...


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 15 Enero 2012, 21:12 pm
Los primeros Sistemas Operativos no tenian eso porque eran orientados a procesadores sin gestión de multitarea, basicamente porque eso en aquella época no existía.

Si es que hay cada listillo...
Los primeros sistemas operativos si tenia kernel, pero muy reducido. De hecho en realidad muchos sistemas operativos son simplemente un kernel + una consola de comandos. Linux es simplemente eso. Lo que nosotros utilizamos son distribuciones que traen gestores de ventanas, que son los que crean la interfaz gráfica. Sin eso utilizas los comandos y es lo mismo. La gestion multitarea fue un avance para mejorar la gestion de los pocos recursos que tenian las computadoras, y en un principio era esencialmente para economizar tiempo, al igual que los sistemas multiusuarios que ya estan olvidados en el baul de los recuerdos.


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 15 Enero 2012, 21:28 pm
Los primeros sistemas operativos si tenia kernel, pero muy reducido. De hecho en realidad muchos sistemas operativos son simplemente un kernel + una consola de comandos. Linux es simplemente eso. Lo que nosotros utilizamos son distribuciones que traen gestores de ventanas, que son los que crean la interfaz gráfica. Sin eso utilizas los comandos y es lo mismo. La gestion multitarea fue un avance para mejorar la gestion de los pocos recursos que tenian las computadoras, y en un principio era esencialmente para economizar tiempo, al igual que los sistemas multiusuarios que ya estan olvidados en el baul de los recuerdos.

Yo a lo que me refiero no es al kernel, es a todo lo que decía de la gestión de procesos y demás.

Y sí, ya se que surgieron para eso, y de hecho el primer procesador que incluyo soporte a operativos multitarea(el 80386 de Intel si mal no recuerdo) practicamente se uso como un procesador monotarea pero más rápido.

La cosa es, como iban a tener los SO de aquella época gestión de esas cosas si ni existían.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 15 Enero 2012, 21:46 pm
Yo a lo que me refiero no es al kernel, es a todo lo que decía de la gestión de procesos y demás.

Y sí, ya se que surgieron para eso, y de hecho el primer procesador que incluyo soporte a operativos multitarea(el 80386 de Intel si mal no recuerdo) practicamente se uso como un procesador monotarea pero más rápido.

La cosa es, como iban a tener los SO de aquella época gestión de esas cosas si ni existían.

Gracias por la aclaracion, y bueno yo tambien debo aclararme. A lo que yo queria llegar es que la gestion de memoria si existia y era bastante compleja, eso era a lo que se le llamaban sistemas de tiempo compartido, que era un programa que se limitaba a gestionar la memoria. Se puede decir que es el antepasado del sistema operativo, tal como lo dice AST (Andrew Stuart Tanenbaum) en su libro "Sistemas Operativos: Diseño e Implementación".


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 15 Enero 2012, 22:28 pm
Gracias por la aclaracion, y bueno yo tambien debo aclararme. A lo que yo queria llegar es que la gestion de memoria si existia y era bastante compleja, eso era a lo que se le llamaban sistemas de tiempo compartido, que era un programa que se limitaba a gestionar la memoria. Se puede decir que es el antepasado del sistema operativo, tal como lo dice AST (Andrew Stuart Tanenbaum) en su libro "Sistemas Operativos: Diseño e Implementación".
Si, supongo que al final daría lugar a lo que es el Time Slizing y todo eso, pero aún así, necesitas algun tipo de soporte de memoria virtual o bits de privilegios para que unas tareas no interfieran con otras, etc...¿no?


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 15 Enero 2012, 22:42 pm
Si, supongo que al final daría lugar a lo que es el Time Slizing y todo eso, pero aún así, necesitas algun tipo de soporte de memoria virtual o bits de privilegios para que unas tareas no interfieran con otras, etc...¿no?
Claro! en el momento que se dieron cuenta de eso fue que se empezo a dejar de lado los sistemas multitareas y nacieron las computadoras personales, y asi nacieron los anillos de privilegios (CR0, CR1, CR2, CR3 y CR4), la paginacion, y la gestion de memoria que es, si me equivoco que alguien me corrija, lo mas dificil de la programación de un sistema operativo.
O al menos asi lo siento yo cuando estoy trabajando en mi proyecto personal (exactamente un sistema operativo). Digamos que es uno de los problemas que aun no logro resolver, y por eso es que leo, leo y leo mas para poder crear un gestor de memoria con funciones minimas, aunque por el momento tal creación la tengo postergada.


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 15 Enero 2012, 22:51 pm
Claro! en el momento que se dieron cuenta de eso fue que se empezo a dejar de lado los sistemas multitareas y nacieron las computadoras personales, y asi nacieron los anillos de privilegios (CR0, CR1, CR2, CR3 y CR4), la paginacion, y la gestion de memoria que es, si me equivoco que alguien me corrija, lo mas dificil de la programación de un sistema operativo.
O al menos asi lo siento yo cuando estoy trabajando en mi proyecto personal (exactamente un sistema operativo). Digamos que es uno de los problemas que aun no logro resolver, y por eso es que leo, leo y leo mas para poder crear un gestor de memoria con funciones minimas, aunque por el momento tal creación la tengo postergada.

Claro yo todo eso ya lo sabía, pero por eso decía que al principio los procesadores no tenian ese soporte para ejecutar varias tareas simultaneas. Este semestre estudio Sistemas Operativos, pero todos los aspectos generales hardware de los procesadores multitarea ya los conozco y si, el gestionar las tablas de páginas y la memoria es de lo más dificil, porque los privilegios bueno, al fin y al cabo es cambiar unos cuantos bits y tal, pero claro, a la hora de hacer algo tan grande como un sistema operativo o sigues una metodología o te vuelves loco  :rolleyes:


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 15 Enero 2012, 23:10 pm
Claro yo todo eso ya lo sabía, pero por eso decía que al principio los procesadores no tenian ese soporte para ejecutar varias tareas simultaneas. Este semestre estudio Sistemas Operativos, pero todos los aspectos generales hardware de los procesadores multitarea ya los conozco y si, el gestionar las tablas de páginas y la memoria es de lo más dificil, porque los privilegios bueno, al fin y al cabo es cambiar unos cuantos bits y tal, pero claro, a la hora de hacer algo tan grande como un sistema operativo o sigues una metodología o te vuelves loco  :rolleyes:
Claro... imaginate yo como estoy :rolleyes: y mas aun tratandose que yo no tengo estudios formales ni de programacion ni de sistemas operativos... todo lo que he hecho ha sido por buscar informacion, leer libros, aprender C y ASM (este ultimo da serios problemas al principio) y lo principal: tener las ganas. Y somos pocos los que a mi edad (16 años) nos interesa este tipo de cosas, y por un par de años no podre optar por estudiar formalmente sistemas operativos, tendre que seguir leyendo libros y buscar documentacion sobre hardware, arquitecturas sin que nadie me lo explique bien :-(
Por cierto, lo de la paginacion si es cambiar unos cuantos bits pero los anillos de privilegios pasa mas alla de eso, es enviar la memoria o un segmento (el cual es el programa o aplicación) a la RAM con ciertas restricciones, lo cual se complica mas.


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 16 Enero 2012, 10:24 am
Claro... imaginate yo como estoy :rolleyes: y mas aun tratandose que yo no tengo estudios formales ni de programacion ni de sistemas operativos... todo lo que he hecho ha sido por buscar informacion, leer libros, aprender C y ASM (este ultimo da serios problemas al principio) y lo principal: tener las ganas. Y somos pocos los que a mi edad (16 años) nos interesa este tipo de cosas, y por un par de años no podre optar por estudiar formalmente sistemas operativos, tendre que seguir leyendo libros y buscar documentacion sobre hardware, arquitecturas sin que nadie me lo explique bien :-(
Por cierto, lo de la paginacion si es cambiar unos cuantos bits pero los anillos de privilegios pasa mas alla de eso, es enviar la memoria o un segmento (el cual es el programa o aplicación) a la RAM con ciertas restricciones, lo cual se complica mas.

Hombre, la paginación no es solo cambiar unos bits, tienes que gestionar todas las tablas de páginas para cada tarea, y asignar memoria en función de lo que te vaya pidienod y demás, es bastante complicado hacerlo de una manera óptima.


Título: Re: Mini Sistema Operativo!!!
Publicado por: armizh en 16 Enero 2012, 16:51 pm
Hombre, la paginación no es solo cambiar unos bits, tienes que gestionar todas las tablas de páginas para cada tarea, y asignar memoria en función de lo que te vaya pidienod y demás, es bastante complicado hacerlo de una manera óptima.
Tienes razon, error mio, a lo que queria llegar era a que activar la paginacion es cambiar unos cuantos bits, luego la gestion es lo dificil, ya que se trabaja con las tablas, directorios, paginas y con los anillos de privilegios


Título: Re: Mini Sistema Operativo!!!
Publicado por: ShotgunLogic en 16 Enero 2012, 18:46 pm
Tienes razon, error mio, a lo que queria llegar era a que activar la paginacion es cambiar unos cuantos bits, luego la gestion es lo dificil, ya que se trabaja con las tablas, directorios, paginas y con los anillos de privilegios

 ;) :laugh: