М

Оглавление:
Наверняка многие из вас слышали о Midori, которая станет следующим шагом для Windows. Новая операционная система, написанная с нуля, с новым ядром и написанная на современном языке. Настолько современный, что даже не существует как таковой.
Язык под кодовым названием M основан на C и специально разработан для программирования операционных систем, способных достигать самого низкого уровня но без потери полезных абстракций, необходимых для создания более распространенных программ, таких как пользовательское приложение.
В статье в своем блоге Джо Даффи, один из разработчиков Midori, поделился очень интересными подробностями об этом будущем языке. Основная идея проекта — создать язык с type-safe (type-safety) наподобие C, но c с очень хорошей производительностью , например C++.
Большая часть усилий по повышению производительности уходит на настройку двух областей C: сборщик мусора и система типизации Кратко , C сборщик мусора для программы каждый X раз ищет объекты, которые больше не используются (например, ваш браузер сохранил несколько изображений в оперативной памяти, но они больше не нужны) и освобождает их память. Для разработчиков это система, которая освобождает от многих сложностей, когда дело доходит до управления памятью, но, как вы можете себе представить, она медленнее. M был бы умнее в этом отношении, позаимствовав несколько идей из C++, чтобы лучше понять жизненный цикл объектов (когда они начинают использоваться и когда они больше не нужны) и, таким образом, быть более эффективным, когда дело доходит до выделения и освобождения памяти. , без участия сборщика мусора.
С другой стороны, изменения в системе типизации направлены на решение одной из проблем, которые в настоящее время имеют большинство старых языков (читай: разработанных до 2005 г.), parallelism В настоящее время компьютеры растут не в высоту (скорость процессора), а в ширину, за счет увеличения числа параллельных ядер. Создание программ, эффективно использующих такую параллельную обработку, непростая задача, и здесь есть много тонкостей, особенно при совместном использовании данных между несколькими процессами или потоками."
M принесет концепции из функциональных языков программирования, в основном неизменяемость объектов и обработку побочных эффектов методов, что облегчит программистам и компилятору создание нескольких потоков для воспользуйтесь преимуществами многоядерности компьютеров и, таким образом, значительно улучшите производительность.
Кроме того, M также принесет новую систему обработки ошибок: быструю, простую в использовании, эффективную, использующую контракты кода для ограничения поведения программы допустимыми путями, и простую для понимания, чтобы компилятор может выполнять оптимизацию.Таким образом, мы будем говорить о языке, который облегчает создание более безопасных и надежных программ, что очень важно, если мы хотим использовать его для операционной системы.
Хватит говорить на техническом жаргоне: что это значит?
Погрузившись немного в мир языков программирования, что все это значит?
Во-первых, похоже, что Microsoft очень серьезно относится к следующему этапу Windows. Мэри Джо Фоули говорит, что Midori из исследовательского проекта перешла под крыло Терри Майерсона из группы Unified Operating System. M и Midori — это не просто эксперимент, а путь вперед для Microsoft.
Есть ли смысл готовить другую винду? Конечно. Как и любая другая программа, операционная система имеет ограниченный срок службы. Сейчас мир сильно отличается от того времени, когда была разработана Windows, и какой бы гибкой ни была система, столько изменений за годы, направленных на ее адаптацию к новым сценариям, в конечном итоге берут свое, и начинать с нуля становится выгоднее ( что-то, что нам, компьютерщикам, очень нравится).
Конечно, Мидори не будет в краткосрочной или среднесрочной перспективе. Но когда это будет завершено (если это когда-либо будет сделано, что тоже не точно), это будет система, которая, будучи параллельной и ориентированной на облако с самого начала, поставит Microsoft на голову в мире. операционных систем, по крайней мере, на техническом уровне и уровне производительности.
Что касается M, если бы, как было обещано, это было расширение C без неподдерживаемых изменений, многие разработчики могли бы легко перейти на него. И если они выпустят его полностью из коробки, что они также обещали, они, возможно, смогут вырваться из «петли Microsoft», в которой сейчас застрял C, расширить его и, таким образом, получить огромное преимущество перед другие языки и компании.
На данный момент кажется, что у языка есть какое-то будущее, и мы должны узнать больше подробностей в ближайшие недели.Что касается Мидори, давайте помнить, что он даже не является официальным, нам все еще потребуется много времени, чтобы узнать о нем больше, но такая история говорит нам, куда движется Microsoft.