Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

Dette høres spennende ut, og jeg ville likt å hjulpet til. :)

 

Men det spørs litt hvilke programmeringskunnskaper jeg trenger. Kan nokså godt C# (dog ingen profesjonell erfaring), og har så vidt prøvd meg i flere andre språk. Det er ikke så mye å stille opp med, men hvis jeg kan være til hjelp på noen måte kan jeg godt hjelpe til.

 

Og: jeg kan litt php og, men tror ikke det er så relevant :hmm::p

Lenke til kommentar
Dette høres spennende ut, og jeg ville likt å hjulpet til.  :)

 

Men det spørs litt hvilke programmeringskunnskaper jeg trenger. Kan nokså godt C# (dog ingen profesjonell erfaring), og har så vidt prøvd meg i flere andre språk. Det er ikke så mye å stille opp med, men hvis jeg kan være til hjelp på noen måte kan jeg godt hjelpe til.

 

Og: jeg kan litt php og, men tror ikke det er så relevant :hmm:  :p

8049193[/snapback]

 

 

Og det er jo som kjent ikke C# heller desverre :-/

 

ASM og C er nok det det er mest bruk for til et OS dessverre :no:

Lenke til kommentar

Hehe

 

Hvis du kan C#, ville f.eks. D vært et språk som er veldig lett å flytte over til, grunnen til at jeg nevner D, er at dette er et native code språk, med inline assembly, og garbage collection, og som er direkte kompatibel med biblioteker skrevet i C

Dette ville vært perfekt egentlig for å skrive GUI-en i, siden det med et skikkelig bibliotek ville vært tilnærmet likt C# å jobbe i (uten IDE da :/ )

Lenke til kommentar

Jeg forestiller meg at mesteparten av kjernen skrives i C og Assembly (multi taskin må skrives i asm, finnes ingen annen måte)

Grunnen til at de språkene er å foretrekke, er at kode som er skrevet i C og assembly lett kan brukes i et hvilket som helst annet språk.

 

Jeg vet det er en stooor oppgave, men jeg kan ikke klage på alle andre operativsystem, og ikke komme med noe bedre selv :)

Jeg synes at et operativsystem som bruker 128+ MB RAM bare for å være igang, er til å skratte av, siden jeg jobber i Windows til daglig, skratter jeg derfor ganske mye.

Lenke til kommentar
Jeg synes at et operativsystem som bruker 128+ MB RAM bare for å være igang, er til å skratte av, siden jeg jobber i Windows til daglig, skratter jeg derfor ganske mye.

8049792[/snapback]

 

Vel, du mener vel at du har konstant latterkrampe?

 

Bare pass deg så det ikke kommer noen menn i hvit frakk å henter deg da Mr. Grusom :!:

 

 

Det eneste jeg har å si er GOS (GeirOS) FTW! :w00t:

Men tror ikke jeg satser på det som primæros de neste tusen åra :whistle:

Lenke til kommentar
Jeg forestiller meg at mesteparten av kjernen skrives i C og Assembly (multi taskin må skrives i asm, finnes ingen annen måte)

Grunnen til at de språkene er å foretrekke, er at kode som er skrevet i C og assembly lett kan brukes i et hvilket som helst annet språk.

8049792[/snapback]

 

 

Skjønner. Det er språk jeg også trives med =) Du må huske å holde oss forumgjengere oppdatert på hvordan det går med dette prosjektet da. Gleder meg :dribble:

Lenke til kommentar
Vel, du mener vel at du har konstant latterkrampe?

8050583[/snapback]

 

Det er et stort problem, får ikke gjort så mye :p

 

Til å begynne med vil i all hovedsak programmeringsspråk som bruker linker, være de eneste som kan brukes, grunnen til dette, er at jeg kommer til å skrive en linker for dette OS-et, og dermed begrenses antall programmeringsspråk veldig, og av hensyn til hva som er viktig, kommer jeg til å skrive den i C#, siden det er enklest for meg.

Lenke til kommentar

Det vil selvsagt være open source :)

I starten er det viktig med folk som kan C og Assembly, andre språk vil det blir laget støtte for etterhvert (C# er det ikke sikkert noensinne vil bli støttet, avhenger av hvor suksessfyllt prosjektet blir)

 

Jeg har tenkt til å begynne med det i løpet av april/mai

for da vil jeg ha litt mer tid til overs.

 

Jeg har lest noe om kernels, multitasking etc.

For det meste ser det ut til å være forholdsvis simpelt, men det blir mye kode :p

Planen er at platform SDK-en vil være tilgjengelig for hele system, og vil være synlig, og brukelig fra consolen (som forklart)

Men i consolen vil dette være mest for vedlikehold, og system debugging, som å finne flaskehalsprogrammer, eller memory leaks.

Planen er at kernelen skal være tilgjengelig fra et hvilket som helst program gjennom sys/dev treet.

Alle "exe" filer må som sagt eksportere minst én funskjon (main) og den vil bli listet f.eks.

sys/dev/hdd/hdd0/mittprogram/mittprogram.exe/main

Man kan her kalle eventuelle parameter som funksjonen tar (main vil være et spesielt tilfellet, siden den som oftest tar int og char**)

 

Alle programmer vil bli kjørt under en egen prosessgruppe, og vil i utgangspunktet ha veldig begrenset tilgang til hardware, men programmer skal kunne (med brukerens tillatelse) få tilnærmet full kontroll over hardware (ikke harddisk, eller BIOS)

Grunnen til dette, er for at programmerere som vet hva de gjør, skal kunne utnytte hardware maksimalt, og ikke nødvendigvis bypasse HAL, men bruker effektive metoder, framfor at f.eks. tegning av grafikk må utføres gjennom begrensede funksjoner, som line etc.

Men dette må være skrudd av som default, og kun tillatt hvis brukeren vet hva han gjør (kunnskapstest, som i Larry kanskje? :p)

Lenke til kommentar
kunnskapstest, som i Larry kanskje? :p

8055953[/snapback]

 

Oh goddamn it!

 

Den kunnskapstesten var ikke helt vennlig nei, ikke med google engang :whistle:

 

 

Men det du skriver om "exe" filer, du tenker vel (forhåpentligvis) på et annet filformat for eksekutabler? Blir litt stor mulighet for forvirring om man bruker exe som i MS DOS/Windows :hrm:

Lenke til kommentar

Ok, et par spørsmål her:

 

Hvis jeg/andre skal være med på dette prosjektet, og være til noe nytte, hvilket språk bør vi da lære oss/kunne?

Eller er det kanskje også noen annen måte folk kan hjelpe til på?

Og det du snakte om at det kunne vært lurt å lære D; vil det være noen som blir brukt i prosjektet?

Jeg lette også litt etter tutorials o.l. til D, men fant veldig lite, for såvidt jeg forsto det var det nokså nytt(1.0 kom i begynnelsen av januar?). :hmm:

Endret av strykejern
Lenke til kommentar
kunnskapstest, som i Larry kanskje? :p

8055953[/snapback]

 

Oh goddamn it!

 

Den kunnskapstesten var ikke helt vennlig nei, ikke med google engang :whistle:

 

 

Men det du skriver om "exe" filer, du tenker vel (forhåpentligvis) på et annet filformat for eksekutabler? Blir litt stor mulighet for forvirring om man bruker exe som i MS DOS/Windows :hrm:

8057249[/snapback]

 

".exe" er da bare en filendelse for at DOS/Windows skal vite at det er en kjørbar fil. Fila endrer ikke innhold om den slutter på ".txt" eller ".kaffe".

 

Og ut i fra det han beskriver om kjørbare filer, blir det ikke noe ála et av programformatene til Microsoft uansett.

 

Forhåpentligvis blir det vel slik at man kan kalle programmet akkurat hva man vil (kanskje ikke alt man vil da), og ikke noe fiksert navnendelse for programmer.

Lenke til kommentar

filendelser er en veldig enkel og grei måte å skille filer fra hverandre på en overfladisk måte, det gjør at brukeren ganske raskt kan si hva slags fil det er, selvom operativsystemet ikke vet det.

Jeg vil selsagt ikke beholde .exe filer eller .dll filer, alle henvendelser jeg bruker vil kun være som eksempel.

 

Idéen er at alt fra script til native code exe filer skal kunne være i en "container" programfil, og at koden skal kunne fungere på tvers av hverandre (noe som blir forholdsvis enkelt å gjennomføre på den måten device systemet skal fungere)

 

et eksempel vil være en programfil, som inneholder et javascript, og native code:

sys/dev/hdd/hdd0/mittprogram/mittprogram.exe/:main

som igjen kaller

sys/dev/hdd/hdd0/mittprogram/mittprogram.exe/javascript/:getNumberOfData

bare et eksempel.

Jeg skriver bare .exe for gjøre det klart at det er programfilen

 

Device systemet gjør også at man enkelt kan hente filer fra innsiden av arkivfiler på en transparent måte, siden en egen device vil bli laget for å lese f.eks. zip filer:

sys/dev/hdd/hdd0/minzip.zip/readme.txt/:copy /../

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...