NT Stödapplikationer
Win NT är ett NOS som har byggts upp av olika komponenter som är programmerade var för sig. Sen så meckar man i hop det hela till ett paket. Varje
systemfunktion har sin egen styrfunktion eller modul. Inga modeller delar på moduler, alla arbetar var för sig. Detta gör så att man kan "lättare" gå
in och påverka en funktion i NOS. Det är för den del betyder att hela NOS behövs att programmeras om.
Bilden visar grovt vad som är Usermode respektive Kernelmode.
Usermode
Usertillämpningar och NTs undersystem kör i usermode, detta är det enda läge där en användare kan kommunicera med OPS. Allt som utförs i usermode måste
gå via Executive Services för att få åtkomst till minnesarea eller ren hårdvara.
Usermode innehåller två st huvuddelar.
- Miljö / Win 16/32 Posix OS/2.
- Säkerhet, Logonprocessen och Security Subsystem.
Logon och security komponenterna ansvarar för hela inloggningsprocessen.
Kernel mode
Kernel är den allra heligaste i hela systemet, det är ett processorläge som ger komponenterna i detta läge en högre prioritet över userprocesser, den
största delen av kärnan lagras i RAM minnet och kan inte flyttas till Swapfilen av Virtual Memory Manager VMM. Kernelläget skyddar all hardware och alla
systemnivå komponenter från användarprogrammen, detta betyder att hårdvara inte kan nås från en applikation om det inte får passera Executive Services. Blanda
inte ihop Microkärnan med Operativsystemet "Kernelmode". Ett program för NT så körs programmet i Usemode's. Subsystem Win32Sub, sen skickas det över
till Kernelmode.
De tre delarna i Kernel är:
- Executive Services
- Kernel (Kärnan)
- Hardware Abstract Layer
Executive Services är ett gränsnitt mellan kernel och miljön i undersystemen i usermode, den har 6 delar.
- Object Manager "Har koll på objekten".
- Security reference monitor "Har koll på inloggnings sekvensen".
- Process monitor "Hanterar processaktiviteter".
- Local Procedure Call Facility "Upprätthåller kommunikationen, usertillämpningar".
- Virtual Memory Manager "Har koll på RAM och Pagefile.sys SWAPFILEN".
- I / O Manager "Kollar av alla ut/in data fungerar som ett filter uppsnappar en applikationsfråga och styr om det till respektive hårdvara".
Kernel är själva kärnan i operativet, den främsta uppgiften är att styra upp trådarna, samtidigt som den försöker att styra upp processortiden till med optimala.
Hardware Abstract Layer
Här ligger alla hårdvaruspecifika komponenter och dess konfigurering lagrad, följer inte din hårdvara NTs regler sätter denna modul stopp. Det kommer inte att
fungera mao, därför använder man sig av Hardware Compablity List, det är som filter som separerar hård- och mjukvara, filtrerar informationen till drivers allt
som skrivs för att komma förbi detta är en säkerhetsrisk.
hal.dll = Filen finns i Winnt32 katalogen.
Usermode har alltså |
Kernelmode har alltså |
|
|
Ingen hårdvaruaccess |
Hårdvaruaccess |
Begr minnsesvolym |
Allt minne |
Kan swappas |
Kan inte swappas |
Lägre prio |
Högre prio |
Executive Services jobbar mot
I/O manager
Object manger
Virtuellt minne
Process manager
Device Drivers
Säkerhets referens monitor
Graphic device drivers
Win32 Windows Manager & GDI "Graphic Device Drivers"
Kernel jobbar mot
Hardware
HAL
Sist i kedjan så kommer den rena Hårdvaran eller Hardware, grafikdrivrutinen tex.: skrivs direkt mot hårdvaran då får man en snabbare access.
Windows Memory Model
Pagefile eller Swapfile
Minnesadressering
En process kan adressera 4 Gigabyte.
Minnet indelas i 4 KB sidor * 1 MB.
Formel ur boken: 4 KB * 1.048576 b = 4 GB.
De flesta sidor är tomma för det finns knappt några applikationer som har så mycket info.
Sidor som är används skickas direkt till ramminnet.
De sidor som inte har används innehåller en pekare som visar till pagingfile på hårddisken. pagefile.sys.
(Om jag kör ett program visar det kolla där på HDD'n så finns där mer info).
Virtuella minneshanteraren processen
Om ett program kräver mer RAM minne än som finns att tillgå så skickar den ner informationen till min HDD som skapar ett virtuellt (RAM Minne).
Subsystem Översikt
Varje applikation har ett subsystem den är som en tolk till varje applikation. POSIX WIN32 OS/2 utöver det har vi Security Subssytem används inte av
applikationen den är för inloggningen.
Första steget |
|
POSIX till Appl |
WIN32 till Appl |
OS/2 till Appl |
Logon Process till Appl |
Sen till Subtolken |
POSIX till SUB/S |
WIN32 till SUB/S |
OS/2 till SUB/S |
Security till Subsystem |
Sen till Executive Services "Kernelmode" Operativssystem.
Blanda inte ihop microkärnan med Operativsystemet "Kernelmode".
Supporting Win32-based application
Trådar när man kör program.
Tex. en installation."Multi tasking".
Den kan packa upp filer, kopiera samt utföra konfigurering av systemet på samma gång.
Tillförlitlighet
Varje Win32 baserad applikation körs på sin egna 2 GB adress utrymme.
En Win32 baserad applikation tar inte utrymme av en annan Win32 bitars applikation.
Jag kan därför om en Win32 fil rasar, inte får problem i en annan Win32 fil.
NT Stöder / Objekt Link Embedding / ActiveX OpenGL and DirectX OLE/ActiveX Support.
Spelplattform m.m. kräver massor av processorkraft.
OLE /Open GL. Grafiskt gränssnitt kräver massor av processorkraft, använd inte denna som en skärmsläckare.
Industriell standard för 3-D grafik.
Direct/x.
Lågnivåspråk för att kör grejer i realtid.
OLE.
Utbyte av data mellan program.
Supporting MS-Dos baserade apl samt 16 Bits appl
NTVDM / NT's Virtuella MS-Dos Maskin.
NT stöder körning av DOS applikationer via sin NTVDM. Virtual Dos Maskin är en 32-bits tillämpning som simulerar en DOS miljö. NT lurar i praktiken DOS
applikationen så DOS tror att jag är den enda applikationen på denna maskin så jag har full kontroll på denna dator. När en NTVDM applikation startas så har
den sin egen singeltråds-NTVDM där den uppfattar sig själv som den enda processen i datorn. Nu kan inte alla DOS applikationer köras i NTVDM, de applikationer
som gör direkta hårdvaruanrop kan inte köras, kan inte NT hindra hårdvaruanrop och dirigera om dessa till sina Virtuella Device Drivers VDDs så är det kört då.
Det finns 4 st komponenter som är till för att skapa och styra NTVDM
- ntvdm.exe: Översätter DOS - resursfrågor till Win32 frågor.
- ntio.sys: NT's motsvarighet till IO.SYS och agerar inom VDM läget.
- ntdos.sys: NT's motsvarighet till MSDOS.SYS agerar inom VDM läget.
- vdmredir.dll: Omdirigeringen som styr filsystemet och I/O frågor till Win32 subsystemet.
WOW Components
Virtuell 16 Bitars Windows maskin. Kostar ca 3 MB RAM. Detta startar automatiskt vid en uppstart av en 16 bits Win program. Till skillnad från DOS som startar
upp en NTVDM för varje applikation som startar i sin egen singeltråd så startar dessa 16 bitars tillämpningar i samma NTVDM "minnesarea" så
dessa kommer att påverka varandra.
Filerna som styr WOW är:
- wowexec.exe
- wow32.dll
- win16.application
- krnl386.exe
- user.exe
- gdi.exe
När man kör en gammal version av OFFICE paketet som är en WIN 16 version, så kommer det att funka att klippa in ett diagram från Excel till Word, klistra
in det som vanligt och du har funktion, skulle du däremot starta upp Excel och Word i separata minnesområden skulle dessa applikationer inte se varandra
överhuvudtaget, då skulle inte heller klippa klistra funktionen inte fungera fullt ut.
Starta en Win16 appl i sin egna NTVDM
Startknappen - Run och namnet på applikation: start /separate "e:\ labfiles\apps\spind16.exe funkar i run knappen.
Ställer jag mig i e:\lab files\apps\ start /separate spindl16.exe då fungerade det.
c:\>start "spind16.exe" /d c:/labfil~1/apps/spind16.exe /separate.
Kan även köra i startknappen RUN där finns en klick ruta där man kan välja att köra i eget minnesutrymme.
Task Manager
Fås fram genom att trycka CTRL-ALT-DEL
I denna tjänst kan man se:
Vilka program och processer som körs.
Använda den till att prioritera applikationer och processer.
Använda den till att stänga ner applikationer och processer.
Använda den till att se ett systems utförande.
Se utnyttjandet av processorns kraft.
Se utnyttjandet av RAM minnet.
Assigning Process to Processor
Set Affinity = Om jag vill köra en process i samma processor som tidigare om jag har flera processorer, då tvingar sig programmet in i processorn.
Detta kräver att programmet är skrivet för detta. Eller att man styr det dit.
Supporting Applikationer på olika Hårdvaruplattformar
Source kompatibel / Källkods kompatibel till processorn.
Binärkods / kompatibel funkar på stuts.
Source kompatibel / Källkods kompatibel till processorn
Den måste kompileras till den processor som skall använda sig av programvaran.
Binärkods kompatibel funkar på stuts.
Denna typ av applikation behöver ingen kompilering, fungerar direkt.
Distributed Component Object Model
Jag vill kunna använda en annans dators processorkraft hur gör jag?
Använd DCOM tjänsten.
Starta upp dcomcnfg.exe.
Möjlighet att kunna fördela resurskrävande saker till flera maskiner.
Bra och ha när man gör tex. filmen Titanic, då delar man ut den animerade filmen på flera maskiner.
I Word så kan man infoga en 3-D bild som görs på en annan maskin, då kan man lyfta in själva "bilden" i Word men köra redigeringen i en
annan dator.
Man startar winnt32\dcomcnfg.exe. Den tjänsten som sköter detta heter RPC Runtime Library sköter fördelningen av det hela.
Managing Application.
Användande av CMD Kommandotolken.
Starta applikationer som inkluderar Win NT Win MS-Dos OS/2 POSIX.
Starta vilken Batch fil som har fil ändelse: bat / cmd.
Köra igång alla NT kommandon.
Administrera nätverksresurser.
Klippa, klistra information mellan fönstren.
Mixa kommandon från olika subsystem.
Priroriteringsnivåer
För att kunna styra multitasking NT priar enligt nedan.
Normalvärde = 8.
Dynamiska applikationer = 0 - 15.
Realtidsapplikationer = 16 - 31.
Starta i olika nivåer det görs genom start kommandot start / low notepad.exe
/relatime (Prio 24)
/high (Prio 13)
/normal (Prio 8)
/low (Prio 4)
Ändra förgrundsapplicationens svarstid
None Boost: Om denna nivå sätts så körs alla program i samma prioritet.
Typ av program: administrativa programvaror.
Middle Boost: Här är bakgrundsprogrammen satta i bas prio medan förgrundsprogrammet körs i mellan nivå.
Typ av program: Spel eller program som kör rättstavning.
Maximum Boost: Bakgrundsprogrammet körs i basnivå medan förgrundsprogrammet körs två snäpp högre.
Typ av program: Kraftiga kalkyler, bildbehandlingsprogram.
Tillbaka till NT 4 startsidan.