Что такое TON OS
Операционная система (ОС) - это системное программное обеспечение, которое управляет компьютерным оборудованием, ресурсами программного обеспечения и предоставляет общие услуги для компьютерных программ.
- из Википедии
Операционная система TON является посредником между пользователем и блокчейном - распределенной проверяемой вычислительной платформой.
Почему мы называем это TON OS?
Современный блокчейн, такой как Free TON, - это не просто неизменный реестр. Биткойн и другие ранние блокчейны были в основном реестрами, но даже Биткойн поддерживает не полный сценарий Тьюринга, который предоставляет некоторые инструкции выполнения транзакции. Фактически, сценарий Биткойн представляет собой набор инструкций, подобный Форт, что делает его несколько похожим по происхождению на язык ассемблера виртуальной машины TON, но об этом позже.
Большинство блокчейнов после Ethereum по большей части представляют собой распределенные вычислительные машины, которые выполняют и проверяют программы, завершенные по Тьюрингу, называемые смарт-контрактами. Проще говоря, они представляют собой особую разновидность сетевых процессоров, работающих в оркестровке (так называемый «консенсус») для выполнения общих операций и, таким образом, проверки правильности их выполнения.
В TON эта парадигма доведена до крайности. Неизменяемый реестр - это небольшая часть TON. Конечно, это неизменный реестр и цепочка блоков - именно так данные записываются и передаются от одного сетевого процессора к другому - но есть по крайней мере два аспекта, которые делают TON уникальным вычислительным механизмом, а не простым реестром.
Практически все в TON - это смарт-контракты. Каждая учетная запись в TON должна быть связана с кодом смарт-контракта (или инициализирована), чтобы пользователь мог выполнять с ней любые операции. Смарт-контракты - это программы сборки TON, выполняемые на виртуальной машине TON, во многом так же, как любой код сборки выполняется аппаратно или виртуальным процессором на обычном компьютере.
Между обычным компьютером и пользователем (который может быть разработчиком, который хотел бы писать программы для этого компьютера или обычным пользователем, который хотел бы запускать эти программы и взаимодействовать с ними) существует нечто, называемое операционной системой.
Вот как GNU определяет операционную систему:
Linux - это операционная система: серия программ, которые позволяют вам взаимодействовать с вашим компьютером и запускать другие программы.
Операционная система состоит из различных основных программ, которые необходимы вашему компьютеру, чтобы он мог общаться и получать инструкции от пользователей; читать и записывать данные на жесткие диски, ленты и принтеры; контролировать использование памяти; и запустить другое программное обеспечение.
Совершенно очевидно, зачем компьютеру нужна операционная система. До появления операционных систем взаимодействие с компьютерами выглядело примерно так:
Я до сих пор считаю «мировой компьютер» хорошей аналогией. Идея о том, что у вас есть общая вычислительная среда, в которой любой может создавать и запускать материалы, по-прежнему является вполне законной и ценной вещью, которую следует подчеркнуть.
- Виталик Бутерин
Как ни крути, блокчейн вполне может называться децентрализованным компьютером. По крайней мере, некоторые из блокчейнов. TON определенно есть.
И, как и в случае с любым компьютером, блокчейну нужен промежуточный уровень (или уровни), который управляет его ресурсами и предоставляет услуги программам, которые пользователь запускает или с которыми взаимодействует. Конечно, с точки зрения архитектуры, блокчейн нельзя напрямую сравнивать 1: 1 с обычным ПК. Но с логической точки зрения, всякий раз, когда мы думаем о программном стеке, необходимом для взаимодействия с пользователем, называть его операционной системой весьма убедительно.
Приведем несколько аргументов. Из соображений практичности мы не будем говорить только о блокчейне Free TON, но большинство аргументов можно применить и к некоторым другим современным блокчейнам.
Ожидается, что классическая операционная система обеспечит:
Управление памятью
Управление процессором
Управление устройством
Обработка файлов
Обеспечение безопасности
Контроль производительности системы
Учет и обработка работ
Обнаружение и обработка ошибок
Синхронизация с другим ПО и пользователями
Сравним с TON OS и предоставляемыми ею услугами:
Управление памятью
Отдельные блоки, содержащие данные, создаются, проверяются и завершаются под управлением консенсусного программного обеспечения блокчейна. Узлы, участвующие в блоках обработки, выбираются динамически, без вмешательства пользователя блокчейна.
Управление процессором
Смарт-контракты - это программы блокчейна, которые выполняются виртуальной машиной TON на многих сетевых устройствах и локально (если учесть, как пользователь получает доступ к блокчейну). Пользователь не думает о том, как выполняется смарт-контракт. Следуя некоторым инструкциям по развертыванию, разработчик может развертывать и запускать смарт-контракты, не задумываясь о том, на какой виртуальной машине он выполняется или как это выполнение было синхронизировано по сети и проверено. В этом отношении можно с уверенностью сказать, что TON OS предоставляет возможности управления процессором.
Управление устройством
Программное обеспечение блокчейна, включая реализацию полного узла, позволяет пользователям контролировать, обрабатывать, настраивать и диагностировать отдельные узлы блокчейна.
Файл handliнг
С помощью смарт-контракта пользователи могут хранить и получать доступ к постоянным данным в цепочке блоков.
Обеспечение безопасности
Доступ к закрытым областям системы разрешен за счет широкого использования специализированных смарт-контрактов. Случаи попыток несанкционированного доступа фиксируются и отслеживаются с помощью смарт-контрактов безопасности.
Контроль производительности системы
Общесистемные смарт-контракты, развернутые в блокчейне, отвечают за мониторинг производительности системы и получение событий, которые выявляют различные случаи неисправности системы.
Учет и обработка работ
Выполнение смарт-контрактов внутри блокчейна регулируется специализированными программными модулями. Подробная информация о выполнении доступна для просмотра и анализа через проводник блокчейна.
Обнаружение и обработка ошибок
Случаи ненадлежащего поведения и несоответствия смарт-контрактов и программного обеспечения блокчейн отслеживаются, собираются и сохраняются для последующего анализа с помощью специализированных смарт-контрактов.
Синхронизация с другим ПО и пользователями
Системные смарт-контракты образуют взаимосвязанную децентрализованную сеть, обмениваясь адресами, интерфейсами и спецификациями друг с другом, чтобы предоставить пользователям и другим смарт-контрактам информацию, необходимую для правильного использования их функций.