• Ланнистеры всегда платят свои долги! (и технические тоже)
    +2
    Бизнес-логику оригинального таска надо узнать из документа requirements, ссылку на который разработчик разместил в комментариях к коду, нет?
  • Ланнистеры всегда платят свои долги! (и технические тоже)
    +1
    Спасибо. Ценно то, что описание получилось компактным и структурным. Его можно брать за основу при формировании регламента.
  • Колибри для Фантома
    +1
    Айда к нам, в Фантом. Тут есть прорва задач на ядерном уровне.
  • Фантом: большая сборка мусора
    0
    поле «владелец» есть у каждого объекта, да. Может быть, это оверкилл, на самом деле.
  • Фантом: большая сборка мусора
    0
    Процессов на уровне ядра нет, но процесс — это просто суммарный стейт для группы нитей. Можно реализовать на объектном уровне.
  • Фантом: большая сборка мусора
    0
    Да. Это вообще интересная проблема. Хочется в этой связи ввести понятие «периметр» и пытаться управлять попаданием объектов в периметр и трекингом ссылок наружу и внутрь. Собственно, отчасти интерес мой к Фантому вызван желанием дойти до этих проблем и с ними поработать. Умозрительно уже не осиливаю. Кстати, не хотите присоединиться к проекту? Мне нравится ход Ваших мыслей. :)
  • Фантом: большая сборка мусора
    0
    Всё верно. Ну и передавать владение, конечно, можно. И документ, который течёт, вполне возможен. Но повторюсь ещё раз, он возможен и в windows/unix.
  • Фантом: большая сборка мусора
    0
    Это — верное уточнение. Если утечка находится не в документе, она будет освобождена при остановке приложения. Если в документе — никак. Но это не свойство Фантома, это так и сейчас в любом приложении.
  • Фантом: большая сборка мусора
    0
    Ну а что вы сейчас можете сделать с программой, у которой файл с её документом при каждом открытии растёт на мегабайт? В общем-то, ничего.
  • Фантом: большая сборка мусора
    0
    Даже боюсь обещать, что опишу… :)
  • Фантом: большая сборка мусора
    +1
    Квотирование в планах есть. Ну и да, всё верно — счётчики ссылок must die и, конечно, будут заменены на сборку мусора с поколениями. Впрочем, надо отдавать себе отчёт, что большинство модных языков программирования (то есть, кроме Явы и Шарпа почти все) работают на рефкаунтах. И ничего…
  • Фантом: большая сборка мусора
    0
    Раст — очень симпатичный язык, но метод закапывания GC под ковёр выглядит как-то по-детски. Правда. Это вылезет. Правда, тем не менее, я бы переписал ядро фантома на Rust-е, если бы он был так же широко поддержан. Это — очень неплохой ход вперёд для системного программирования. Для прикладного — это шаг назад.
  • Фантом: большая сборка мусора
    0
    Сама по себе ОО модель (во всяком случае, в Фантоме) не так уж рестриктивна. Во всяком случае, функциональное программирование вполне вмещается, и точно будет явно поддержано (кое-где уже поддержано). А где ещё жмёт? Вся объектность сводится к тому, что есть пойнтер на класс и неявно передаваемый this — это само по себе бесит :), или реально как-то мешает?
  • Колибри для Фантома
    0
    fixed, thanx
  • Колибри для Фантома
    0
    спасибо. там 866, конечно. :) Сделаю utf8.
  • Фантом: большая сборка мусора
    +2
    Ну и про виртуальную машину — большинство критиков виртуальной машины смотрят на неё как на среду исполнения. Виртуальная машина — это среда исполнения только для кода, который исполняется один раз. Смотрите на неё как на промежуток между двумя фазами компиляции, и жизнь заиграет новыми красками.
  • Фантом: большая сборка мусора
    0
    Ну и потом — это уже есть, в чём смысл повторять?
  • Фантом: большая сборка мусора
    0
    Зачем ждать? Сделайте rust рантайм для фантома, ничто не мешает иметь две модели.
  • Фантом: большая сборка мусора
    +1
    Виртуальная память глобальна.
  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    –1
    " если уже существует Х и оно доступно" — хороший предикат.

    Оно недоступно.

    Вы зачем-то исходите из предположения, что русские (кроме Вас) — идиоты, и делают что-то исключительно из самоутверждения.

    — мобильной open source OS нет. НЕТ. Нет, android не open source. Там есть очень профессионально оформленная юридическая заковыка, которая делает его опенсорсность бесполезной. Вы про неё не знаете, я понимаю.

    — RT OS open source нет. Хорошей. ARINC-653 совместимой. Сертифицируемой для применения в экспортных гражданских самолётах.

    — Вы, наверное, считаете, что Linux — open source. Это не вполне верно. Ощутимая (а в мобильном мире — очень ощутимая) часть драйверов недоступна в исходных текстах. А если коснуться firmware для загрузки в радиомодуль, то всё совсем плохо. А если радиомодуль вдруг «видит» оперативку или диск, то всё из рук вон плохо.

    — кроме исходных текстов существует понятие технической поддержки. Для ответственных применений техническая поддержка должна осуществляться с территории РФ с правами на продукт, принадлежащими гражданам РФ и с ДОСТАТОЧНОЙ компетенцией на этой же самой территории РФ. Это сильно сложнее, чем «форкнуть». Сильно.

    — кроме саппорта существует совокупность прикладных и системных задач, которые специфичны для нашей страны. Например, применение Linux в госструктурах означает поддержку принятых в нашем государстве механизмов работы с цифровой подписью. Которая у нас широко применяется. При этом существуют государственные, обязательные к применению в госорганах прикладные программы, которые разработаны, увы, давно и под Windows. Но работают с цифровой подписью. И если их запускать в Wine, то нужно пробросить внутрь Wine поддержку цифровой подписи, которая обслуживается аппаратурой с драйверами под Linux. И это вполне себе системная разработка. Которую кто-то должен поддерживать.

    — А ещё есть закупленная для госслужащих техника. Старая. Мало памяти. Древние принтера и сканеры. Для них нужны драйвера. Потому что менять эту технику — реально дорого. И покупать на неё Windows — дорого. И неизвестно, потянет ли она пресловутую десятку. А вот сделать «отжатую» компактную версию Linux — можно. И это экономия наших с вами денег.

    — А ещё есть инструментальная поддержка разработки. А ещё есть поддержка отечественных процессоров, которые, внезапно, существуют. А ещё есть отечественное системное ПО — СУБД те же, которые надо оптимизировать под тот же Эльбрус. А ещё… А ещё… А ещё когда начинаешь слушать выступающих на OS Day, открывается вселенная.

    Просто Вы рассуждаете исходя из обывательских представлений, а разработчики отечественных ОС — из реальных задач. Которые они и решают.

    Приходите на конференцию, узнаете, кто, зачем и как делает в России ОС, процессоры, инструментальное ПО и прочую невидимую нормальным людям высокотехнологичную шнягу. Ох, откуда у меня этот юношеский жаргон, я ж взрослый уже…

  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    –1
    Я не видел в России ни одного программиста, который бы был против применения Российских разработок за рубежом. А Вы?
  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    0
    Программа OS Day 2017 ещё формируется, но Вы можете ориентироваться на тематику докладов прошлых трёх лет:

    http://2016.osday.ru/
    http://2015.osday.ru/
    http://2014.osday.ru/

  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    –2
    Вопросов никто никому не задаёт. Мальчика Линуса Торвальдса мир не упрашивал написать в забытой богом Финляндии Линукс.

  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    0
    Приходите. В России есть не менее пяти проектов ОС, которые не на базе «мировой» ОС.
  • Российские операционные системы: говорим сейчас, ждём на OS DAY
    +1
    Все разговоры про «отечественное» это чистой воды профанация.
    Говорю как человек работавшей в одной крупной гос-конторе


    Стоит ли делать выводы обо всём, исходя из одного.

    На 100% уверен в то, что тут будет тоже самое.

    Тут — это на конференции? :)

    Приходите.

    Эта конференция сделана именно для того, чтобы видеть, кто и что реально сделал.
  • Конференция OS DAY 2016. Своя система — свой процессор
    0
    Да, выложим и презентации, и видео. Операторы обещают, что через неделю видео будет на osday.ru

    И вот все эти вопросы на конференции активно обсуждались. Я только что посчитал — только одних семейств процессоров у нас было представлено восемь штук! И почти в каждом — несколько моделей. Большинство ориентировано на встроенный рынок и конкурировать по цене с мировыми производителями не готовы. Но — Байкал уже заявляет, что продукция по цене будет конкурентоспособна (сигнальную партию ждут к осени), Эльбрус говорит, что в следующем году выйдет на объем более 10 тыс процессоров в одной партии, а это уже позволяет снижать цены.

    Проблем реально очень много, но год за годом они решаются. Думаю, и для бытовухи будут решения.
  • Конференция OS DAY 2016. Своя система — свой процессор
    0
    … караван идёт.
  • Конференция OS DAY 2016. Своя система — свой процессор
    0
    На самом деле — с ОС с открытым кодом есть куча своих проблем. Это огромный шаг по сравнению с закрытыми ОС, но проблему технологического ОТСТАВАНИЯ они не решают. Есть только один способ перестать отставать — начать опережать.
  • Конференция OS DAY 2016. Своя система — свой процессор
    0
    Да всем хороши, но нельзя же всю жизнь сидеть у США на шее, как Вы считаете? Когда-то надо начать взрослеть. Научиться чистить зубы, кушать кашку, растить коровок, строить дома, писать операционки, наконец. Ну не может же вся страна состоять из инфантов, которые умеют только торговать нефтью и скачивать Линукс, а? Или может?
  • Конференция OS DAY 2016. Своя система — свой процессор
    0
    Конечно есть, Михаил. И куда больше, чем можно было бы подумать. В России есть и серийно выпускаются два процессора, которые спроектированы в России же полностью и не имеют даже близких аналогов — это Эльбрус и Мультиклет. Эти процессоры имеют уникальную, созданную у нас архитектуру. Я ещё в прошлом году хотел позвать на OS Day разработчиков Мультиклета — это совсем новое изделие, если Эльбрус корнями восходит к наработка СССР, то Мультиклет придуман совсем недавно. Есть процессоры, которые соответствуют спецификации (системе команд) MIPS, то есть могут использовать компиляторы и библиотеки, но сами ядра процессоров, тем не менее, спроектированы полностью в России — их производится две ветви — 32 и 64 битные. Есть несколько процессоров, которые выпускаются по лицензии — как правило, закупается лицензия только на ядро процессора, а наши разработчики делают обвязку — то, что называется System On a Chip — SoC. У нас будет доклад на эту тему.

    Аналогично и с ОС — спектр довольно приличный. И, как уже тут было подмечено, кроме клонов Линукса есть собственные RT OS, которые вполне серийно применяются.

    А в общем, именно для ответов на эти вопросы и существует наша конференция. Зря не пришли — докладчики просто фантастические. Сегодня с частью из них пообщались за ужином, так что половину завтрашних докладов я уже знаю. :)

    Не всё лаптем, Михаил. Не всё. Работают люди. :)

  • Драйверы умного или виртуального железа
    0
    Так и делают. Переносимые ОС делятся на три слоя: (условно) аппаратно независимый, архитектурно зависимый, и специфичный для определённой конфигурации железа.
  • Драйверы умного или виртуального железа
    0
    Непонятно, зачем для этого новое понятие. Открыть прерывания в драйвере можно и так. Или выставить новый level — многие юниксовые драйвера так и делали, открывая прерывания для своего и более высоких уровней приоритета.
  • Ассемблер для задач симуляции. Часть 2: ядро симуляции
    +1
    Чёрт, и спасибо никто не сказал за такую фантастическую статью.
    Спасибо! :)
  • UDP/TCP File System, Trivial Remote File System
    0
    Почитал ещё раз спеку 9P. Навскидку не увидел в описании протокола обработки ситуации, когда сервер упал и рестартовал. File id недостаточно — после рестарта идентичный id может выделиться новому файлу, и клиент, который всё ещё его помнит, может обратиться не туда. Это можно закрыть через явное использование TCP, но это уже требование более высокого уровня (TRFS базируется на UDP) и нагружает протокол дополнительным слоем преобразования данных (эффективность).
  • UDP/TCP File System, Trivial Remote File System
    0
    ? Это детали. Очевидно, что втыкать в Юникс новую структуру именования файлов — некоторый избыточный авангард.

    mount -t tcpfs /tcp
  • UDP/TCP File System, Trivial Remote File System
    0
    Что логично.
  • UDP/TCP File System, Trivial Remote File System
    0
    Это вопрос технический. Конечно, ядро Линукса уже распухло до неприличия и сервисы из него надо выносить мешками.
  • UDP/TCP File System, Trivial Remote File System
    +2
    Вы знаете, мне удивительно, что это надо объяснять, но Юникс — это не шелл.

    Мне совершенно непонятно, почему я не могу сделать file/open в произвольной программе и набрать в качестве имени файла ftp://… или http://, потому что задача ОС — виртуализировать реальность и представлять её программам в униформном виде. И когда мне всерьёз говорят — не надо унификации в ядре, лучше мы поддержим сто разных протоколов в тысяче разных программ ручками, я слегка офигеваю.

    Зачем?? Ну вот тупо — зачем нужно иметь socket/connect, если всё то же самое можно сделать через open? Я ещё понимаю (и то умеренно) зачем listen/accept — на реально большом потоке входящих парсить строку имени файла дорого (да и так ли дорого, надо посмотреть ещё). Но есть масса тривиальных программ, которые нуждаются в элементарной работе с сетью на уровне палки и верёвки.

    Мало того, реализация этого в ядре — 20 строк кода на всё. Ну тупо позвать из open socket и connect, всё. Люди получили бесплатную единообразность.
  • UDP/TCP File System, Trivial Remote File System
    0
    Тут хорошо бы не смешивать интерфейс ОС, которым является не шелл, а слой системных вызовов, и реализацию ОС. Которая склоняет к тому, чтобы всё пихать в ядро.

    Сам по себе POSIX устарел жутко — нормальным современным интерфейсом для прикладной программы, конечно, давно служит Java class lib (ну или менее богатые, но всё равно объектные интерфейсы иных ЯП), но там, где POSIX вполне применим — для доступа к байт стримам — не применять его странно. В этом смысле для работы с БД он подходит фигово, хотя, с другой стороны, выдать таблицу как входной поток для awk — почему нет.

    tcp же реально активно применяется в скриптинге. актуально.

  • UDP/TCP File System, Trivial Remote File System
    0
    логично, постараюсь не забывать