The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Методическое руководство по разработке ядра Linux.

28.04.2007 15:20

Алексей Соловьев подготовил методический материал "Разработка ядра Linux" (PDF, 400 Кб).

В первой части текста рассказывается об особенностях ядра Linux; рассказывается, как собирать каноническое и модифицированное ядро. Во второй части текста приводятся теоретические моменты работы подсистем ядра (память, процессы, VFS); описывается работа с системных вызовами и файловой системой procfs в ядре. Все главы сопровождаются примерами, проверенными на ядре 2.6.18. Материал рассчитан на тех программистов, которые хотят научиться разработке ядра Linux.

  1. Главная ссылка к новости (http://linuxkernel.ru/?q=node/...)
  2. Исходный код к работе.
  3. Копия PDF на opennet
Лицензия: CC BY 3.0
Источник: linuxkernel.ru
Короткая ссылка: https://opennet.ru/10639-linux
Ключевые слова: linux, kernel
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Ханыга (?), 17:08, 28/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Молодец, мужик!!!
    Вот видно, что человек не сотрясает воздух, а дело делает. Взял да написал.
    Достойно уважения!
     
     
  • 2.15, Anonymous (?), 06:26, 30/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Не по содержанию, а по оформлению. Автору следует ознакомиться с системой LaTeX, поскольку использование Word'а дает ужасный результат.
     

  • 1.2, Аноним (-), 19:28, 28/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Молодец! Полезная штука.
     
  • 1.3, KdF (??), 19:30, 28/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хорошо написано, приятно читать.
     
  • 1.4, pavlinux (??), 19:40, 28/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Параметры запуска mkinitrd зависят от используемого дистрибутива.
    > Для дистрибутива SUSE Linux:

    Для дистрибутва SuSE, устанавливается перл модуль Bootloader_API.pm,
    который сам все делает.


    Ай-яй-яй дядя...

    >#include <sys/syscall.h>
    >#include <stdio.h>
    >#define __NR_getstsize 318

    318_ый syscall - это __NR_getcpu
    наверно правильней будет

    #define __NR_getstsize (NR_syscalls+1)

     
     
  • 2.5, pavlinux (??), 19:54, 28/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >s2 = (char *)malloc(len);
    > memset(s2, 0, len);
    >...
    >...
    >...
    >...return 0;
    >}

    А типа free(s2) не надо?

    В общем, статья хорошая, коротко и ясно,
    если бы я ничего не знал, как многие студенты,
    я бы нихрена не понял :)

     
     
  • 3.8, www.andr.ru (?), 09:51, 29/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    > А типа free(s2) не надо?

    В том то и дело, что не обязательно!
    Мне разработчик, разрабатывающий софтину на девайс, мониторящий радиационную обстановку на АЭС, так объяснил свой выбор: его программа, замечательно работавшая под линухом, запущенная под соляркой вдруг начала бессовестно жрать ОЗУ. долгие мучительные поиски дали, ессно, результат: он забыл делать free. Линух за ним всё гавно собирал, за маленьким, а солярка, - кака какая, - нет. Вот он и выбирает, понятное дело, Линух. Я же говорю - крутые профи тама собрались.

     
     
  • 4.9, TTT (?), 11:17, 29/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Это как-то связанно с чернобылем? :-)
     
  • 4.11, Дмитрий Ю. Карпов (?), 17:43, 29/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    AFAIK, Java по жизни отслеживает и пресекает утечку памяти.
     
     
  • 5.14, Painbringer (?), 02:28, 30/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Писать надо нормально, а не полагаться насборщики мусора. при желании несложно и на жабе утечку памяти сделать -- хотя бы тупо кольцевыми ссылками.
     
  • 4.13, Dvorkin (??), 22:24, 29/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    а что, ради этой программки он должен ставить Солярку?
    это не линукс собирает, это libgc
     
  • 4.16, Deka (??), 08:43, 02/05/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Про АЭС это сказки.
    На АЭС просто тае не пустят.
    Наши пацаны, кто учился со мной, перепаивают 155 серию на девайсах токо чтобы они работали. Софт туда не пускают и ПиСюКи там не живут - радиация страшная весчь.
    Про выбор прогаммистов - иногда встречаются такие сказки.
    А вот освобождать память учат в детском саду еще. Я бы от таких программистов отказался.
    Хотя - что то здесь не то. Подсистема управления памятью не может работать по разному в соляре и линухе. Отсюда вывод - если чел неосвобождал память под линухом, то и линух должен был жрать память как и солярка. Так что прогер чегото не таго сказал.  
     

  • 1.6, northbear (??), 19:59, 28/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличная работа... Спасибо автору.
     
  • 1.7, nowinter (?), 00:57, 29/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    респегт
     
  • 1.10, Аноним (-), 13:34, 29/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ужас, разрабатывать ядро по методичке, кошмар....
    А если серьёзно, хорошая статья:)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру