Vad är ett programvarulås?

Ett programvarulås är ett datorproblem som kan uppstå i multiprocessorsystem. Detta lockout kan göra att datorns prestanda sjunker dramatiskt och förhindrar användning av ytterligare processorkapacitet. I moderna multiprocessordatorer måste speciell operativsystemprogramvara användas för att undvika funktionsfel i programvaran.

Förekomsten av programvarulås beskrevs först av IBM ™ -forskaren Stuart Madnick 1968. I detta tidiga skede i datorhistorien förutspådde Madnick att persondatorer skulle bli mindre och billigare under de kommande decennierna, men skulle fortsätta att begränsas till ungefär samma dataöverföringshastigheter. Denna förutsägelse visade sig vara mestadels korrekt, och datorns användbara kraft ökar ofta genom att helt enkelt lägga till extra processorer.

Den främsta orsaken till programvarulåsning är inte ett fel i sig, utan snarare en funktion. I en dator med flera processorer kopplade ihop, är det ingen fördel att ha flera processorer som var och en hanterar samma informationsdel. Faktum är att olika processorer som varje försöker modifiera en enda datakälla kan förstöra den ursprungliga posten. För att förhindra att flera enheter öppnar samma information får endast en processor åtkomst medan de återstående bearbetningskomponenterna är "låsta" i filen.

Denna lockout-metod är effektiv för datorer med ett lågt antal processorer. Tillvägagångssättet blir emellertid ett problem i enheter med ett brett utbud av länkade behandlingsenheter. Programvarulåsning begränsar kraftigt skalbarheten och effektiviteten av att lägga till flera processorer till datorer, eftersom det finns gränser för hur snabb data kan distribueras mellan lagringsutrymme och processorerna.

Ingen maskin, inklusive en dator, är helt effektiv; denna inneboende ineffektivitet blir sammansatt i multiprocessordatorer. En dator med sexton processorer, till exempel, kan ha en av sina processorer i vila hela tiden eftersom data inte kan distribueras så snabbt som behövs. Vid någon tidpunkt innebär sammansatt ineffektivitet att det inte längre är användbart att utöka antalet processorer i en dator. Att lägga till tusen processorer i ett system är värdelöst eftersom datahastigheten är begränsad och en majoritet av de redundanta processorerna kommer att sitta fast i konstant programvarulås.

Programvarulåsning kan minimeras genom att använda ett operativsystem som är specifikt utformat för flera processorer. Specialiserad programvara kan dela upp en datakälla i många olika delar och distribuera dessa delar till processorerna. Detta tillvägagångssätt minskar behovet av att låsa ut processorer, eftersom varje enhet kan behandla en liten komponent av originaldata. I huvudsak ser multiprocessorprogramvaran till att varje behandlingsenhet alltid har en uppgift och håller data flyter på ett mer distribuerat och jämnt spridd sätt.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?