Gå til innhold

Hva koster det å vidreutvikle et operativsystem?


LMH1

Anbefalte innlegg

Gjest medlem-82119

Tenkte vel mest på at OSet skal fungere med alel mulige skrivere, skannere, webkamera, mus og tastaturer, nettverksplugger, lydchiper, antivirus, brannmurer, mediaplayere, brennere, rippere, nettlesere osv. Begynner man å skrive om OS så går man vel motsatt vei isteden for å gi spek til produsentene som skal lage drivere som passer til os. Ser jo også at ulike nettlesere skårer ulikt i f.eks acid3, og mediaplayeren i seg selv har vel en begrensning på 16 bit lyd? Antar det er mulig å gjøre, men er vel en relativt komplekst prosjekt å grave seg ned i vil jeg anta. Ser selv når jeg legger inn antivirus og brannmurer hvordan de sprer seg over hele maskinen, hvordan brenneprogrammer og pakkeprogrammer tar over os funksjoner osv. Har selv bl.a opplevd å miste muligheten til å brenne plater når jeg avinnstallerte et brenneprogram fordi programmet hadde fjernet komponenter som ikke ble gjenopprettet ved ny installasjon. Ble heldigvis løst av ny innstallasjon av samme program.

 

Ser forøvrig at jeg muligens har feiltolket spørsmålet. Gjelder det om microsoft selv videreutviklet eget os isteden for å lage nytt, elelr gjelder det om en fyr selv finner ut at han skal modernisere f.eks xp?

Lenke til kommentar
Videoannonse
Annonse

Gjelder vel begge deler, hva som ville lønne seg?

 

Kan jo tenkes enkelte foretrekker XP ennå.

 

Angående dere som sier, dere ikke kjenner noen som ikke har XP, kjenner jeg flere, men det er nok fordi de syns vista/windows 7, blir litt for krevende og dyrt.

 

Jeg ser jo også den, skal man bruke maskinen til kun kontor maskin eller internet samt også videosamtale er XP ennå bra.

 

Produsentene står vel for drivere.

 

Tviler på microsoft har laget alle drivere som kommer via windows update, det er nok produsentene som kjøper seg inn.

 

Også det med kompaktibilitet sertfisering, ellers får man en advarsel at driverne kan innebære en sikkerhetsrisiko og må opprette systemgjennopprettingspunkt hele tiden.

 

Nå er vel ikke blueray støttet i XP, men er sikkert mulig å få det på plass også.

Endret av LMH1
Lenke til kommentar

Tviler på microsoft har laget alle drivere som kommer via windows update, det er nok produsentene som kjøper seg inn.

Vedrørende Microsoft Update så er det ikke slik at leverandørene "kjøper seg inn". De må betale Microsoft for å kvalitetssikre og sertifisere driveren. Dette er det Windows Hardware Quality Labs som står for. Derfor vil du kunne se at en del drivere er merket med WHQL.

 

Personlig mener jeg det er bedre å laste ned nyeste drivere rett fra produsent da disse ofte har nyere drivere tilgjengelige enn det man får gjennom Microsoft Update. Det tar ganske lang tid, og koster ganske mye, å få en driver WHQL-sertifisert.

Endret av Nuffern
  • Liker 1
Lenke til kommentar

Ankh: Nå vet jeg ikke hvor mye du kjenner til programmering.

Selv er jeg ikke helt stødig i C++/C

 

Men jeg antar det ikke er nødvendig å teste f.eks en nettleser med 1000 forskjellige maskiner.

Siden API henter vel maskininstrukser lengere nede i kjernen i operativsystemet.

Dette er vel litt rot med terminologien, men ja. Det er som regel ikke nødvendig å teste alle programmer i alle mulige systemkonfigurasjoner.

Angående windows mediaplayer 12/Internet explorer 9 tror jeg det faktisk er mulig å få til å fungere med XP, hvis man feilsøker litt.

 

Siden jeg antar slike ting, er enten windows registeret eller windows filer (.DLL) som kan være det som nekter programmet å fungere. Eller andre filer.

Neppe. Internet Explorer 9 og Media Player 12 avhenger av DirectX 11 som ikke er tilgjengelig XP. Mer om det lenger ned.

 

Tror directX 11 vil kreve å skrive om mye av bibloteket til XP kanskje også fjerning av DX 9 windows bruker, er ikke godt kjent her. Men mener windows 7 støtter også DX9 emulering. Kan være derfor eldre spill på DX 8.1 funger dårlig eller om det er 64 bits versjonen som er dårlig på det?

DirectX er nært knyttet mot maskinvare og Windows kernelen. Det er ikke utviklet for Windows XP på grunn av endringer i Windows kernelen (driver-modellen) som isåfall også måtte blitt flyttet til XP. Dette kan, og ville sannsynligvis ført til alvorlige kompatibilitetsproblemer, og det var rett og slett ikke verdt det for Microsoft.

 

Hvordan det funker med eldre DirectX versjoner på nyere Windows aner jeg ikke. Jeg kan tenke meg at det rett og slett er emuleringslag, men er ikke sikker på dette.

  • Liker 1
Lenke til kommentar

Angående:

 

Windows-XP-splash-screen.jpg

 

pinball.gif

 

dere ser nok nærme, at oppløsning størst sansynlig er 640x480 med 16 bits fargekode.

Som muligens var standard på den tiden?

 

Er dette basert på DX9 teknolgi

Det jeg altså spørr om er om windows XP hadde hatt DX 11 ville begge delene gitt bedre oppløsning?

Er usikker på slike baser seg på DX 9 eller om det er måte bilde et bygget på.

 

På en måte er det et rart spørsmål, siden crysis har langt bedre grafikk selv om den bruker DX9 motoren. Men jeg ville tro det var mulig på den tiden å få bedre bildevisning.

Endret av LMH1
Lenke til kommentar
Gjest medlem-82119

Trodde microsoft gav ut minimum av info til hardware og software leverandørene, og så fikk de i oppdrag å lage drivere og programmer som passet til os. Hvis man selv skal begynne å tukle med os, så må man vel selv ta hensyn til at alt skal fungere. Nytter vel ikke å sende en mail til nvidia med at hei, jeg har tuklet med xp, kan dere lage en driver som passer til meg?

(Skjønt, gi dem nok penger så er vel alt mulig)

Lenke til kommentar

dere ser nok nærme, at oppløsning størst sansynlig er 640x480 med 16 bits fargekode.

Som muligens var standard på den tiden?

 

Er dette basert på DX9 teknolgi

Det jeg altså spørr om er om windows XP hadde hatt DX 11 ville begge delene gitt bedre oppløsning?

Er usikker på slike baser seg på DX 9 eller om det er måte bilde et bygget på.

 

På en måte er det et rart spørsmål, siden crysis har langt bedre grafikk selv om den bruker DX9 motoren. Men jeg ville tro det var mulig på den tiden å få bedre bildevisning.

:ermm:

 

Startskjermen ser slik ut fordi grafikk-drivere enda ikke er lastet. Det du ser der er sannsynligvis SVGA 640x480 i 256 farger (standard VGA gir ikke noe mer enn 16 farger i 640x480), og benytter ikke DirectX på noen som helst måte.

På det andre bildet er det nok et palett-bilde med 256 farger som er grunnen til at det ser såpass kornete ut. Hvis pinball brukte DirectX så baserte det deg utelukkende på DirectDraw som kom ut i siste versjon i DirectX 7, og som var borte vekk i DirectX 8.

Lenke til kommentar

Lycantrophe: Kan du holde deg i linux forumet? om du ikke har bedre å si?

 

Angående Startskjermen hvorfor kan ikke driverene lastes in tidligere?

Se på windows vista/7 der slipper man det problemet.

 

DirectDraw ser dårlig ut, er det mulig å få ting ennå mindre kornete eller måtte man skrive om hele spillet?

 

Jeg lurer litt hvorfor ikke vista eller windows 7 ikke har pinball, var et gøy spill, selv om det finnes langt bedre f.eks Pro Pinball: Fantastic Journey.

 

Forsåvitt har vel ReactOS langt bedre bootloader.

Der ser det langt mere penere ut i oppstart.

Men windows 2k GUI skuffer spør du meg.

 

Er det noen som vet hva http://www.winsupersite.com/content/content/127392/reviews/xpmce2005_02.jpg (Windows XP mediacenter sitt GUI heter?)

 

Er det noen som har klart å kompiliere ReactOS for å støtte over 4 GB ram med multi prosesssing støtte? (Flere kjerner/tråder?)

Hadde vært et gøy prosjekt å sette seg inn i, så kan man snart kaste windows XP.

Endret av LMH1
Lenke til kommentar

I Vista og Windows 7 så venter den med å vise deg noe som helst til et minimumssett av drivere er lastet. Booting av et operativsystem er en omfattende og komplisert prosess. Skjermkortdrivere kan ikke være det første som lastes av flere grunner. Det er en prioritet her. Men nå har UEFI fått en grafikkstandard som kanskje muliggjør litt mer fancy bootloadere.

 

DirectDraw ser ikke kornete ut. De som laget pinball har gjort det med vilje (spare minne, eller kunne fungere på svært dårlig maskinvare gjetter jeg)

DirectDraw støttet vilkårlige oppløsninger og BPP på 24-bit (DirectDraw støttet ikke noen alpha kanal som var litt kjipt)

Unreal benyttet DirectDraw for å presentere det endelige rendrede bildet i software modus.

 

Windows Vista og Windows 7 ser finere ut enn ReactOS under oppstart.

 

Jeg gjetter at Windows Media Center benytter Windows Presentation Foundation ( i likhet med Windows Live Messenger), men det er bare gjettemål fra min side. WPF er hardware akselerert gjennom Direct3D.

  • Liker 1
Lenke til kommentar

Nå syns ikke jeg man skal gjette, men takk for resten.

 

Er jo enig at vista/windows 7 ser finere ut, men er jo ikke så voldsomt stor forskjell.

 

Er det noen som har peiling på taskmanage i windows hvordan den henter opp prosessorkjerner og ram?

 

Hvordan er det med minne? Per dags dato støtter vel 32 bits operativsystemene 3.6 GB ram (4 GB maks totalt) men Physical Address Extension kan vel øke minne ekstra, ved å virtualisere minnet.

 

Er det en krevende oppgave å konverte et 32 bits operativsystem til 64 bits?

Slik jeg har hørt trenger man bare en kompilator for 64 bits operativsystem og endre minneadresssene og driverne.

 

Men ellers bør vel resten gå lett?

Lenke til kommentar

Hvordan er det med minne? Per dags dato støtter vel 32 bits operativsystemene 3.6 GB ram (4 GB maks totalt) men Physical Address Extension kan vel øke minne ekstra, ved å virtualisere minnet.

Minnet er allerede virtualisert (det er derfor hver prosess får ~3.6 GB RAM)

Denne 3 GB grensen er der av samme grunn som at DOS begrenset til 640 KB med RAM. Grunnen er at en stor del av minneområdet (som totalt er 4 GB, altså 232) må holdes av for operativsystemet til forskjellige oppgaver, slik som hardware adressering. Dersom du kjører et 32-bit program (med Large Address Aware) på 64-bit vil programmet få 4 GB RAM tilgjengelig.

 

Physical address extension øker ikke dette for hver prosess, men gjør at du kan installere mer enn 4 GB RAM på en 32-bit prosessor (fordi operativsystemet får et større adresseområde å jobbe med)

Men det hjelper derimot ikke for vanlige prosesser som fortsatt er begrenset til 4 GB.

 

Som sagt er minnet virtualisert allerede. Hver prosess får et helt minneområde å boltre seg i, og er fullstendig uvitende om det kjører andre programmer eller ikke. Du kan ikke uten vilje skrive over minnet til andre programmer. Dette kalles protected mode og har vært i bruk i alle versjoner av Windows NT.

 

Er det en krevende oppgave å konverte et 32 bits operativsystem til 64 bits?

Slik jeg har hørt trenger man bare en kompilator for 64 bits operativsystem og endre minneadresssene og driverne.

 

Men ellers bør vel resten gå lett?

I teorien er det ikke verre enn å bytte kompilator, eller bare skru den du bruker til 64-bit instruksjonssett. I praksis er det derimot mye mer enn dette som må gjøres. Dette er forsåvidt noe som ble diskutert på C/C++ forumet for noen dager siden. For å gjøre det teknisk så er C og C++ programmeringsspråk som i utgangspunktet har en ganske vag definisjon på datatyper. Det er ikke før C99 at det ble definert datatyper med absolutte størrelser.

 

Eksempelvis har vi long datatypen som Microsoft har antatt i WIN32 at er 32-bit. Dette er derimot ikke tilfelle på alle kompilatorer, og det har ikke nødvendigvis noe med bitoppløsningen på arkitekturen å gjøre heller. Det er opp til de som skriver kompilatoren å bestemme størrelsen på datatypen.

 

Problemet her er åpenbart kulturkræsj. Det er ikke feil i 32-bit å definere long lik 32-bit, eller i 64-bit å definere long lik 32-bit. Begge deler stemmer overens med C og C++ standarden (long må være større eller lik int).

 

Dette fører til åpenbare problemer med å porte programmer til 64-bit. Avhengig av kompilatoren så kan det funke, eller ikke. Derfor er det blitt inført egne datatyper for å rette opp i slike problemer, men det fører til at mange må skrive om programmene for å funke med den nye arkitekturen, og benytte int32_t istedet for long.

  • Liker 1
Lenke til kommentar

Takk for gode svar: GeirGrusom muligens jeg skal stille flere spørsmål om utvikling i C++ tråden.

 

Hadde vært greit å vite om en kompilator f.eks for reactOS, som virker i 64 bits OS.

 

ReactOS Build Environment for Windows NT-compatible OS er vel det reactos sin heter.

Vet ikke hvordan den funger. Men antar den klarer bare 32 bits.

Lenke til kommentar

Vista ble vel bygget på longhorn? Som aldri ble noe av.

 

Kanskje det er noe for microsoft?

 

Selge en oppgradert windows XP longhorn servicepack 1 x64 (Som erstattning av windows XP mediacenter 2005?) Og den dårlige windows vista basic/windows 7 Home Basic som er etter min mening ser helt elendig ut, dårlig erstattning.

 

Nå vet jeg ikke hvor mye windows 8 koster, men antar den har mere prioritert i dag.

Endret av LMH1
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...