Системное программирование

  • ХабрахабрФото [Перевод] Rust 1.68.0: разреженный протокол cargo, локальный pin, обработчик ошибок аллокации

    [Перевод] Rust 1.68.0: разреженный протокол cargo, локальный pin, обработчик ошибок аллокации

    Команда Rust рада сообщить о новой версии языка — 1. 68. 0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1. 68. 0 вам достаточно выполнить команду: rustup update stable Если у вас ещё не установлен rustup, вы можете установить…

    Читать далее »
  • ХабрахабрФото KVM: Что такое Kernel-based Virtual Machine?

    KVM: Что такое Kernel-based Virtual Machine?

    KVM с точки зрения QEMU Начнем с простого вопроса: Что означает QEMU/KVM или QEMU-KVM? Можно ответить - это QEMU + KVM или qemu-system, запущенный с kvm в качестве ускорителя. Но в какой-то степени это еще и анахронизм, так как с появлением KVM его разработчики для интеграции с QEMU поддерживали отдельный форк qemu-kvm, но начиная с QEMU версии 1. 3 (декабрь…

    Читать далее »
  • ХабрахабрФото Один день из жизни JVM-инженера

    Один день из жизни JVM-инженера

    Можно разрабатывать на Java, а можно разрабатывать Java. Есть люди, чей код исполняет виртуальная машина — а есть люди, чей код и есть виртуальная машина. Вроде бы те и другие существуют в одной Java-экосистеме, но задачи совершенно разные. Поэтому редкое место, где они пересекаются и могут что-то поведать друг другу — Java-конференции. Мы проводим их регулярно (уже в апреле будет…

    Читать далее »
  • ХабрахабрФото Взаимодействие между процессами на С++ и PHP. Сокеты, семафоры и разделяемая память

    Взаимодействие между процессами на С++ и PHP. Сокеты, семафоры и разделяемая память

    Доброго всем дня! Хочу рассказать о своём практическом опыте реализации взаимодействия между процессами в среде Linux и попытках сделать обмен максимально возможно эффективным. Сравним разные виды сокетов, задействуем примитивы синхронизации между процессами и мельком глянем, что ещё нам предлагает операционная система. По условию, один из процессов написан на C++, второй на PHP, потому дополнительно мы рассмотрим доступность соответствующих API из…

    Читать далее »
  • ХабрахабрФото Сеть виновата

    Сеть виновата

    Привет. Я Марат Сибгатулин — сетевик в Яндексе, ведущий подкаста linkmeup, автор серии книг «Сети для самых маленьких» и спикер курса Слёрм Сети для DevOps, который мы сделали совместно с linkmeup. Сегодняшний рассказ будет про несколько органических проблем современных сетевых технологий. В жизни любого инженера бывают периоды как долгой кропотливой проработки архитектуры, так и долгих кропотливых расследований инцидентов или проблем.…

    Читать далее »
  • ХабрахабрФото [Перевод] Концепции Rust, которые неплохо бы знать пораньше

    [Перевод] Концепции Rust, которые неплохо бы знать пораньше

    Весь минувший месяц я глаз не мог оторвать от языка программирования Rust, ведь его конёк – создание современных программ, обеспечивающих безопасную работу с памятью. За прошедшие годы появилось несколько языков, которые позиционировались как «инструмент что надо» для написания надёжного бекенд-софта. Постепенно маятник качнулся от Java/C++ к Go и Rust, выстроенных на многолетних разработках по теории языков программирования. Суть – в…

    Читать далее »
  • СофтФото Ультра-маленькие демки под DOS

    Ультра-маленькие демки под DOS

    В статье вы узнаете как сделать маленькие программы для MS-DOS на ассемблере, я покажу как рисовать 2D графику напрямую в видео-буфер. Может быть, вы даже вдохновитесь на создание собственного демо, которое будет ставить рекорды по размерам исполняемого файла. INIT Демосцена удивляет не только эффектными программами выжимающими максимум из маломощных платформ, но и ультра-маленькими исполняемыми файлами. На сайте Pouet.net можно найти…

    Читать далее »
  • ХабрахабрФото [Перевод] Rust 1.67.0: #[must_use] для Future, смена реализации mpsc

    [Перевод] Rust 1.67.0: #[must_use] для Future, смена реализации mpsc

    Команда Rust рада сообщить о новой версии языка — 1. 67. 0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1. 67. 0 вам достаточно выполнить команду: rustup update stable Если у вас ещё не установлен rustup, вы можете установить…

    Читать далее »
  • ХабрахабрФото Boson — разработка СУБД «с нуля» (часть II)

    Boson — разработка СУБД «с нуля» (часть II)

    1. Введение В первой части статьи мы обсуждали разработку самого нижнего слоя СУБД Boson - CachedFileIO. Как упоминалось, статистика такого явления как Locality of Reference говорит о том, что в реальных приложениях ~95% запросов к данным локализованы в 10-15% базы данных. При этом среднее соотношение чтения/записи - 70%/30%. Это делает эффективным использование кэша (cache) работающего на основе алгоритма Least Recently…

    Читать далее »
  • СофтФото Величайшие программисты XXI века. Марк Руссинович и его 65 системных утилит

    Величайшие программисты XXI века. Марк Руссинович и его 65 системных утилит

    Кто из админов не знает утилиты SysInternals (Winternals) для администрирования и диагностики Windows? Кажется, они известны с незапамятных времён. Но не каждый в курсе, что эти незаменимые инструменты написаны вовсе не компанией Microsoft. Скорее наоборот, они написаны вопреки её желанию. И здесь мы подходим к личности автора, талантливого и суперпродуктивного программиста Марка Руссиновича. Он показал, что один умный парень способен…

    Читать далее »


Кнопка «Наверх»