Jag har jobbat med datasystem ett antal år, 25 st för att vara exakt,
och har lite synpunkter på våra mest populära operativsystem.
Ms-DOS är ett enkelt och stryktåligt OP-system, men det har varit svårt
att göra det användarvänligt, det kan inte göra flera saker samtidigt, och
det börjar bli omodernt.
Microsoft försökte bättra på detta genom att tillverka Windows 95.
Man startade med ett DOS-system som man förbättrade och förändrade, vilket
gjorde att man fick kompromissa redan från början.
LITE GRUNDLÄGGANDE DATATEKNIK
En DATOR består av:
1. en processor, kort sagt en adderare som
inte kan göra så mycket mer än addera, subtrahera, dela med 2, fördubbla,
och lite till.
2. Ett snabbtänkt minne som aktiveras när du slår på strömmen till
datorn.
3. Ett långtidsminne (hårddisk) där du kan lagra program och
uppgifter under
lång tid
4. En Bus (motorväg), där "lastbilar" med data kan skickas mellan
processor, hårddisk och övriga enheter, som är anslutna till
Bussen.
5. Övriga enheter som är kopplade till Bussen, tex bildskärm,
CDROM-enhet,
kommunikationsport, skrivare mm.
ALLT SOM RÖR SIG I EN DATOR BESTÅR AV DATAMÄNGDER
En datamängd består av en sträng av ettor och nollor, s.k. "bit", plural
"bittar".
Dessa delas sedan upp till sammansatta
tal, "dataord" vilka sedan bl.a. blir symboler för alla tecken vi använder,
abc-ö, 012-9 osv.
ALLT SOM LAGRAS PÅ HÅRDDISKEN ÄR DATAFILER.
En datafil består av en väl avgränsad datamängd, (en
sträng av dataord) samt några formatteringsbittar, (tolkningshjälp).
Ett oktalt "dataord" delas på var nionde bit, där dom åtta första bittarna
utgör ett tecken samt var 9:e bit är en kontrollbit som kan vara etta eller
nolla (motsvarar udda eller jämn), beroende på bittarna i tillhörande
tecknet. Kallas "parity check".
Detta gör att man kan kontrollera att man läser
samma information som man en gång skrev tex. på hårddisken.
Det här gör ju att ett fel kan dölja ett annat tex. om man "tappar" två
likadana bittar,
Så för att förbättra kontrollen räknar man dessutom alla bittar i en datafil
på ett speciellt sätt så att man får en unik summa i slutet på filen, vilket
gör att det är mycket säkert.
Kallas "CRC"-check (cyclic redundancy check)
Dessutom innehåller en datafil uppgifter om tillverkningsdatum och tid,
storlek, skriv- och läsrättigheter och filtyp.
KOMMUNIKATION ÖVER TELEFONLINJEN
I jakten på överföringshastighet har man valt att ta bort den nionde
parity-bitten och även en av två stoppbittar.
PROCESSORHASTIGHET
En dators hjärna är dess minne och det program som lagras där, medan dess
processor kan jämföras med en springpojke som utför tjänster åt minnet
av typen:
Ta dessa två tal och addera dem och ge mej sen resultatet.
En processor kan bara utföra ett begränsat antal tjänster, men kan istället
göra dessa oerhört snabbt, och med tiden blir det nästan obegränsade
möjligheter, vilket säger att ju snabbare processorn arbetar, ju mer
komplicerade uppgifter kan datorn klara.
Man hör ofta att datorn har en 100Mhz klockfrekvens.
I det fallet kan processorn klara ca 20 miljoner tjänster per sekund,
beroende på vad den ska göra. Oavsett vilken klockfrekvens fungerar
det så här.
En tjänst tas emot av processorn på första klockcykeln,
och första talet tas in på nästa cykeln. processorn kan också lagra några
tal i sig, så i bästa fall adderas talen på tredje klockcykeln, och
returneras till minnet på fjärde cykeln.
Detta kallas att processorn har ufört en instruktion.
Det finns instruktioner som behöver från 3 till mer än 10 klockcykler, och
jag antar att 5 st är ett hyfsat medeltal.
VAD HAR JAG ATT ANMÄRKA? Windows använder hårddisken som en darttavla. När du ändrar något på
din bildskärm, skrivs detta ned på hårddisken omedelbart, vilket gör att
antalet skrivningar på disken blir otroligt många under en enda dag.
Eftersom fel faktiskt uppstår, även om frekvensen är otroligt liten, så
blir chansen att fel uppstår rätt stor med Windows.
Dessutom skriver Windows på sina systemfiler, dom som måste vara OK för att
systemet ska gå.
Om dessa lämnades orörda, skulle man kunna starta om utan problem vid ett
eventuellt datastopp.
NU TAR VI DET VÄSENTLIGA
Jag har en gammal 66 MHz dator, men den utför ett DOS-program som jag
gjorde till solvärmesystem rasande snabbt.
Programmet beräknar solens bana över himlen under hela året, timme för
timme, samt solfångarens och lagertankens verkningsgrad förlustfaktor med hänsyn till
olika temperaturer i och utanför denna.
Även husets energiförbrukning beräknas.
Detta gör att det blir många trigonometriska- och andragradssberäkningar
för varje timme.
Ändå gör den nästan en månads beräkningar per sekund.
Jag tog upp detta som jämförelse till mitt Windows 95 operativsystem.
När jag kör ett Windowsprogram tar det upp till 20 sekunder att bara ladda
in detta, och ibland jobbar datorn lika länge utan att jag rör tangenterna.
Jag fattar inte vad datorn kan hitta på, som tar så lång tid.
ETT MÖJLIGT SVAR KAN LIGGA I FÖLJANDE
Det finns ett antal programmeringsspråk typ pascal, cobol, fortran osv.
Där har man packat ihop ett antal processorinstruktioner till ett mer
lättolkat språk. När jag har gjort program har jag upptäckt att vissa
programmeringsspråk har vissa instruktioner som är ca 1000 ggr långsammare
än andra. Ett exempel är programspråket C++
Där finns det en instruktion som följer:
Testa om A är större än B och isåfall gör C, om inte, gör D.
Denna instruktion är en katastrof för ett bra program, för när jag använde
den blev datorn nästan död. (Den gång jag upptäckte detta, använde jag en
5 MHz PC-XT dator.)
I övrigt så är C++ ett bra och snabbt programmeringsspråk, för många
instruktioner är nästan direkta processorinstruktioner.
Man talar ibland om fjärde generationens programspråk. detta betyder inte
att utvecklingen har gått framåt när det gäller effektiva språk.
Nej bara att man har packat ihop processorns instruktioner ännu mer, så att
programmen blir snabbare och billigare att tillverka.
Men på köpet kanske man får med sig flera katastrofinstruktioner.
Eftersom ingen idag tillverkar program, eller operativsystem på
processornivå, utan man använder ett programspråk även när man tillverkar
operativsystem, så finns det risk för att kommersiell tidsbrist förhindrar
att man hittar de fallgropar jag har upptäckt.
Detta skulle kunna vara en (del-) förklaring till Windows törnrosaproblem.
Om du vill testa mitt simuleringsprogram för solvärme, så finns det för
nedladdning i menyn "DOWNLOAD" och "Solsim progr".