Ok, non ha senso. Ma cmq se non sei in grado di dare delle spiegazioni a chi fa una domanda, semplicemente non rispondere.
Ciao e stato un piacere![]()
Ok, non ha senso. Ma cmq se non sei in grado di dare delle spiegazioni a chi fa una domanda, semplicemente non rispondere.
Ciao e stato un piacere![]()
effettivamente non si puo' compilare sotto una piattaforma.
ho trovato un qualcosa che penso ti possa aiutare nel dare la tua risposta...
http://www.acm.uiuc.edu/sigops/roll_your_own/
Quando tu compili per un certo sistema operativo significa che ti stai appoggiando alle chiamate di sistema di tale piattaforma (direttamente o indirettamente, le chiamate possono essere ad esempio mediate dal runtime) e che generi come file eseguibile finale un file che ha un determinato layout (ad esempio può essere un file PE per Windows o un ELF per Linux). Tuttavia si può scrivere codice che sia indipendente da syscall (che si appoggi quindi solo ai servizi offerti dall'hardware o dal software di base, ossia al BIOS) e si può dire al linker di non dare in output un eseguibile dotato di un layout specifico, ma solo codice macchina senza intestazioni varie. In sostanza, non stai compilando per un'abbinata sistema operativo/architettura (che so, Windows/x86, Linux/PowerPC), ma semplicemente per una certa architettura (x86, PowerPC, IA64, ...).
Tra l'altro mi pare che ne avessimo parlato tempo addietro nel forum Programmazione (ed è lì che andrebbe questa domanda, credo): prova a fare una ricerca.
Amaro C++, il gusto pieno dell'undefined behavior.
nella sezione Programmazione ci sono molti 3d relativi, proprio come dice MItaly...
effettivamente non capisco perché, fulmine [vocativo], hai postato qui...
Originariamente inviato da fulmine69
Ok, non ha senso. Ma cmq se non sei in grado di dare delle spiegazioni a chi fa una domanda, semplicemente non rispondere.
Ciao e stato un piacere![]()
Io penso che l'utilita' di un forum sia di confrontarsi reciprocamente su argomenti di comune interesse atto ad un accrescimento culturale( il proprio)...il comportamento preso da alcuni soggetti va in esatta direzione opposta,violando il rispetto per gli altri e sfociando nella supponenza e strafottenza piu totale.riferimenti a tecnico(gia' bello che bannato) e personaggi tipo ste_95 nn sono casuali.
chiudo e saluto![]()
sono d'accordo su questo.. però quando ti riferisci a tecnico24, lui è stato bannato perchè peccava di presunzione, ma ste_95 ha solo 12 anni quindi è comprensibile che dia queste risposte..quindi fulmine69 non se la dovrebbe nemmeno prendere..Originariamente inviato da tekno83gri
Io penso che l'utilita' di un forum sia di confrontarsi reciprocamente su argomenti di comune interesse atto ad un accrescimento culturale( il proprio)...il comportamento preso da alcuni soggetti va in esatta direzione opposta,violando il rispetto per gli altri e sfociando nella supponenza e strafottenza piu totale.riferimenti a tecnico(gia' bello che bannato) e personaggi tipo ste_95 nn sono casuali.
chiudo e saluto![]()
cmq..finiamo qui sennò andiamo OT tanto MItaly gli ha già consigliato di andare in Programmazione..
ciao belli![]()
http://www.emanueleferrante.it
Sposto in Programmazione perchè penso che sia il forum più adatto...
Riguardo all'utente ste_95 non mi esprimo anche perchè l'ho fatto già spesso e non voglio inquinare ulteriormente il 3d...
I can see much clearer now, I'm blind.
Io fui già quel che voi siete, Quel ch'io son voi anco sarete.
Remember that death is not the end, but only a transition
All that we learn this time is carried beyond this life.
Abbiamo già affrontato questo argomento in passato, e molteplici volte (finendo poi per concludersi in una "bolla di sapone" in quanto chi pone la domanda, spesso, fa il proverbiale "passo più lungo della gamba" poiché non si tratta di un argomento semplice).
In sostanza, rivolgendomi all'autore, chiedo di definire con precisione la domanda su cui snodare il thread e lo scopo della discussione, e ne approfitto anche per invitare chi non ha una risposta pertinente alla domanda ad astenersi, tenendo a freno la propria "sindrome da contapost".
E' tutto.![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
Per primo, devi scegliere la piattaforma hardware su cui dovra' girare il sistema operativo.Originariamente inviato da fulmine69
La domanda era: Come si può creare un sistema operativo e compilarlo, visto che lo stesso ancora non esiste? Nel senso che, se creo un'applicazione e la compilo sotto Windows, questa funzionerà solo sotto Windows, giusto? Lo stesso vale per Linux e etc.. Ho ragione?
Devi cioe' indicare se, ad esempio, dovra' girare su piattaforma "Intel x86", oppure unicamente "x64", o addirrittura "PowerPC" o su CPU RISC di altro tipo o altro ... tenendo sempre presenti le caratteristiche hardware (periferiche ...) del sistema prescelto.
Insomma, dovrai cominciare "definendo esattamente" l'hardware su cui girera' il SO.
Fatto questo (e per semplicita', supponiamo che tu voglia scrivere un sistema operativo per piattaforma Intel x86, ovvero per un comune PC moderno ...), comincerai a scrivere le prime funzioni in Assembler per il boot del sistema, appoggiandoti alle funzionalita' di base del BIOS (che daremo per scontato essere presenti ...).
Ovviamente questa parte la scriverai con un qualsiasi Macro Assembler su qualsasi sistema di sviluppo, avendo cura di ottenere un file binario con la sequenza di istruzioni assembler atte a garantire tutte le operazioni di boot (non ha importanza se lo svilupperai sotto Windows o Linux ... importante e' il formato del file che inserirai nel dischetto/CD di boot e che questo chiamera' "unicamente" funzionalita' del BIOS ...).
Naturalmente il boot puo' caricare tutto il sistema operativo che avrai scritto in C (presumibilmente) sempre su un qualsiasi sistema (Windows, Linux, non importa) avendo cura di effettuare delle chiamate a funzioni di libreria gia' pronte (e da copiare insieme al kernel al momento del boot) o chiamate a funzioni di librerie scritte in precedenza.
Sul discorso se e' nato prima l'uovo o la gallina, e' ovvio che il "primo" sistema operativo era scritto completamente in assembler, da cui il primo compilatore C e cosi' via ... ma non e' questo quello che importa ...
Se hai ancora dubbi, esponili ... magari si puo' spiegare meglio qualche dettaglio di questo processo ...
CiaoOriginariamente inviato da superpisu
sono d'accordo su questo.. però quando ti riferisci a tecnico24, lui è stato bannato perchè peccava di presunzione, ma ste_95 ha solo 12 anni quindi è comprensibile che dia queste risposte..quindi fulmine69 non se la dovrebbe nemmeno prendere..
cmq..finiamo qui sennò andiamo OT tanto MItaly gli ha già consigliato di andare in Programmazione..
ciao belli![]()
Sì, sono d'accordo con te, solo che io non me la sono presa e poi non posso sapere l'età di una persona solo xkè ha nel sua username il 92 o 87.
Ringrazio tutti per aver partecipato, non era, ne sarà mai, mia intenzione creare un sistema operativo, una cosa del genere farebbe ridere a polliRipeto è già troppo difficile creare un semplice videogames...
Grazie a tutti, ciao.