The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Третий выпуск операционной системы Redox OS, написанной на языке Rust

26.07.2017 08:28

Доступен выпуск операционной системы Redox 0.3, разработанной с использованием языка Rust и концепции микроядра. Наработки проекта распространяются под свободной лицензией MIT. После сборки систему можно опробовать при помощи VirtualBox или QEMU.

Пользовательское окружение в Redox построено на базе графической оболочки Orbital. Операционная система использует концепцию микроядра, при котором на уровне ядра обеспечивается только взаимодействие между процессами и управление ресурсами, а вся остальная функциональность вынесена в библиотеки, которые могут использоваться как ядром, так и пользовательскими приложениями. Все драйверы выполняются в пространстве пользователя в изолированных sandbox-окружениях. Для совместимости с существующими приложениями предоставляется специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.

Redox развивается в соответствии с философией Unix c заимствованием некоторых идей из SeL4, Minix и Plan 9. В системе применяется принцип "все есть URL". Например, для записи в лог может использоваться URL "log://", для взаимодействия между процессами "bus://", для сетевого взаимодействия "tcp://" и т.п. Модули, которые могут быть реализованы в форме драйверов, расширений ядра и пользовательских приложений, могут регистрировать свои обработчики URL, например, можно написать модуль обращения к портам ввода/вывода и привязать его к URL "port_io://", после чего можно использовать его для доступа к 60 порту через открытие URL "port_io://60".

Проектом также развивается собственный пакетный менеджер, набор стандартных утилит (binutils, coreutils, netutils, extrautils), командная оболочка ion, vim-подобный текстовый редактор sodium и файловая система TFS, развиваемая на основе идей ZFS (модульный вариант ZFS на языке Rust). Конфигурация задаётся на языке Toml. Система поддерживает запуск на процессорах с архитектурой x86_64 c VBE-совместимой графической картой (nvidia, intel, amd), AHCI-дисками и сетевыми картами на базе чипов E1000 или RTL8168.

Из новшеств, добавленных в выпуске Redox 0.3, можно отметить:

  • Сборочная система переведена на cookbook, коллекцию shell-скриптов с инструкциями по сборке различных компонентов Redox и патчами для обеспечения совместимости. Основным преимуществом новой системы является использования одного набора типовых рецептов (скриптов) для сборки как отдельных пакетов, так и установочных образов. Каждый файл в предлагаемом по умолчанию установочном наборе теперь устанавливается как пакет и управляется пакетным менеджером. В настоящее время пользователям предлагается около 40 пакетов;
  • Вместо скрипта-обвязки вокруг GCC теперь применяется полноценный кросс-компилятор, что позволяет значительно поднять уровень поддержки программ на языке Си и обеспечить возможность самосборки системы (Self-hosting, сборка redox из кружения redox). В настоящее время для Redox уже портированы binutils, newlib, gcc, nasm, llvm и rustc, ведётся портирование git. По мере портирования стороннего ПО параллельно всплывают и исправляются многочисленные проблемы с совместимостью с POSIX и добавляется неодостающая функциональность;
  • Продолжено усовершенствование ядра системы: добавлен новый стек ACPI, включающий парсер AML. Поддержка ACPI позволила наладить обработку сигнала завершения работы, спящий режим и поддержку HPET (High Precision Event Timer);
  • В командную оболочку ion внесено 139 изменений, добавлена поддержка новых возможностей и элементов синтаксиса, например, появилась возможность использования арифметических выражений в блоках let/export, переработана реализация циклов while, добавлены операторы "&&" и "||", реализованы псевдонимы (alias);
  • Добавлена поддержка драйверов для гостевых систем VirtualBox;
  • Добавлен драйвер для ethernet-адаптеров Atheros ALX;
  • Продолжена работа над файловой системой TFS, в которую перенесена очередная порция возможностей ZFS;
  • Внесены многочисленные улучшения в реализации утилит на языке Rust, в том числе добавлены недостающие опции в утилиты mv, dd, ls, ln, tail, wc, sort. Добавлены команды shutdown и unique.


  1. Главная ссылка к новости (https://github.com/redox-os/re...)
  2. OpenNews: Доступна операционная система Redox 0.2, написанная на языке Rust
  3. OpenNews: Представлена операционная система Redox, написанная на языке Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/46919-redox
Ключевые слова: redox, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (59) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, 123 (??), 10:24, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –22 +/
    Эффект плэнайн  - идеи хорошие, но не работает. MacOs единственная микроядерная десктопная ось пока.
     
     
  • 2.4, Аноним (-), 10:34, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +12 +/
    Она не микроядерная.
     
  • 2.9, asdsdsa (?), 11:03, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Она гибридная, как и Nt в Windows.
     
     
  • 3.57, Фёдор (?), 15:53, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Она микроядерная, зайдите на сайт,хотя бы.
     

  • 1.3, Аноним (-), 10:32, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Я так и не пойму, эта система Posix совместима или нет?
     
     
  • 2.5, Аноним (-), 10:35, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +24 +/
    >  Для совместимости с существующими приложениями предоставляется специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.

    Скорее бы сентябрь, хоть читать научишься.

     

  • 1.6, Аноним (-), 10:38, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Т.е. можно без этой прослойки получается писать какой-то нативный софт?
     
  • 1.10, Аноним (-), 11:05, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    > специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.

    Фтoпкy не-POSIX. Ещё один велосипед с квадратными колёсами.

     
     
  • 2.15, Аноним (-), 13:06, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Так POSIX это сишные хеадер файлы и контракты т.е. сишное api. Как бы си там не first-class citizen, потому и прослойка.
     
     
  • 3.24, angra (ok), 15:36, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Спецификация на стандартную сишную либу это лишь малая часть POSIX. А все остальное спокойно можно использовать из других ЯП, в том числе и тех, что собираются своим собственным компилятором и не включают libc как в себя, так и в компилированные программы.
     
     
  • 4.25, Аноним (-), 16:42, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Как я знаю POSIX служит для переносимости программ на уровне исходных кодов на языке СИ между операционными системами.

    > А все остальное спокойно можно использовать из других ЯП

    Все остальное, что именно?

     
     
  • 5.38, angra (ok), 23:31, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В первую очередь это набор системных вызовов и соответствующих механизмов в ядре ОС. И эти сисколы можно использовать даже из короткой ассемблерной программы без всякого С. Когда говорят про наличие слоя POSIX совместимости в ядре ОС, то речь идет об этой его части. Потом уже накладывается набор функций, макросов, констант и структур  в основной С либе, что и позволяет портировать С программы на уровне исходного кода. А завершается спецификация вообще CLI утилитами.
     
     
  • 6.62, Аноним (-), 01:30, 28/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чем "набор функций си" отличается от этих ваших системных вызовов? Посикс не определяет номера сисколов, соглашения о вызовах и прочее зависящее от архитектуры и реализации. Посикс определяет программный интерфейс в виде набора сишных функций, часть из которых *вы* относите к системным вызовам, а часть нет, не более.
     
  • 2.23, Аноним (-), 15:14, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не быть же вечно со старыми костылями. Нужны и новые.
     
  • 2.32, Kodir (ok), 17:36, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Фтoпкy не-POSIX. Ещё один велосипед с квадратными колёсами.

    Я б сказал ровно наоборот: POSIX себя исчерпал, нужно двигаться к современным реалиям.
    Это не означает, что "весь посикс - фуфло", но это означает, что не нужно догматично молиться на стандарты прошлого века - живём-то мы уже в новом!

    Например, учитывая "легкодоступность" нескольких ядер, имеет смысл развить идею многонитевости - лёгкие трэды, тяжёлые, семафоры всякие, IPC... Я знаю, что часть этого есть, но нет единого стандарта (на венде же тоже есть целый пласт API для трэдов!). А уж маразм типа fork() вообще уже смешно упоминать!

     
     
  • 3.34, Аноним (-), 18:34, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    BarrelfishOS уже есть.
     
     
  • 4.37, ano (??), 22:51, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ты хотел сказать был.
    потом оно стало arrakis - а потом и он сдох.
     

  • 1.11, Аноним (-), 11:33, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Годнота. Надеюсь, что взлетит.
     
  • 1.12, Аноним (-), 12:19, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Init FPU
    Init SSE
    Init PIT
    Startup Arch

    И висит.

     
     
  • 2.30, Kodir (ok), 17:32, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да чему там "висеть"-то?!  ане(к) :))
     

  • 1.13, Аноним (-), 12:26, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А как вообще искать все эти необычные концепции? Ну, все есть URL я помню было в php, там можно было вроде file_get_contents("udp://127.0.0.1/vasya"); А вот эти всякие там другие еще... ну вот кто-то пытался отказаться от концепции файла, например?
     
     
  • 2.14, Аноним (-), 12:48, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ох сколько сайтов поломано из-за этой возможности использовать url'ы в fopen и file_get_contents...

    Нет уж, лучше пусть будет явный способ работы с локальными файлами и отдельно - с сетью.

     
     
  • 3.19, Crazy Alex (ok), 13:56, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вообще-то, если по уму, надо другого рода абстракции добавлять - "домены доверия"  какие-нибудь. И наверняка это сто лет, как сделано где-то. Между файлом, скачанным невесть откуда, и сетью - разница, в сущности, минимальна. Как и между заведомо хорошим файлом и заведемо надёжным урлом.
     
     
  • 4.20, Аноним (-), 13:58, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Да-да, разница минимальна. Особенно, если сеть дорогая.
     
  • 4.39, angra (ok), 23:50, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Между файлом, скачанным невесть откуда, и сетью - разница, в сущности, минимальна.

    А если не качать файл невесть откуда? Речь то шла про открытие файлов, которые уже есть. Для атаки через локальный файл надо сначала этот файл как-то создать, то бишь провести предварительно отдельную атаку.

    > Как и между заведомо хорошим файлом и заведемо надёжным урлом.

    Угу, разве что для титеретиков. Практики понимают, что MITM в случае сети организовать несколько проще.

     

  • 1.16, лютый жабист__ (?), 13:38, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Как со скоростью? Всё так же рвёт линуск как и раньше?
     
     
  • 2.18, Аноним (-), 13:43, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >Will Redox replace Linux?
    >No.

    https://doc.redox-os.org/book/introduction/will_redox_replace_linux.html#Will Redox replace Linux?

     
     
  • 3.31, лютый жабист__ (?), 17:35, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Линукс много у кого из контейнера не вылазит, так что поддержка реального железа и не нужна (по ссылке не ходил)
     
     
  • 4.40, angra (ok), 23:51, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > (по ссылке не ходил)

    Сходи, там надо осилить всего две буквы.


     
     
  • 5.55, лютый жабист__ (?), 14:29, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/

    > Сходи, там надо осилить всего две буквы.

    Ну неосилятор как раз ты. Там между строчек и написано что редокс не заменит линух тк поддержки реального железа нет и не будет. Это не означает что через 10 лет в вирт окружении не будет 95% редокса


     
  • 2.26, Анонимммо (?), 17:12, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Как со скоростью? Всё так же рвёт линуск как и раньше?

    Вы там как, уже квалифицировались до осиления grepа на уровне "не тратить час работы и все гигабайзы памяти сервака на то, что можно сделать таким же грепом на ноуте за десяток секунд и пол-гигза памяти"? =)

    А так да, жабку рвет как тузик грелку ))
    http://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=rust&lang2=java


     
     
  • 3.35, лютый жабист__ (?), 19:36, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >квалифицировались до осиления grepа на уровне

    Не тормози, если grep с некоторыми ключами умирает на сервере с 98ГБ ОЗУ, виноваты не "неправильные ключи", а консерватория...

     
     
  • 4.43, anonymous (??), 00:31, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Во-во.
    Гвозди же не могут быть неправильными. Это микроскоп виноват!
     
  • 3.47, Аноним (-), 02:28, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Что такое gz в одноименном столбце?
     
     
  • 4.52, Аноним (-), 14:20, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Что такое gz в одноименном столбце?

    Там ссылочка сразу внизу:
    http://benchmarksgame.alioth.debian.org/how-programs-are-measured.html
    > How source code size is measured
    > We start with the source-code markup you can see, remove comments, remove duplicate
    > whitespace characters, and then apply minimum GZip compression. The measurement is the
    > size in bytes of that GZip compressed source-code file.

     
  • 3.50, Аноним (-), 11:49, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А так да, жабку рвет как тузик грелку ))

    И то не везде:
    k-nucleotide
    source | secs
    Rust | 16.80 | 7.16s to complete and log all make actions
    Java | 7.93 | 1.14s to complete and log all make actions
    C gcc | 5.38 | 0.41s to complete and log all make actions
    C++ g++ | 7.18 | 3.40s to complete and log all make actions

    В этом тесте у Rust-а полный провал -- работает в 2+ раза медленнее жабы, компилируется в 2+ раза дольше плюсов (для C они сразу бинарник собирали, для C++ разделили компиляцию и линковку, так что провал мог быть ещё чуть более эпичным).

     
     
  • 4.53, лютый жабист__ (?), 14:23, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Прога на жабе которая завершается за 1.4 сек? Бугага, там jvm секунду стартовала. Давайте задачу где надо 50гб данных в озу перелопатить, посмотрим где будут ваши си и раст
     
     
  • 5.56, Анонимммо (?), 14:31, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Прога на жабе которая завершается за 1.4 сек? Бугага, там jvm секунду
    > стартовала. Давайте задачу где надо 50гб данных в озу перелопатить, посмотрим
    > где будут ваши си и раст

    Ну возьми и придумай, что-ли. Только смотри, чтобы как тогда с грепом не вышло :)

     
     
  • 6.63, лютый жабист__ (?), 02:44, 29/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ну возьми и придумай, что-ли. Только смотри, чтобы как тогда с грепом не вышло :)

    придумывать ничего не надо, у меня работа в этом заключается, чтобы писать на жабе прожки, которые сишники не осилили. это вы смотрите, в прошлый раз сишный греп сфэйлил где жаба не сфэйлила. Чем дальше (и больше ОЗУ в серверах), тем ненужнее эти ваши бинутилз из 1955-го года.

     
     
  • 7.64, Аноним (-), 05:23, 29/07/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > это вы смотрите, в прошлый раз сишный греп сфэйлил где жаба не сфэйлила.

    Это там, где отметились все кому не лень, с авк, перолом, питоном и разными вариантами грепа? Но только у жабистов оно вместо пары десятков секунд и от силы полутра гигабайт рамы, выполнялось час и сожрало все достпуные 96ГБ ОЗУ? Ну да, это не фейл )
    Вспоминается классика
    https://aadrake.com/command-line-tools-can-be-235x-faster-than-your-hadoop-clu
    > This find | xargs mawk | mawk pipeline gets us down to a runtime of about 12 seconds, or about 270MB/sec, which is around 235 times faster than the Hadoop implementation.

     
  • 4.54, Анонимммо (?), 14:27, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > В этом тесте у Rust-а полный провал -- работает в 2+ раза

    Не провал, а недоработка, тем более первой строкой в жабке идет
    it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap
    генерированные с помощью подпорок и сишного препроцессора - а так да, доминирование жабы почти на лицо )

     

  • 1.17, лютый жабист__ (?), 13:43, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    С точки зрения прогера, насколько знаю, мегауниверсальные решения это путь вфтоппку. А жалко, ос на безопасном языке - это интересно
     
     
  • 2.21, Аноним (-), 14:21, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Да он только на бумаге безопасней. Ну да выстрелить в ногу сложней, чем в плюсах, но это только лишь увеличивает шансы, что программист не будет задумываться об этом -> будут проблемы
     
     
  • 3.22, Аноним (-), 14:21, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Да он только на бумаге безопасней. Ну да выстрелить в ногу сложней,
    > чем в плюсах, но это только лишь увеличивает шансы, что программист
    > не будет задумываться об этом -> будут проблемы

    не говоря уже о том, что дедлок он и в африке дедлок

     
     
  • 4.27, Анонимммо (?), 17:14, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    >> только лишь увеличивает шансы, что программист
    >> не будет задумываться об этом -> будут проблемы
    > не говоря уже о том, что дедлок он и в африке дедлок

    А аноним, ни#рена не знающий, но мнение имеющий - он и в африке аноним, так ведь?


     
     
  • 5.58, Аноним (-), 19:06, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Про deadlock нечего возразить?
     
     
  • 6.61, Анонимммо (?), 00:40, 28/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Про deadlock нечего возразить?

    Зачем возражать, если уже первая часть
    >> увеличивает шансы, что программист
    >> не будет задумываться об этом -> будут проблемы

    бред полнейший?
    Компилятор будет бить по рукам и отказываться собирать код, а погроммист, такой-сякой, даже задумываться об этом не будет!
    Сразу видно человека в теме.

    Потом еще дедлоки приплел. Еще бы вспомнил, что от фейлов ФС там тоже страховки нет, да и вообще, имея код и типы входных данных, ржавчина не осилит определить, завершиться программа вообще или зависнет в бесконечности!

     
  • 2.36, Аноним (-), 20:32, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    очень интересное экспертное мнение
     
  • 2.46, Led (ok), 02:18, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > С точки зрения прогера

    Кого именно? Или ты так тонко пошутил, имея ввиду себя?

    > мегауниверсальные решения это путь вфтоппку.

    Да, как точно про жабу подмечено...

     

  • 1.29, Kodir (ok), 17:30, 26/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > В системе применяется принцип "все есть URL".

    Бедолаги - застряли в 20 веке! Неужели непонятно, что "плоская" подель уже давно себя исчерпала? Да и примитивна она, чо уж там!

    Систему надо строить на концепции модулей, доступных через СИСТЕМНУЮ ИЕРАРХИЮ.
    Загружаешь, например, драйвер звуканов, у тебя в системе появляется иерархия:
    /sound/play /sound/record и т.п. Это если упрощённо. Такая система позволяет вообще не париться по поводу типов устройств (как у них log:// ) или чём-то ещё. Просто корень и из него растёт API для всей системы.

     
     
  • 2.33, Аноним (-), 18:13, 26/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Странная попытка подражать новой коре?
     
  • 2.44, anonymous (??), 00:46, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Систему надо строить на концепции модулей, доступных через СИСТЕМНУЮ ИЕРАРХИЮ.

    Иерархию чего?
    Это болезнь какая-то, что мысли обрываются?

     
     
  • 3.45, Аноним (-), 01:51, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Да
     
  • 2.48, Психиатор (?), 09:42, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Flat is better than nested.
     

  • 1.49, via (??), 11:18, 27/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    At this time, Redox supports:

        All x86_64 CPUs.
        Graphics cards with VBE support (all nvidia, intel, and amd cards from the past decade have this).
        AHCI disks.
        E1000 or RTL8168 network cards.
        Mouse and keyboard with PS/2 emulation.


    Первая в мире операционная система чисто для QEMU x86. Это событие!

     
     
  • 2.59, Аноним (-), 19:09, 27/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Первая в мире операционная система чисто для QEMU x86. Это событие!

    Первая на rust, это действительно событие, а для qemu не первая.

     

  • 1.51, Vix (?), 13:04, 27/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    url:// - утопия.. с предрекаемым концом.
    это на API- а телеграмм но стряпанная концепция. При любой атаке практически не дающая шанса закрыться. PHP подобие...
     
  • 1.60, НяшМяш (ok), 00:34, 28/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати, вот вам пример в продолжение темы "рефакторить или переписать". Чувак в одно рыло и полтора куска коммитов запилил операционку на безопасном, а не пытался отрефакторить очередное системдэ в очередном линуксе.
     
  • 1.66, Ilya Indigo (ok), 20:22, 29/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Даёте обезжиренные аналоги Qt и KDE на Rust!?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру