Lappa

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 12 april 2022; kontroller kräver 2 redigeringar .

Patch , eller patch ( eng.  patch /pætʃ/-patch )  - information utformad för att automatiskt göra vissa ändringar i datorfiler . Att applicera en lapp kallas ibland för "lappning".

En patch eller uppdatering ( eng.  update ) syftar i synnerhet på att innehålla sådan information, ett automatiserat separat tillhandahållet mjukvaruverktyg som används för att fixa problem i programvaran eller ändra dess funktionalitet.

Korrigeringen kan tillämpas på ett redan installerat program eller på dess källkoder . Detta inkluderar att fixa buggar, ändra utseendet, förbättra ergonomin eller prestanda för program och alla andra ändringar som utvecklaren vill göra.

Storleken på patchar kan variera från några kilobyte till hundratals megabyte . I synnerhet kan patchar vara mycket stora när man ändrar eller ersätter icke-programdata, till exempel filer med grafik och ljud (finns ofta i datorspel ). Men den stora storleken kan också orsakas av det stora antalet ändringar som görs. Samtidigt används orden "patch", "patch" vanligtvis för att hänvisa till små fixar, medan stora patchar som på allvar ändrar eller uppdaterar programmet ofta kallas " service pack " eller " programuppdateringar " .

Skäl till att använda patchar

Historik

På den tiden då hålkort eller pappersband användes för att ladda program i datorer, distribuerade mjukvaruutvecklare lappar i form av hålkort med en annan uppsättning perforeringar än den ursprungliga uppsättningen av perforeringar eller angav på håltejpen var platserna skulle bytas . Användare bytte ut motsvarande hålkort i högen eller klippte ut den markerade delen av tejpen och klistrade in en ny del av programmet i dess ställe. Samtidigt dök namnet "patch" upp ( eng.  patch , bokstavligen - "patch").

Senare användes magnetband för att distribuera plåster . När disketter uppfanns började patchar skickas på disketter i kuvert med posten . Idag, i en tid präglad av Internets allestädes närvarande, laddar datorprogram och deras användare ned patchar från utvecklarnas webbplatser .

Typer av patchar

Applikation

Kortfattat kan de uppgifter som utförs av patchar beskrivas enligt följande:

Programvara

För att automatiskt uppdatera användaren används patchar vanligtvis i stora projekt där mängden data som överförs är viktig.

Vid mjukvaruutveckling och liknande används källkodskorrigeringar oavsett projektstorlek, vanligtvis genom versionskontrollsystem . Skapade patchar som fixar särskilda problem eller lägger till viss funktionalitet, såsom stöd för andra språk, skickas vanligtvis till författarna eller läggs ut på webben.

Till exempel, när han utvecklade kärnan i operativsystemet Linux fick Linus Torvalds , dess författare, tusentals brev med patchar till sin version från många programmerare.

Apache -webbservern utvecklades från en uppsättning patchar som tidigare skrivits av olika webbansvariga för att lägga till funktionalitet till NCSA HTTPd . Enligt legenden är det här namnet kom ifrån - vilket betyder att det i huvudsak är en samling patchar: "en patchy server".

Musikprogramvara

I program för att skapa musik är en patch en uppsättning programmerbara parametrar för ljudet av ett visst ljud lagrat i minnet av en musikalisk synthesizer. En mjukvarumodul som innehåller olika extra ljudeffekter och förinställningar .

Användarmedverkan i programuppdatering

Det händer att själva uppdateringen orsakar nya fel i arbetet. Därför föredrar erfarna användare att vänta ett tag tills den första feedbacken om resultatet av att använda den nya versionen av programvaran visas , och först då bestämma sig om de ska installera denna patch. Detta ögonblick är särskilt viktigt för systemadministratörer och när du installerar stora uppdateringar till operativsystemet.

När det gäller uppdatering av operativsystem och serverprogramvara spelar patchar en viktig roll för att upprätthålla säkerheten och korrigera säkerhetshål . För att underlätta installationen av sådana uppdateringar stöder operativsystem ofta automatiska eller halvautomatiska uppdateringsmekanismer. Samtidigt inaktiverar försiktiga användare (särskilt systemadministratörer ) vanligtvis automatisk installation av patchar tills de är övertygade om den stabila driften av de korrigerade versionerna med hjälp av andras exempel [1] . När det gäller stora eller mycket viktiga patchar gör utvecklare ofta förtestning ( betatester ) själva först.

Tvinga uppdatering

Ibland tvingar mjukvaruutvecklare användare att uppgradera. Detta kan uttryckas i begränsningen av åtkomst till utvecklarens tjänster med ett ouppdaterat program (till exempel oförmågan att installera efterföljande patchar och uppdateringar), eller i ett fullständigt eller partiellt fel på själva programmet.

Orsakerna kan vara:

  • sårbarheter i programmet som gör användningen farlig för utvecklarens tjänster, användarens dator eller andra datorer;
  • ändringar eller korrigeringar som är direkt relaterade till utvecklarens tjänster (kompatibilitet mellan kopior som installerats av alla användare, spelregler, användarvillkor för tjänster);
  • slåss mot vissa användaråtgärder (till exempel fusk i onlinespel eller användning av icke-fria programvarukomponenter som inte är godkända av upphovsrättsinnehavaren ); detta kan ta bort viktiga funktioner, såsom möjligheten att installera Unix-liknande operativsystem på PlayStation 3 -spelkonsolen (" OtherOS "). [2]

Firmware patch

I många enheter finns mjukvaran i själva enhetens minne i form av en sk. firmware , som inkluderar både operativsystemet som kontrollerar enhetens funktion och den faktiska uppsättningen program som säkerställer prestanda för vissa av dess funktioner. Därför, om utvecklaren ger möjlighet att ersätta sin firmware ( blinkande ), representerar applicering av en patch på enhetens programvara oftast en fullständig ersättning av hela firmware med en nyare version. Vanligtvis består en sådan patch av en fil som innehåller den uppdaterade programkoden i binär form, och ett speciellt program som skriver den till enhetens minne istället för den tidigare versionen. Ett exempel på denna typ av patch är att flasha BIOS på ett datormoderkort eller en modern mobiltelefon ansluten till en dator .

Eftersom i själva verket inte någon del av programmen eller funktionerna skrivs om, utan hela enhetens operativsystem, kan alla oväntade fel eller störningar i blinkningsprocessen (till exempel stänga av strömmen) förhindra att det skrivs korrekt till slutet, vilket i sin tur oftast leder till att enheten inte fungerar.

Patchutveckling

Versionskontrollsystem används för att skapa, använda och underhålla patchar .

Installationsautomation

Ofta kan moderna uppdateringar hantera patchar. Att automatisera hela processen förenklar slutanvändarens uppgift - han behöver bara köra programmet, och det kommer att bestämma om det ska installeras patchar och i vilken ordning. Det händer också att programmet laddar ner uppdateringar från Internet utan användaringripande. Denna metod används ofta som stöd för serverprogramvara och operativsystem. I en situation där administratören måste övervaka flera datorer, hjälper detta tillvägagångssätt att upprätthålla tillförlitligheten för systemet som helhet. Det är vanligtvis så säkerhetsuppdateringar installeras.

Hjälpverktyg

För att säkerställa att alla ändringar som görs av patchen sker automatiskt utan användaringripande, finns det speciella verktyg som skapar självinstallerande patchar. De registrerar information om vilka filer som ska ersättas, eller vilka program som startas efter uppackning, om innehållet i filerna ska ändras. Oftast är patchen som erhålls på detta sätt ett självextraherande arkiv som innehåller hela uppdaterade filer.

Se artikeln Självutdragande arkiv för detaljer .

Se även

Anteckningar

  1. Faktiskt, främst för servrar, har arbetsstationer vanligtvis automatisk uppdatering.
  2. PS3 Firmware (v3.21)  Uppdatering  ? . PlayStation.Blog (28 mars 2010). Hämtad 24 maj 2022. Arkiverad från originalet 26 april 2019.

Länkar