Розробка ядра linux: йенс аксб

Відео: Як створити свою операційну систему на базі Linux # 1.Созданіе ОС

з біографії
Розробка ядра Linux: Йенс АКСБ

Йенс АКСБ (Jens Axboe) народився 1 вересня 1976 роки (https://kerneltrap.org/node/7637) в данському місті Оденсе (https://en.wikipedia.org/wiki/Jens Axboe). У 2007 році він проживав в столиці (Копенгагені), а зараз, згідно з профілем на порталі Ohloh.net (https: // ohloh. Net / accounts / ohlohax), живе в місті Кольдинг. Розробник одружений на Метті (https://plus.google. Com / 111643045511375507360 / about), у них двоє синів: Йонас (7 років) і Вітус (3 роки).

Йенс АКСБ навчався в Копенгагенському університеті у напрямку Computer Science. На жаль, мені не вдалося знайти інформацію про закінчення Йенсом цього вузу і будь-якої додаткової освітньої або наукової кар`єри.

Розробка ядра Linux: Йенс АКСБ
Йенс АКСБ

Судячи з того, що з 2000 по 2006 рік Йенс АКСБ відправляв листи в список розсилки розробників ядра з адреси [email protected], можна сказати, що щонайменше в цей час він працював в датському підрозділі Linux-компанії SUSE. Точно відомо, що з жовтня 2006 року до 31 травня 2010 року АКСБ працював в Oracle (https://axboe.livejournal.com/3616.html), а потім перейшов в Fusion-IO (fusionio.com), де отримав посаду головного архітектора.

діяльність

Йенс АКСБ підтримує шар блокових пристроїв в ядрі Linux і драйвери для SCSI CDROM і UNIFORM CDROM (https://lxr.linux.no/#linux+v3.8.8/MAINTAINERS). Крім того, Йенс розробив ряд планувальників ядра: CFQ I / O, Noop, Deadline, а також системний виклик splice для переміщення даних між дескриптором файлу і програмним каналом в просторі користувача. Крім того, АКСБ відомий як творець blktrace - утиліти і частини ядра Linux для трасування активності блокових пристроїв введення / виводу (з`явилося в Linux 2.6.17).

Вперше про Linux Йенс АКСБ дізнався в 1993 році, прочитавши про цю систему в одній з датських газет, де Linux порівнювали з OS / 2. Газета, за словами розробника, представляла собою «інженерний тижневик», який виходив щоп`ятниці. У той час АКСБ програмував на мові Сі і використовував Turbo C в операційній системі DOS, відчуваючи проблеми з сегментацією пам`яті. Linux, будучи повноцінним 32-бітної операційною системою, зацікавила розробника. Після декількох тижнів експериментів Йенс АКСБ вдалося встановити Linux - в результаті, «зворотної дороги вже не було». Чому процес першої інсталяції так затягнувся? Ядро Linux тих часів нерозпізнаних його CD-привід, через що Йенс відразу ж познайомився з першим у своєму житті явищем «kernel panic».




Розробка ядра Linux: Йенс АКСБ
Фото диска з дистрибутивом Yggdrasil Йенса

Цікаво і те, як розробнику вдалося отримати першу копію Linux. На той час єдиним реальним для нього способом отримати Linux були послуги шведської поштової компанії, на що у Йенса не було грошей ... Однак щасливий збіг обставин дозволив молодому програмісту знайти старий диск з дистрибутивом Yggdrasil (http: // en.wikipedia.org/ wiki / Yggdrasil Linux / GNU / X) - першим дистрибутивом Linux, який став поширюватися на CD. Той реліз дистрибутив був заснований на ядрі 0.99pl13.

Розробник відразу ж приділив багато часу знайомству з новою операційною системою. Тоді він ще вчився в школі, але система його так захопила, що, наприклад, щоб змусити працювати DOSEMU, йому доводилося пропускати заняття. Йенс згадує і про те, як не спав ночами, поки компілювати графічна система X для підтримки його відеокарти.




Особлива привабливість Linux для розробника полягала в тому, що ця операційна система була «прозорою», пропонуючи всі можливості для дослідження і дозволяючи робити з собою що завгодно. Особливо помітно це було в порівнянні з Windows 3.x, навіть падіння якої було складно діагностувати.

Першим внеском Йенса в ядро Linux стала розробка драйвера CD-ROM. Попередній розробник (судячи з усього, це був Ерік Андерсен з проекту Debian) вирішив відійти від справ з особистих мотивів і шукав добровольців. І тепер 19 жовтня 1998 року Йенс офіційно став новим мейнтейнера драйвера. Для розробника це виявився корисний досвід. Він розширив функціональність (cdrom.c), додав підтримку Mount Rainier, DVD і DVD-RAM. Потім, перейшовши на роботу в SUSE, Йенс АКСБ став працювати над шаром блокових пристроїв (block layer), мейнтенером якої є донині. Цей шар служить проміжною ланкою між драйверами блокових пристроїв і файлової системою. Зокрема, сюди відноситься управління чергами та ресурсами, планувальники введення / виведення. В ході підготовки ядра Linux 2.5 розробник переписує реалізацію шару блокових пристроїв, оскільки існувала до тих пір реалізація не без причин вважалася невдалою, тому що не справлялася з роботою з декількома процесорами, не підтримувала введення / виведення зі сторінок highmem, а черзі введення / виведення мали скромні можливості. Крім того, було необхідно зробити більш простими і менш об`ємними драйвери блокових пристроїв. Вперше переписаний шар блокових пристроїв з`явився в ядрі версії 2.5.0-pre1. Цікаво, що до Йенса АКСБ ніхто взагалі цілеспрямовано не займався підтримкою шару блокових пристроїв - розробники лише готували патчі для початкової реалізації шару блокових пристроїв, створеної Лінус Торвальдс (ll_rw_blk.c).

У 2002 році розробник створює планувальник вводу-виводу для ядра Linux, який отримав назву Deadline scheduler (https://en.wikipedia.org/wiki/Deadline scheduler) або планувальник введення-виведення з лімітом часу. Основне завдання - уникнути затримок обслуговування, які можуть мати місце при використанні ліфтового алгоритму Лінуса (докладніше про «Linus Elevator» можна читати в книзі Роберта Лава «Розробка ядра Linux, 2-е видання»). Незважаючи на те, що планувальник введення-виведення з лімітом часу в цілому працював, як і ліфтової, його важливою відмінністю від останнього стало те, що запити не очікували довше визначеного часового періоду

У 2003 році Йенс АКСБ реалізує Completely Fair Queuing (CFQ, планувальник введення-виведення з повністю рівноправними чергами), який став доступний у вигляді патча для ядра версії 2.5.60 (https://en.wikipedia.org/wiki/CFQ). В основній код ядра він був інтегрований з виходом версії 2.6.6, який відбувся 10 травня 2004 року. CFQ не схожий на планувальники, які були розроблені до нього, оскільки підтримує окрему чергу для кожного процесу, що здійснює операції введення-виведення, а для виконання запитів з черг використовується кругової алгоритм. Завдяки цьому, пропускна здатність пристрою рівномірно розподіляється для кожного відповідного процесу. Ще один планувальник, створений Йенсом, отримав назву Noop. Він орієнтований на блокові пристрої, для яких немає необхідності у виконанні сортування або у вставці приходять запитів (наприклад, в разі flash-пам`яті).

У 2005 році розробник представив пакет для тестування і моделювання робочого навантаження введення-виведення, який отримав назву fio (https://git.kernel.dk/?p=fio.git-a=summary). Він підтримує імітацію різних типів введення-виведення (sync, mmap, libaio і ін.), Дозволяє задавати кількість потоків або процесів і інші параметри.

Розробник бере активну участь в різних конференціях. З останніх можна відзначити LinuxCon Japan 2010 року (https://events.linuxfoundation.org/2010/linuxcon-japan/axboe) і 2012 Red Hat Summit (fusionio.com/blog/2012-red-hat-summit-preview).

Інструменти

Інформація про інструменти, які використовуються розробником, досить мізерна. З апаратного забезпечення відомо лише про використання MacBook Pro Retina (https://plus.google. Com / 111643045511375507360 / posts / DoK5qeLxG6K). Що стосується операційних систем, то Йенс вважає за краще використовувати дистрибутиви, засновані на менеджері пакетів apt. При цьому він вважає, що Ubuntu з GNOME 3 або Unity жахлива, а Debian містить застаріле програмне забезпечення. Тому вибір розробника упав на Linux Mint. З іншого софта можна виділити браузер Chrome, поштові клієнти Mutt і Thunderbird.

У профілі розробника на ohloh.net є перелік мов програмування і технологій, з якими працював / працює Йенс: C, C ++, Make, Autoconf, XML, скрипти для shell, асемблер, Perl, Python, AWK, скрипти для DOS (https: / /ohloh.net/accounts/ohlohax/positions/total).

Характер і особистість

Профілі Йенса АКСБ в соціальних мережах (крім Google+ це LiveJournal - http: // axboe. Livejournal.com/, і Twitter - https://twitter.com/axboe) показують його як в міру відкритого і товариську людину, захопленого своєю справою. У блогах Йенс ділиться новинами про свою роботу і її результати, обговорює актуальні проблеми і питання (наприклад, драйвер b43 на MacBook Pro). У підписі Йенса в розсилці по розробці ядра Linux довгий час значилася цитата Альберта Ейнштейна: «Єдине, що заважає моєму навчанню, - моє освіту» (https://lkml.org/lkml/1998/12/31/92). Позаторік про Йенса вийшла невелика книга англійською мовою: «Jens Axboe» (автори: Jesse Russell, Ronald Cohn- e5.ru/product/jens-axboe 13023809).

ІНШЕ

Silicon graphics і open source: linux фото

Silicon graphics і open source: linux

Відео: Booting Debian Jessie on an SGI UV -1000 supercomputer Вважається, що одним з факторів, що призвели до краху…

Alt linux 6.0 kdesktop фото

Alt linux 6.0 kdesktop

Відео: alt linux 7.0 - дистрибутив який Вам не варто встановлювати! ALT Linux 6.0 KDesktop…

Жан делвар: діяльність фото

Жан делвар: діяльність

Відео: АМЕРИКАНСЬКИЙ БОЙОВИК "особлива місія" фільм бойовик / бойовик з Ван Даммом / зарубіжні фільми Делвар…

Джеймс боттомлі: діяльність фото

Джеймс боттомлі: діяльність

Перший досвід роботи з ядром Linux Джеймс Боттомлі отримав в 1993 році, будучи аспірантом в університеті. Перший патч…

» » Розробка ядра linux: йенс аксб