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 " .
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 .
Kortfattat kan de uppgifter som utförs av patchar beskrivas enligt följande:
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".
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 .
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 uppdateringIbland 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:
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.
Versionskontrollsystem används för att skapa, använda och underhålla patchar .
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.
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 .