habrahabr
Пишем свой загрузчик операционной системы Linux

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

  • пятница, 7 марта 2025 г. в 00:00:19
habrahabr
Пришествие Интернета в Россию. Часть 1: как выкачать в Беркли код Unix под носом у АНБ, используя С…

В 2020-е годы значительная часть каждодневной жизни большинства жителей России проходит во Всемирной сети. Даже современные олды-миллениалы не без труда освоились бы в своём же прошлом, где это было совсем не так — хотя, по историческим меркам, это было совсем недавно. Впервые контакт советских и зарубежных компьютерных сетей по протоколу Х.25 произошёл 16 декабря 1983 года, он имел большие ограничения, но сыграл в дальнейшем большую роль. Первое полноценное интернет-подключение из СССР зарабо…

  • пятница, 7 марта 2025 г. в 00:00:17
habrahabr
Почему так сложно выяснить, как выглядел тираннозавр

С детства обожаю динозавров. Домашняя коллекция энциклопедий по ним начала пополняться, когда мне было лет пять, не больше. Чуть позже к книгам добавились научно-популярные и художественные фильмы, а затем и игры. И вот что я имею сказать: мы до сих пор точно не знаем, как выглядел тираннозавр рекс. По поводу внешности некоторых других динозавров ученые плюс-минус сходятся во мнении, но именно с тирексом что-то не клеится. В этой статье я предлагаю взглянуть на то, как менялись представления о…

  • пятница, 7 марта 2025 г. в 00:00:16
habrahabr
Резинка, постепенно ломающая старые жёсткие диски

В рамках моей работы над будущим постом об утерянном и наконец-то найденном фрагменте истории Mac я экспериментировал со старыми жёсткими дисками SCSI под брендом Apple, выпускавшимися Quantum и Conner в 1990-х. В этой статье я расскажу о хорошо известном в мире винтажных компьютеров факте, который, думаю, будет интересен читателям. Дело в том, что многие из этих жёстких дисков уже отказываются работать. Это очень распространённая проблема у старых моделей Quantum ProDrive, например, LPS и EL…

  • пятница, 7 марта 2025 г. в 00:00:16
golang
Выходим за рамки: создание оператора для наблюдения за внешними ресурсами в Kubernetes

Привет! Я Александр Зверев, инженер архитектурных решений в компании «Флант». Сегодня поговорим про всеми любимый Kubernetes. Этот оркестратор стал таким популярным не только потому что он эффективно управляет контейнерами. Ещё его можно прокачать под себя. И для этого у него есть все необходимые инструменты. Новые возможности можно добавить с помощью контроллеров, операторов и создания новых типов ресурсов.При этом уже есть проекты, которые пошли дальше и научились управлять ресурсами за преде…

  • пятница, 7 марта 2025 г. в 00:00:14
golang
Syscall и cgo в Go

Привет, Хабр!Сегодня рассмотрим работу с системными утилитами в Go. Будем напрямую общаться с ядром, дергать системные вызовы и писать код на C, чтобы Go не чувствовал себя одиноким.Go славится своей безопасностью и простотой, но иногда нужно спуститься к системным вызовам, чтобы работать с процессами, файловыми дескрипторами и сетевыми сокетами на низком уровне.Сделаем это через два инструмента:syscall и golang.org/x/sys/unix — вызовы системных API, которые делают всякие вещи вроде fork(), exe…

  • пятница, 7 марта 2025 г. в 00:00:12
golang
Туториал: вход в мобильном приложении с Telegram

Аутентификация в мобильных приложениях с помощью Telegram Login Widget обделена информацией как официальной документации, так и в интернете. Меня зовут Александр, в этой статье поделюсь примером реализации входа в iOS приложение c помощью Telegram с блекджеком и граблями. В статье приведены сниппеты кода на Typescript + React, Go и Swift.Содержание:Telegram Login Widget API.Telegram Login Widget Internals.Кастомизируем некастомизируемое.Особенности на бекендеИнтеграция в нативное приложениеНам …

  • пятница, 7 марта 2025 г. в 00:00:09
golang
What's in the box!? Исследуем минимальное количество тредов golang-программы

Именно с такой мыслью и именно с интонацией Брэда Питта я ушел спать вчера (сегодня) в 3:40 утра. После того, как в 23:10 "споткнулся" об утверждение Коли Тузова, о том, что рантайм голенга создает треды заранее. Не верилось, настолько что я пошел перечитывать сорцы рантайма снова, тем более я туда с 1.17 не заглядывал.Кстати, если еще не смотрели видос Коли про планировщик - посмотрите. Но только после того как дочитаете эту статью🤭Коля в видосе запускал тестовую программу с дефолтным …

  • пятница, 7 марта 2025 г. в 00:00:08
javascript
Он вам не SSR. Nuxt — больше, чем Server-Side Render фреймворк

Привет, Хабр! Я - Frontend Developer в МТС Диджитал. Все чаще и чаще я натыкаюсь на сообщения и комментарии пользователей в различных социальных сетях про Server-Side Rendering. Обычно эти жалобы о том, кто-то недоволен зависимостью Next.js от Node.js-сервера. Кто-то сталкивается с ограничениями динамического роутинга при статической генерации. Исходя из этого некоторые люди писали в комментариях что-то вроде: "Вы же не ожидали, что SSR-фреймворк решит все проблемы разом?"Большинство мо…

  • пятница, 7 марта 2025 г. в 00:00:06