Как стать автором
Обновить
83
0
Алексей Мандрыкин @alman

Пользователь

Отправить сообщение

Насколько современные Линуксы отличаются друг от друга

Время на прочтение9 мин
Количество просмотров40K
Более 15 лет я работаю в компании Fast Reports и по роду своей деятельности мне часто приходится иметь дело с Linux, ведя поддержку одного из продуктов. С Linux я знаком несколько дольше — впервые установил Slackware в 1997 году. Соответственно, обладая некоторым опытом, хочу поделиться с вами мнением, чем, на мой взгляд, современные дистрибутивы Linux отличаются друг от друга. Всё описанное в статье является субъективным мнением и не претендует на абсолютную истину.
Читать дальше →
Всего голосов 35: ↑25 и ↓10+15
Комментарии74

Оптимизированная система команд для микроконтроллеров

Время на прочтение5 мин
Количество просмотров18K
Немногим менее года назад была опубликована статья «Микропроцессор «из гаража»» и, возможно, сейчас наступил неплохой момент чтобы снова напомнить о проекте.

Пожалуй, главная новость это расширение системы команд, названное «Версия 1.1». Её отличие от предыдущей это расширенные возможности адресации. Но обо всём по порядку. Чтобы представить о чём идёт речь, взгляните на карту системы команд (картинка кликабельна):

image
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии27

Микропроцессор «из гаража»

Время на прочтение6 мин
Количество просмотров34K
Наверняка каждый, имеющий дело с электроникой и ПЛИС, знаком с сайтом opencores.org, где собрано множество полезных (и не очень) решений для электроники — десятки, может быть и сотни, реализаций процессоров и периферии — как оригинальных реализаций уже существующих устройств, так и новых разработок. В этой статье пойдёт речь о 32-битном микропроцессоре с оригинальной системой команд, созданном на основе платы «Марсоход2».
Читать дальше →
Всего голосов 89: ↑88 и ↓1+87
Комментарии45

Формальное описание аппаратного микроядра L4

Время на прочтение2 мин
Количество просмотров16K
Первые версии микроядра L4 были настолько малы, что могли целиком поместится в кэше современных процессоров. Вероятно, этот факт породил миф о микроядре L4: «Оно быстрое, потому что маленькое». Даже в настоящее время нередко можно услышать эту версию. Так можно ли разместить микроядро в процессоре и как это сделать?
Есть мнение, что поместить микроядро в процессор - вполне выполнимая задача
Всего голосов 23: ↑20 и ↓3+17
Комментарии40

О замене стандартного /sbin/init

Время на прочтение4 мин
Количество просмотров12K
init — первый пользовательский процесс в Unix-подобных операционных системах
init — запускается непосредственно ядром системы.
init — является пра-родителем всех пользовательских (userspace) процессов системы.

Стандартный /sbin/init читает конфигурационный файл /etc/inittab, стартует систему и управляет системой используя несколько «уровней исполнения» (runlevels).

С помощью одноименного ключа init можно сказать ядру Linux использовать другой файл, вместо стандартного /sbin/init

Воспользуемся этой возможностью и добавим следующую конфигурацию в /boot/grub/menu.lst
title Linux kernel and custom init
root (hd0,1)
kernel /linux/vmlinuz-2.6.26-1-686 root=/dev/hda2 init=/linux/init
initrd /linux/initrd.img-2.6.26-1-686

Кто пользуется возможностью подменить процесс init? Иногда к этому прибегают разработчики встраиваемых систем — таким способом можно упростить разработку устройства и не тащить за собой всё окружение операционной системы.

В моём случае желание подменить init лежало в другой плоскости — хотелось проверить как поведёт себя процесс init системы Xameleon исполняемый Linux ядром. Желаете попробовать тоже?

Читать дальше →
Всего голосов 17: ↑10 и ↓7+3
Комментарии16

Необычное использование генератора отчётов

Время на прочтение5 мин
Количество просмотров7.6K
На заре своей карьеры пришлось столкнуться с обслуживанием и написанием бухгалтерских программ и систем учёта. С тех пор, несмотря на то, что прошло 18 лет, стойко держалось неприятие всего, связанного с учётом и отчётами. И кто бы мог подумать, что судьба забросит меня в компанию, занимающуюся разработкой генератора отчётов. Всё моё естество тянулось (и продолжает тянуться) к системному программированию, а участие в разработке софта для генерации отчётов — наказание за грехи молодости. Собственно говоря, эта статья рассказывает о попытке «вырваться из клетки» и совместить несовместимое — системное программирование и генераторы отчётов.
Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии2

Изучаем микроядро L4 и пишем приложение «Hello world» для системы Xameleon

Время на прочтение12 мин
Количество просмотров3.8K
Если вы когда-либо изучали язык Си или сталкивались с новой средой разработки, то наверняка хотя бы раз писали простейшее приложение, выводящее «Hello world». Итак, один из возможных вариантов на языке Си:

#include <stdio.h>
int main(int argc, char * argv[], char * envp[])
{
puts("Hello world!");
return 0;
}

Сохраним этот код в файл «hello.c» и с помощью компилятора gcc cоберём исполняемый файл используя следующую команду:
gcc hello.c -o hello

В результате, если на вашей системе установлен компилятор, файлы заголовков и библиотеки, получим исполняемый файл hello. Выполним его:
./hello

Элементарно? До тех пор, пока вы не решите собрать и запустить это приложение, например, под управлением своей собственноручно написанной операционной системы. Далее я подробно расскажу об этом процессе и держу пари, что не каждый найдёт в себе силы дочитать статью до конца.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии19

Спецификация системных вызовов операционной системы Хамелеон (осторожно, много картинок!)

Время на прочтение6 мин
Количество просмотров2.8K
Здоровья всем читателям!

Вашему вниманию предлагается описание системных вызовов микроядерной операционной системы Хамелеон aka Xameleon. Мой хамелеончик ещё не вылупился из своего яйца и пока набирается сил в виртуальной машине. Но ему очень одиноко и маленькая ящерица желает поближе познакомиться с жителями Хабра.

Спор «микроядро vs монолит» ведётся много лет, но представляют ли обе спорящие стороны об архитектуре системы, построенной на микроядре? Возможно, этот топик немного прольёт свет на архитектуру микроядерных систем.
Читать дальше →
Всего голосов 107: ↑95 и ↓12+83
Комментарии35

«Ума не приложу чё не нравиться Turbo C++ программу не запускает..» (с) Виктор Сергеевич

Время на прочтение1 мин
Количество просмотров635
Иногда развлекаюсь на «ответах мэйл ру», читая вопросы в разделе «Программирование». Публика там состоит чуть менее чем полностью из нерадивых студентов и школьников, имеющих очень слабое представление о программировании и желающих поиметь решенные курсовики за счёт людей, тешащих своё ЧСВ. Отсутствие модерации и непродуманная система рейтингов делают этот сервис абсолютно бесполезным. Но иногда можно получить редкий заряд позитива.
Читать дальше →
Всего голосов 62: ↑43 и ↓19+24
Комментарии26

Несколько советов молодым программистам, решившим написать свою операционную систему

Время на прочтение3 мин
Количество просмотров9.3K
Здравствуйте, уважаемые читатели!

Писали ли вы когда нибудь операционную систему? Вероятно, каждый десятый программист, заглянув лет на 10-20 назад и вспомнив начало своей карьеры, ответит — да. Господа, эта статья не для вас. Это статья для тех, кто верит в свои силы и полон надежд завоевать мир. Я постараюсь предостеречь вас от некоторых характерных ошибок.
Читать дальше →
Всего голосов 159: ↑132 и ↓27+105
Комментарии76

Информация

В рейтинге
Не участвует
Откуда
Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность