Android

My Fantasy Operating System

Building a Fantasy Game Console - GitHub Satellite 2020

Building a Fantasy Game Console - GitHub Satellite 2020

Innehållsförteckning:

Anonim

De flesta av oss har fantasier om att vinna lotteriet. Det är en del av att vara mänsklig.

I kombination med att köpa fastigheter, snabba bilar och en livsstor Kylie Minogue fembot (inklusive tillbehörsbyxor) skulle min fantasi vara att skapa det perfekta operativsystemet. Det här är kanske inte högt på listan över Lottery-Winner-Fantasy listor. Det är definitivt under att köpa ett sportlag eller resa världen. Men det speglar min inneboende geekiness och även min frustration med befintliga operativsystem.

Att drömma upp ett fantasinsystem är en rolig träning och jag bjuder in dig att gå. Lägg upp dina egna fantasier i kommentarerna nedan.

[Läs vidare: Våra bästa Windows 10-tricks, tips och tweaks]

Så hur skulle jag gå om att skapa mitt operativsystem? Innan vi börjar, låt oss definiera gränserna för den här fantasin.

Den lotterisvinst vi pratar om är en av de dumma stora - så stor att du kan köpa ett litet sydamerikanskt land och ha tillräckligt med lös förändring kvar för en liten Midwest-stad. Med andra ord är pengar inte ett problem i mitt fantasiscenario, och skapandet av det nya operativsystemet är helt filantropiskt - det är ingen avsikt att tjäna pengar på det. Jag har för avsikt att göra mitt nya operativsystem så öppet som möjligt, och det kommer att ges bort för mänsklighetens bästa. Jag är väldigt generös, inte jag?

I öppen källans anda skulle jag inte börja från början med mitt nya operativsystem, men skulle ta de bästa bitarna från befintliga open source-projekt, även om jag skulle lägga in placera några nya projekt.

Målsättningen är att skapa ett skrivbordsoperativsystem, inte en serverplattform. IMHO servernsmarknaden är redan perfekt.

Kärnan

Låt oss börja i hjärtat av operativsystemet: kärnan. Kanske förvånansvärt skulle jag inte använda Linux, trots att jag tycker att det är klart det bästa valet. Det har säkert det bästa hårdvaruunderlaget och den snabbaste utvecklingscykeln. Men Linuxkärnan har ett bildproblem. Verkligheten är att, utanför samhället, är många människor i den verkliga världen rädda för Linux. Jag kan till och med säga att det har en stigma. Om jag tillkännagav mitt nya operativsystem genom att säga, "Det är baserat på Linux", misstänker jag att jag kör ett stort antal vanliga människor bort.

Istället skulle jag använda FreeBSD som bas av operativsystemet, precis som det intressanta DesktopBSD-projektet (ja, jag skulle anta en BSD-liknande licens också). Jag skulle också titta på OpenSolaris, som hittar ett hem i det lika intressanta Nexenta-projektet.

Det här beslutet kan begränsa hårdvaran som stöds, men de flesta större objekt ska vara OK, och mitt projekt skulle publicera klara riktlinjer för vilken maskinvara som gör och fungerar inte. Användare kanske måste köpa ett nytt wifi-kort för att mitt operativsystem ska fungera korrekt med datorn, men de skulle åtminstone veta vad som ska förväntas före installationen (något som tyvärr saknas med de flesta versioner av Linux). Jag tror att det här skulle löna sig när det gäller användaransvar.

Dessutom skulle jag anställa utvecklare för att skapa ett binärt drivrutinsgränssnitt, för att uppmuntra det enkla skapandet av hårdvarudrivrutinsmoduler. Ja, det är en hackig lösning på problemet, och skulle kanske skapa fler problem än det löser. Men det skulle också göra användarens liv mycket enklare. Till skillnad från många öppna källprojekt skulle mitt nya operativsystem vara användar- snarare än utvecklingsorienterat.

Användningen av BSD gör det också möjligt för oss att marknadsföra operativsystemet genom att säga något som "Det är baserat på BSD, lite som Mac OS X." Någon med en halv hjärna skulle se igenom det här, men tekniska användare är inte målmarknaden. Techies har redan ett förstklassigt operativsystem för öppen källkod. Det heter Linux.

Skrivbord

Det finns inga stora överraskningar när det gäller skrivbordet. Jag skulle utnyttja Gnome-projektet, som jag tror är en av de bästa och enklaste gränssnitten för öppen källkod. Men jag skulle sponsra skapandet eller anpassningen av en verktygsfältbaserad programlansering / docka. Detta är mode just nu, förstås Nästa version av Windows har ett sådant gränssnitt, och OS X har haft sin docka i flera år. Verktygsfältet kommer att användas för att starta program, och även minimera program. Ganska enkelt, egentligen, även om jag vill ha mina ansträngningar att vara ultimata och lättanvända.

När det gäller levererad programvara tittar vi igen på en Linux-liknande samling - Firefox (eller kanske Google Chrome, även om jag är osäker på om den skickas till BSD, eller om den är genomförbar). Jag är inte 100% säker på att jag skulle inkludera OpenOffice.org, men skulle undersöka bindning till en online kontorspaket via något som Prism och Google Gears. Jag vill emellertid både ha en kryptering för att garantera fullständig dataintegritet. Jag kan sponsra en webbläsare plugin som krypterar / dekrypterar i farten, så att alla data lagrade på nätet är säkra. För vad det är värt, verkar det som om det här är det enda sättet att onlineapplikationer kan utvecklas.

Programkompatibilitet

Kanske är den mest överraskande aspekten av mitt nya operativsystem att inkludera Wine tillsammans med ett backroom-projekt som består av utvecklare som skapar skript och anpassar koden så att det nya operativsystemet kör majoriteten av populära Windows-program och -spel. Detta är inte helt till skillnad från Codeweavers, faktiskt den kommersiella offshoten av Wine.

Kompatibilitetsskript och tweaks skulle vara en del av uppdateringarna som hämtas till varje dator regelbundet. (Självfallet skulle stöd vara lika kostnadsfritt som själva mjukvaran.)

Målet skulle inte vara 100% Windows-kompatibilitet, eftersom det bara är för högt en bar och skulle sätta upp oss för ett fall. Målet är att stödja de mest populära applikationerna och spelen. Genom att publicera ärliga listor över vad som inte fungerar, liksom med hårdvarulistorna, kan vi få respekt för användarbasen och inte göra löften som vi inte kunde behålla. Naturligtvis föreställer jag mig ett samhälle som uppstår runt operativsystemet, vilket också kan bidra till denna insats.

När det gäller programkompatibilitet skulle målet vara att erbjuda ett halvvägs hus mellan kommersiella operativsystem som Windows och operativsystem med öppen källkod som Linux. Jag tror att det här skulle löna sig, för i min erfarenhet är folk fascinerad av öppen källanvändning och mottagliga för sina koncept, men helt enkelt räddade av Linux.

Vi skulle också ha programvaruförvaringar som är fulla av förkompilerad öppen källkod, självklart, precis som ett bra Linux-projekt värt sitt salt. Det bästa av öppen källkod skulle vara tillgängligt.

Effektivitet

Ett viktigt mål för OS-projektet skulle vara att det kör snabbt, även på blygsam hårdvara. Jag skulle ange ett godtyckligt tak på hårdvaran som vi förväntar oss att användaren har (förmodligen något som 1 GB RAM och minst en 1,5 GHz CPU).

Optimering och effektivitet är något av ett sätt just nu och både Windows 7 och Mac OS X 10.6 lovar betydande prestandaförbättringar.

Det skulle inte vara något behov av ett timmesglas eller en spinn i mitt operativsystem, eftersom användaren aldrig skulle behöva vänta på någonting. (Timglasikonet var ursprungligen en ursäkt för dålig hårdvaruprestanda tidigare, att vi fortfarande ser det i en värld av 2 GB RAM och processorer med dubbla kärnor indikerar att något har gått väldigt fel med operativsystemutveckling.)

Det nya operativsystemet skulle också rikta sig till den nya netbookmarknaden, och målet skulle vara att skapa ett operativsystem som är inriktat på bärbara datorer. Du kanske inte har insett men den traditionella stationära datorn är döende. De enda personer som använder stationära datorer idag är spelare och kontorsarbetare. Nästan alla använder en bärbar dator nuförtiden, även om det aldrig lämnar sitt hus, eller till och med skift från deras skrivbord.

Filosofi

En viktig punkt om det nya operativsystemet är dess filosofi. Målet skulle inte vara att skapa det bästa operativsystemet i världen. Det skulle inte vara att skapa det mest avancerade operativsystemet, eller det mest innovativa eller det mest tekniskt genomförda. Målet är att skapa ett intuitivt och "tillräckligt bra" operativsystem som de flesta människor kan använda utan träning eller wincing när något inte fungerar som de förutser. Målet är att se till att de funktioner som förväntas är närvarande och att de är vid sina fingertoppar.

Så spännande som nya operativsystemfunktioner är de bara inte nödvändiga eller önskade av de flesta. Med Windows XP och Mac OS X 10.4 och senaste versioner av Ubuntu (jag skulle citera 8.04 som ett exempel) har vi nått ett höjdpunkt i operativsystemutveckling. Saker har fått så bra som de kan få. Nya funktioner från och med nu kommer bara att komma i vägen.

Slutsats

Naturligtvis är allt detta bara ett tankexperiment. Om jag vann lotteriet (och jag spelar inte egentligen, så det är ännu mer osannolikt än vanligt), skulle jag inte vara så dumt att skapa ett nytt OS.

Till att börja med skulle jag troligen bli stämd till glömska av Apple och Microsoft. Desktop-operativsystem verkar i synnerhet vara ett minfält av mjukvarupatent (även om jag undrar om jag kunde komma runt detta genom att basera utvecklingen här i Europa, där jag bor, och där programvarupatent helt enkelt inte existerar).

Det största problemet är att operativsystemen helt enkelt inte spelar någon roll längre. De är väldigt mycket en 90-talsåtgärd. 90-talet var att utforska Alices vardagsrum. Noughties handlar om vad som händer när vi går igenom glaset som ser ut.

Det som är viktigt nu är online och vad du kan göra i det. Om jag hade någon mening skulle jag investera mina miljoner i att skapa onlineapplikationer och försöka få öppen källkod och öppna standarder för den särskilda världen - en värld som framstår just nu för att vara nästan uteslutande proprietär.

Keir Thomas är den prisbelönta författaren av flera böcker om Ubuntu, inklusive Ubuntu Pocket Guide och Reference.