Форк что это такое

0
442

У этого термина существуют и другие значения, см. Форк (значения) .

Форк (англ. fork — развилка, вилка) или ответвление — использование кодовой базы программного проекта в качестве старта для другого. При этом основной проект может как продолжать существование, так и прекратить его. Ответвленный проект может поддерживать и обмениваться частью содержимого с основным проектом, а может и приобрести абсолютно другие свойства, перестав иметь с базовым проектом что-то общее. Пример: разделение проекта X Window System на XFree86 и X.Org. разделение проекта OpenOffice на LibreOffice и Apache OpenOffice. Разделения были и среди несвободного программного обеспечения. Пример: Windows NT которая по мере развития разделилась на две ветви Windows 2000 и Windows Server .

Причины форкинга могут быть различны: от реализации чего-то экспериментального; портирования на новые ниши и платформы; вплоть до спасения проекта, если основной проект по разным причинам заморожен, и его развитие под текущими условиями невозможно или представляется невозможным, а также если разработчик не хочет развивать основной проект.

Дальнейшее развитие может происходить разными путями: сосуществование и активный обмен общим (разделяемым) кодом, независимое существование, независимое существование с полной потерей общих свойств, «миграция» разработчиков из исходной ветки в другую, адаптация проекта к новым технологиям или слияние ответвлений в единый проект. Иногда «ответвление» при возврате в основной проект получает ведущую роль. Например, от GNU Compiler Collection (GCC) в своё время откололся проект Experimental/Enhanced GNU Compiler System (EGCS). Через два года произошло воссоединение проектов, причём результат был основан на EGCS и даже наследовал его гораздо более открытый процесс разработки.

В случае свободного ПО. юридически, возможность создания форка напрямую следует из факта распространения программы по свободной лицензии. Однако форки крупных проектов сравнительно редки и негативно воспринимаются в сообществе, поскольку уменьшают количество разработчиков каждой из ветвей и замедляют их развитие. Тем не менее, значение «права на форк» достаточно велико, даже несмотря на то, что на практике оно используется редко: это некоторый сдерживающий фактор в отношениях между ключевыми разработчиками (имеющими возможность вносить изменения в код проекта напрямую, апстрим) и сообществом.

Что такое форк?

Биткоин — это программное обеспечение с открытым исходным кодом, соответственно любой желающий может дублировать, изменять и использовать его на свое усмотрение. Собственно модификация исходного кода и называется форком (буквально — «вилка»).

Иными словам, любой форк — это изменение правил, по которым блок в блокчейне признаётся подлинным (валидным).

Существуют два основных вида форков: софтфорки и хардфорки. Первый можно назвать «мягкой» модификацией исходного кода, второй — «жесткой».

В случае софтфорка изменение правил не требует обновления клиента (программного обеспечения) для исполнения новых правил. Если часть узлов (нод) в сети не примет новые правила, такие узлы всё равно смогут взаимодействовать с узлами, которые пользуются новыми правилами.

Для лучшего понимая можно провести аналогию с языками: если до форка все узлы разговаривали на американском английском, а новые правила требуют перехода на британский вариант, то узлы, которые продолжат пользоваться американской версией, всё равно смогут понимать британскую. Одновременно с этим узлами, которые используют британский английский, будет легко понять американскую версию.

Таким образом, софтфорк — это обратимое изменение кода, которое не нарушает консенсус относительно самого протокола.

В случае хардфорка новые правила противоречат старым настолько, что узлы, которые их не приняли, не воспринимают информацию от узлов, которые их приняли. Если следовать все той же аналогии с языками, старые ноды говорят на английском, а новые — на китайском. Хардфорк предполагает изменение самого механизма консенсуса, и в этом случае вся сеть разделяется на две части, которые больше никогда не смогут взаимодействовать. Это происходит потому, что блоки, признаваемые валидными в одной части, не будут считаться таковыми в другой.

Как это работает в криптовалютах?

В случае с криптовалютами под форком может подразумеваться изменение правил функционирования, связанное с необходимостью внесения изменений в протокол. Иными словами, иногда, чтобы сделать биткоин лучше и безопасней, приходится прибегать к одной из разновидностей форка. Хотя в некоторых случаях вопрос форка — это вопрос безопасности.

Что происходит после хардфорка?

В случае хардфорка одна из образовавшихся ветвей (цепей) системы может отмереть, но может и сохраниться — это зависит от того, какое количество хешевой мощности приходится на каждую из ветвей. Ветвь с более высокой мощностью имеет больше шансов на успех. В качестве наиболее очевидного примера подобного сценария можно вспомнить случившийся летом 2016 года хардфорк сети Ethereum: новая цепь продолжила существование под прежним названием (ETH), однако одновременно с этим сохранилась и поддерживается оригинальная цепь, названная Ethereum Classic (ETC).

Есть мнение, что большинство криптовалют — форки биткоина?

Форком действительно может называться клон уже существующей криптовалюты. Например, вы можете прямо сейчас скопировать исходный код биткоина к себе на компьютер, изменить название, правила эмиссии и скомпилировать программу. После этого нужно обязательно намайнить (эмитировать) несколько миллионов монет и пригласить друзей и знакомых поиграть в увлекательную экономическую игру. Иногда из такого клонирования появляются очень серьезные проекты.

Все ли криптовалютные проекты являются форками или альткоинами?

Нет, далеко не все. Существуют так называемые «цветные монеты», метакоины и много других сложных токенов, которые в строгом смысле слова не являются ни форками, ни альткоинами.

Альткоином называется любая альтернативная криптовалюта, кроме биткоина. В строгом смысле слова, альткоином нельзя считать клон уже существующей криптовалюты, который не несет в себе никаких значимых технических улучшений и стремления к всемирной сингулярности. На практике альткоин и форк — весьма размытые понятия, которые могут употребляться по отношению к одному и тому же проекту независимо от точности данного определения.

В чем все-таки разница?

Будет более правильным называть альткоином криптовалюты, существенно отличающиеся от остальных проектов. Например Dash, Ethereum, MaidSafe, NXT. В свою очередь, более корректно называть форками такие проекты как Dogecoin (форк Litecoin), Expanse (форк Ethereum), Stellar (форк Ripple).

Подписаться на новости Forklog

Навигация по сайту

Что такое форк? Значение термина форк в Интернете

Форк (fork — вилка) — это процесс расщепления ПО (в основном свободного) на две отдельные ветки (два проекта). Причем каждая ветка развивается разными авторами вне зависимости от другой. В одной ветки могут реализовываться возможности, которые отсутствуют в другой. В этом случае обе ветки могут полностью потерять совместимость между собой. Например: разделение проекта X Window System на X.Org и XFree86.

Иногда, в дальнейшем происходит объединение версий. Бывает и так, что при возврате в основной проект ответвление получает ключевую роль. Пример: от GNU Compiler Collection отсоединился проект Experimental/Enhanced GNU Compiler System, а через пару лет проекты воссоединились, причем результат воссоединения был основан на EGCS.

В случае свободного программного обеспечения, юридически, возможность создания форка следует из факта распространения ПО по свободной лицензии. Но форки больших проектов встречаются редко и сообществе воспринимаются негативно, так как уменьшают количество разработчиков каждой ветви и замедляют их развитие. Но как бы то ни было, значение «права на форк» весьма велико, даже несмотря на то, что оно используется редко.

Весь список терминов →

Навигация по сайту:

Представляем
систему управления сайтами
NetCat

CMS NetCat — профессиональная коммерческая система управления Интернет-сайтами, один из лидеров на российском рынке веб-разработок.
Наша компания является сертифицированным партнером и рекомендуемым разработчиком сайтов на NetCat во Владивостоке.
В настоящее время большинство новых сайтов мы создаем на основе ее программной платформы.

Быстрый поиск по сайту:

Источники: http://ru-wiki.org/wiki/Форк, http://forklog.com/chto-takoe-fork/, http://animatika.ru/info/gloss/fork.html

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here