Âûáèðàé : Ïîêóïàé : Èñïîëüçóé
â ôîêóñå
0

Google: ïðîðûâ â ìèíèìèçàöèè ïàò÷åé

Ñïåöèàëèñòû Google ðàçðàáîòàëè íîâûé, ïëàòôîðìî-íåçàâèñèìûé àëãîðèòì äåëüòà-êîäèðîâàíèÿ, ïîçâîëÿþùèé ìèíèìèçèðîâàòü ðàçìåð îáíîâëåíèé ïðîãðàì

Íîâûé àëãîðèòì, ïîëó÷èâøèé íàçâàíèå Courgette ("Êàáà÷îê"), îáåñïå÷èâàåò âû÷èñëåíèå ðàçíèöû ìåæäó äâóìÿ áèíàðíûìè ôàéëàìè ñ íåäîñòóïíîé ðàíåå ýôôåêòèâíîñòüþ.

Ñîâðåìåííîå ïðîãðàììíîå îáåñïå÷åíèå íóæäàåòñÿ â ïîñòîÿííûõ îáíîâëåíèÿõ. Åñëè êîä ïðîãðàììû èìååò î÷åíü áîëüøîé îáúåì, òî íàèáîëåå ïðîäóêòèâíàÿ ôîðìà îáíîâëåíèé - ïåðåäà÷à äåëüòû (ðàçíèöû ìåæäó ïðåäûäóùåé è îáíîâë¸ííîé âåðñèÿìè). Òàêîé ìåòîä íàçûâàåòñÿ äåëüòà-êîäèðîâàíèåì èëè äåëüòà-êîìïðåññèåé, ïîñêîëüêó ýôôåêòèâíàÿ äåëüòà ìåæäó ïîñëåäîâàòåëüíûìè âåðñèÿìè ìåíüøå, ÷åì îáíîâë¸ííàÿ âåðñèÿ.

Ìàëûé îáúåì äåëüòû îáåñïå÷èâàåò áûñòðîòó ïåðåäà÷è îáíîâëåíèé è ýêîíîìèþ äèñêîâîãî ïðîñòðàíñòâà ïðè õðàíåíèè âåðñèé ôàéëîâ. Ïîýòîìó çàäà÷à å¸ ìèíèìèçàöèè ÿâëÿåòñÿ âåñüìà àêòóàëüíîé.

Îäíàêî äåëüòà-êîäèðîâàíèå èñïîëíÿåìûõ áèíàðíûõ ôàéëîâ (ôàéëîâ â äâîè÷íîì ôîðìàòå) - íåïðîñòàÿ çàäà÷à. Äàæå íåáîëüøîå èçìåíåíèå èñõîäíîãî êîäà (èìåþùåãî âûñîêèé óðîâåíü àáñòðàêöèè) ìîæåò âåñòè ê ñóùåñòâåííûì èçìåíåíèÿì â áèíàðíîì êîäå.  ðåçóëüòàòå äåëüòà ñòàíîâèòñÿ áëèçêîé ïî ðàçìåðó ê îáíîâë¸ííîé âåðñèè, ÷òî äåëàåò å¸ èñïîëüçîâàíèå áåññìûñëåííûì.

 òî æå âðåìÿ ïåðåäà÷à îáíîâëåíèé â âèäå èñõîäíîãî êîäà çàòðóäíåíà èç-çà ÷àñòîãî îòñóòñòâèÿ íà êëèåíòñêîé ñòîðîíå ïîëíîöåííûõ ñðåäñòâ òðàíñëÿöèè â ìàøèííûé êîä.

Èíæåíåðû êîìïàíèè Google ðåøèëè çàäà÷ó ìèíèìèçàöèè äåëüòû, ñîçäàâ òåõíîëîãèþ Courgette, ïîçâîëÿþùóþ ïåðåñûëàòü îáíîâëåíèÿ â âèäå ïñåâäî-àññåìáëåðíîãî êîäà. Ïîñëåäîâàòåëüíûå âåðñèè äèçàññåìáëèðóþòñÿ, èõ äåëüòà âûñûëàåòñÿ êëèåíòñêîìó êîìïüþòåðó è ïðèìåíÿåòñÿ ê äèçàññåìáëèðîâàííîé ñòàðîé âåðñèè ïðîãðàììû. Çàòåì ïîëó÷åííàÿ èçìåí¸ííàÿ âåðñèÿ îïÿòü ïåðåâîäèòñÿ â ìàøèííûé êîä.

Îñíîâíîå ïðåèìóùåñòâî Courgette - âîçìîæíîñòü îáðàòèìîãî ïðåîáðàçîâàíèÿ áèíàðíîãî êîäà â ïñåâäî-àññåìáëåðíûé êîä íèçêîãî óðîâíÿ àáñòðàêöèè, ïðèãîäíûé äëÿ ëåãêîãî è áûñòðîãî âû÷èñëåíèÿ äåëüòû.

"Èçîáðåòåíèå Google î÷åíü èíòåðåñíîå è ïåðñïåêòèâíîå. Ìèíèìèçàöèÿ ðàçìåðîâ îáíîâëåíèé âàæíà äëÿ àíòèâèðóñíîé èíäóñòðèè, ïîýòîìó ìû âñåãäà âíèìàòåëüíî ñëåäèì çà ïîäîáíûìè ðàçðàáîòêàìè, - êîììåíòèðóåò Íèêèòà Øâåöîâ, ðóêîâîäèòåëü ëàáîðàòîðèè àíòèâèðóñíûõ èññëåäîâàíèé "Ëàáîðàòîðèè Êàñïåðñêîãî". - Ðàçðàáîò÷èêè íàøåé êîìïàíèè óæå ðåàëèçîâàëè àíàëîãè÷íîå óëó÷øåíèå òåõíîëîãèè äåëüòà-êîäèðîâàíèÿ, íî ñ ó÷åòîì ñïåöèôèêè àíòèâèðóñíûõ áàç".

Ïî äàííûì Google, Courgette ïîêàçàë 9-êðàòíîå ñíèæåíèå îáúåìà îáíîâëåíèé äëÿ áðàóçåðà Google Chrome ïî ñðàâíåíèþ ñ èñïîëüçîâàâøèìñÿ ðàíåå èíñòðóìåíòîì äåëüòà-êîäèðîâàíèÿ bsdiff.

Êîììåíòàðèè