? Symmetriske operativsystemer som Windows 7, Ubuntu Linux og Mac OS X fungerer aldeles utmerket på vare servere , bærbare eller stasjonære systemer . For å få maksimal ytelse fra disse operativsystemene , velg maskinvare og programvare som er designet fra bunnen av for å støtte symmetrisk multiprosessering teknologi . Flere prosessorer
Symmetriske operativsystemer fungerer best når de deler arbeidsbelastningen blant flere prosessorer . Dette kan oppnås ved å skape klynger av frittstående arbeidsstasjoner eller servere koblet sammen med et høyhastighets nettverk . Imidlertid prosessorer med flere kjerner på samme chip gi enda bedre ytelse. Hver kjerne er ansett som en egen prosessor som kan utføre instruksjoner uavhengig av alle andre kjerner. Siden prosessorkjerner er på samme chip, er data transitt tid dramatisk redusert .
Fast Data Bus
Selv om hver prosessor utfører sin egen andel av arbeidsmengden , de alle har tilgang til en felles pool av cache -minne , system-RAM , nettverkstilkoblinger og robuste lagringsløsninger . Den generelle ytelsen til systemet reduseres hvis en prosessor har å kaste bort sykluser venter på en sjanse til å lese eller skrive data til systemet cache . AMDs HyperTransport og Intels QuickPath Interconnect er to teknologier som øker symmetrisk operativsystemet ytelse ved å påskynde overføring av data mellom prosessorkjerner og resten av systemet .
Datamaskiner Tilgang
Symmetriske operativsystemer kontinuerlig overvåke tilstanden i sine systemer , identifisere vedlagte hardware enheter og overvåke deres status . Dette oppnås ved å gi hovedkort BIOS-støtte for symmetrisk multiprosessing . I tillegg er symmetriske operativsystemer må være i stand til å behandle maskinvareavbrudd til hver prosessor . Systemer med I /O Advanced Programmable Interrupt Controller , eller I /O APIC , støtte gir hver prosessor med sitt eget sett med avbrudd som den symmetriske operativsystemet kan deretter overvåke , behandle eller rekonfigurere etter behov.
søknader Threading
Den virkelige fordelen med symmetriske operativsystemer kan bare sees hvis de programmene du kjører er utformet for å dra nytte av flere prosessorer . Utviklere kan skrive et program som inneholder en samling av flere selvstendige oppgaver eller tråder . Hver av disse oppgavene kan gjennomføres parallelt med andre oppgaver ved behov . Som programmet kjører , passerer den de oppgavene den trenger for å utføre til den symmetriske operativsystem som i sin tur tildeler dem sin egen prosessor eller kjerne. Programmeringsspråk som Java , C #, Ruby og Python har innebygd støtte for multiprosessering gjennom tråder.