
Оригинал (англ.): 👉https://docs.ton.dev/86757ecb2/p/7941cd-what-is-ton-os
Операционная система, сокр. ОС (англ. operating system, OS) — комплекс взаимосвязанных программ, предназначенных для управления ресурсами компьютера и организации взаимодействия с пользователем.
- из Википедии.
Операционная система TON (TON OS) является посредником между пользователем и блокчейном — распределенной проверяемой вычислительной платформой.
Почему мы называем эту систему TON OS?
Современный блокчейн, такой как Free TON, — это не просто неизменный распределенный регистр. Биткойн и другие более ранние блокчейны были главным образом распределенными реестрами, но даже Биткойн поддерживает полный сценарий, отличный от Тьюринга, который предоставляет некоторые инструкции по выполнению транзакций. Фактически, биткойн-скрипт представляет собой Forth-подобный набор инструкций, что делает его несколько похожим по происхождению на язык ассемблера TON Virtual Machine, но об этом позже.
Большинство блокчейнов после Ethereum в основном представляют собой распределенные вычислительные механизмы, которые выполняют и проверяют программы, полные по Тьюрингу, называемые умными контрактами (смарт-контрактами). Проще говоря, они представляют собой особый тип сетевых процессоров, работающих в оркестровке (называемой «консенсусом») для выполнения общих операций и, таким образом, проверки правильности их выполнения.
В TON эта парадигма доведена до крайности. Неизменный регистр — довольно маленькая часть TON. Конечно, это неизменный регистр и цепочка блоков — именно так данные записываются и передаются от одного сетевого процессора к другому — однако есть по крайней мере два аспекта, которые делают TON уникальным в большей степени вычислительным механизмом, чем простой регистр.
Почти все в TON — это умные контракты. Каждая учетная запись в TON должна быть связана с кодом смарт-контракта (или инициализирована), чтобы пользователь мог выполнять любые операции с ним. Смарт-контракты — это программы сборки TON, выполняемые на виртуальной машине TON, так же, как любой код сборки выполняется аппаратно или виртуальным процессором на обычном компьютере.
Между обычным компьютером и пользователем (который может быть разработчиком, который хотел бы писать программы для этого компьютера, или обычным пользователем, который хотел бы выполнять эти программы и взаимодействовать с ними) существует нечто, называемое операционной системой.
Вот как GNU определяет операционную систему:
- Linux — это операционная система: ряд программ, которые позволяют вам взаимодействовать с вашим компьютером и запускать другие программы.
- Операционная система состоит из различных основных программ, которые необходимы вашему компьютеру, чтобы он мог общаться и получать инструкции от пользователей; читать и записывать данные на жесткие диски, ленты и принтеры; контролировать использование памяти; и запускать другое программное обеспечение.
Совершенно очевидно, почему компьютерам нужна операционная система. До появления операционных систем взаимодействие с компьютерами выглядело примерно так:
Я все еще думаю, что «мировой компьютер» — хорошая аналогия. Идея о том, что у вас есть общая вычислительная среда, на которой каждый может что-то создавать и запускать, по-прежнему является абсолютно законной и ценной вещью, которую следует подчеркнуть.
-Виталик Бутерин
В любом случае, блокчейн — неплохой кандидат на звание децентрализованного компьютера. По крайней мере, некоторые из блокчейнов. TON определенно такой.
И так же, как с любым компьютером, блокчейну необходим промежуточный уровень (или уровни), который управляет его ресурсами и предоставляет услуги программам, с которыми пользователь работает или взаимодействует. Конечно, с точки зрения архитектуры блокчейн нельзя сравнивать напрямую 1: 1 с обычным ПК. Но в логическом смысле всякий раз, когда мы думаем о программном стеке, необходимом для обеспечения взаимодействия с пользователем — называть его операционной системой довольно убедительно.
Давайте посмотрим на некоторые аргументы. Из соображений практичности мы не будем говорить только о блокчейне Free TON, но большинство аргументов могут быть применены и к некоторым другим современным блокчейнам.
Классическая операционная система включает в себя:
- Управление памятью
- Управление процессором
- Управление устройством
- Обработка файлов
- Обработка безопасности
- Контроль производительности системы
- Работа учета и обработки
- Обнаружение и обработка ошибок
- Синхронизация с другим программным обеспечением и пользователями
Давайте сравним TON OS с предоставленными сервисами:
Управление памятью
Отдельные блоки, содержащие данные, создаются, проверяются и завершаются под управлением программного обеспечения согласованной цепочки блоков. Узлы, участвующие в блоках обработки, выбираются динамически, не требуя вмешательства пользователя блокчейна.
Управление процессором
Смарт-контракты — это программы блокчейна, которые исполняются виртуальной машиной TON на многих сетевых устройствах и локально (если мы рассмотрим, как пользователь обращается к блокчейну). Пользователь не думает о том, как выполняется смарт-контракт. Следуя некоторым инструкциям по развертыванию, разработчик может развертывать и запускать смарт-контракты, не задумываясь о том, на какой виртуальной машине он выполняется или как это выполнение было синхронизировано по сети и проверено. В этом отношении можно с уверенностью сказать, что TON OS предоставляет возможности управления процессором.
Управление устройством
Программное обеспечение блокчейна, включая полную реализацию узлов, позволяет пользователям контролировать, обрабатывать, настраивать и диагностировать отдельные узлы блокчейна.
Обработка файлов
С помощью смарт-контракта пользователи могут хранить и получать доступ к постоянным данным в блокчейне.
Обработка безопасности
Доступ к закрытым областям системы разрешается путем широкого использования специализированных смарт-контрактов. Случаи попыток несанкционированного доступа регистрируются и отслеживаются с использованием смарт-контрактов безопасности.
Контроль производительности системы
Смарт-контракты в масштабе всей системы, развернутые в блокчейне, отвечают за мониторинг производительности системы и получение событий, которые указывают на различные случаи сбоя системы.
Работа учета и обработки
Выполнение смарт-контрактов внутри блокчейна регулируется специализированными программными модулями. Детали выполнения доступны для просмотра и анализа через проводник блокчейна.
Обнаружение и обработка ошибок
Случаи ненадлежащего поведения и несогласованности смарт-контрактов и программного обеспечения блокчейна отслеживаются, собираются и хранятся для последующего анализа специальными смарт-контрактами.
Синхронизация с другим программным обеспечением и пользователями
Системные смарт-контракты образуют взаимосвязанную децентрализованную сеть путем обмена адресами, интерфейсами и спецификациями друг с другом, чтобы предоставить пользователям и другим смарт-контрактам информацию, необходимую для правильного использования их функциональных возможностей.