Скачиваешь ядро, мануал по ядру и велком в клуб красноглазиковYS писал(а):Эх... Сколько раз уже хотел раскурить внутренности линукса, но все ощущение что ниасилю.
КПК...
Re: КПК...
Люди могут жить без мозгов.
- Реклама
Re: КПК...
А, вот оно что, всего то? А я думал, его прочитать надо.Скачиваешь ядро, мануал по ядру и велком в клуб красноглазиков
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Re: КПК...
Нет его надо распечать и скурить )))))YS писал(а): А, вот оно что, всего то? А я думал, его прочитать надо.
по большей части оно никому это не надо если не только не переписывать его под какую либо нестандартную задачу
Люди могут жить без мозгов.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: КПК...
На самом-то деле, Линух -- это образец того, как ни в коем случае не надо делать ОС. Впрочем, это в значительной степени относится к любым Унихам и выросшим из них системам. Проблема там не только (и не столько) в реализации, сколько в АПИ, через который прикладные программы общаются с системой. Обозначу только три проблемы: идиотский fork (недаром в линухе в конце концов слепили какой-то костыль, чтобы запускать новые процессы не столь анальным способом), отсутствие нормальной многопоточности для приложений (в оригинальном унихе их не было вовсе, что тогда, впрочем, было обычным явлением; в линухе сделали костыльную пародию на потоки) и отсутствие асинхронного ввода-вывода (опять-таки, есть всякие уродские костыли, а заодно жуткое переусложнение ядра ради его выстесняемости -- ведь ожидание завершения ввода-вывода там происходит в ядре). Впрочем, обсуждать здесь достоинства и недостатки каких-либо осей -- это, по сути, оффтоп, форум всё ж по электронике.
Что же касается задачи, то в одиночку она действительно почти неподъёмна (и уж точно неподъёмна за разумное время). Вот слепить работоспособное железо и посадить туда пусть уродский, но доступный и почти готовый линух -- это можно, если есть прямые руки и кривые извилины (но не наоборот).
Что же касается задачи, то в одиночку она действительно почти неподъёмна (и уж точно неподъёмна за разумное время). Вот слепить работоспособное железо и посадить туда пусть уродский, но доступный и почти готовый линух -- это можно, если есть прямые руки и кривые извилины (но не наоборот).
Re: КПК...
Можете автора кинуть той самой книжки про внутренности линукса...???
- Реклама
Re: КПК...
Вот этого не знал открыли глазаSII писал(а):На самом-то деле, Линух -- это образец того, как ни в коем случае не надо делать ОС. Впрочем, это в значительной степени относится к любым Унихам и выросшим из них системам. Проблема там не только (и не столько) в реализации, сколько в АПИ, через который прикладные программы общаются с системой. Обозначу только три проблемы: идиотский fork (недаром в линухе в конце концов слепили какой-то костыль, чтобы запускать новые процессы не столь анальным способом), отсутствие нормальной многопоточности для приложений (в оригинальном унихе их не было вовсе, что тогда, впрочем, было обычным явлением; в линухе сделали костыльную пародию на потоки) и отсутствие асинхронного ввода-вывода (опять-таки, есть всякие уродские костыли, а заодно жуткое переусложнение ядра ради его выстесняемости -- ведь ожидание завершения ввода-вывода там происходит в ядре). Впрочем, обсуждать здесь достоинства и недостатки каких-либо осей -- это, по сути, оффтоп, форум всё ж по электронике.
Что же касается задачи, то в одиночку она действительно почти неподъёмна (и уж точно неподъёмна за разумное время). Вот слепить работоспособное железо и посадить туда пусть уродский, но доступный и почти готовый линух -- это можно, если есть прямые руки и кривые извилины (но не наоборот).
На работе стоят все серваки под дебиан и не жужат. (5 серверных по 600-700 машинок в них)
И все на них работает
Люди могут жить без мозгов.
Re: КПК...
По сути, я собираю кпк-железо, но не знаю, не осознаю как должна работать моя система... Есть ли в кпк биос или аналог))) Не понятен принцип и основа системы, если про виндос со школы учат что и как идет, да и в нете полно всего, то про кпк ничего не видел( Основа кпк-процессор, к нему озу, ЖК, пока хватит.... А как это всё связать с операционкой?! Как научить читать win32 cons ap. да и вообще возможно ли это...
Re: КПК...
Добавил в заметки, спасибо.На самом-то деле, Линух -- это образец того, как ни в коем случае не надо делать ОС. ...
Без кросс-компиляции - никак.Как научить читать win32 cons ap. да и вообще возможно ли это...
Разница между теорией и практикой на практике гораздо больше, чем в теории.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: КПК...
Так речь не о том, работает или не работает, а о том, насколько хороша или плоха система в принципе. Почему Уних, появившаяся в районе 1970-го года, стала набирать популярность только в 1980-х? Потому что жрала немеряное количество ресурсов (по тем временам, конечно) и при этом была ничем не лучше, а то и хуже других ОС того времени по функционалу. Ну а почему она стала эту самую популярность набирать именно в 1980-е? Потому что, с одной стороны, ресурсы (прежде всего объём ОЗУ и производительность процессора) стали намного более дешёвыми и доступными, а с другой, появилась масса процессоров новых архитектур (включая IA-32, которая, как известно, началась с 80386), для которых готовых вменяемых ОС ещё не было. Перенести "идеологически" хорошую ОС, написанную на ассемблере для другой архитектуры, можно, но физически её придётся переписать полностью. Ну а Уних не требовал полного переписывания, поскольку был написан на языке высокого уровня; требовалось лишь модифицировать или написать заново лишь части, непосредственно завязанные на аппаратуру (главным образом управление памятью и ввод-вывод). По той же причине сейчас Линух клонируют все, кому не лень: это, в отличие от разработки новой системы (тем более хорошей), достаточно просто и дёшево. Ну и плюс переносимость прикладного ПО (хотя это не такая большая проблема, как кажется на первый взгляд, поскольку, если система более-менее прилично написана, с помощью специальных "прослоек" можно эмулировать API любой другой ОС; в частности, Винда именно так и работает, и все приложения, созданные для Винды, на самом деле имеют дело не с реальным её АПИ, а с прослойкой -- Win32). В общем, дело упирается главным образом в экономику...les1982 писал(а):Вот этого не знал открыли глаза![]()
На работе стоят все серваки под дебиан и не жужат. (5 серверных по 600-700 машинок в них)
И все на них работает
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: КПК...
Есть неплохая книжка, автор -- Роберт Лав. Правда, она несколько устарела, Линух же постоянно перепиливается. В частности, до кого-то дошло, что выделять стек режима ядра для каждого потока режима пользователя -- это, мягко говоря, излишняя роскошь, и от этого вроде как избавились, что у Лава ещё не отражено. Есть ли что более новое -- не знаю, поскольку сама по себе Линух для меня интереса не представляет.Alerr писал(а):Можете автора кинуть той самой книжки про внутренности линукса...???
Да не за чтоYS писал(а):Добавил в заметки, спасибо.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: КПК...
Судя по вопросам, в плане программирования Ваша подготовка пока оставляет желать очень многого. Поэтому, ИМХО, лучше не замахиваться на столь масштабную задачу: осмысленно Вы её решить пока не сможете. Лучше вплотную займитесь программированием под микроконтроллеры, причём на ассемблере, чтобы лучше "въехать" в эту тему.Alerr писал(а):По сути, я собираю кпк-железо, но не знаю, не осознаю как должна работать моя система... Есть ли в кпк биос или аналог))) Не понятен принцип и основа системы, если про виндос со школы учат что и как идет, да и в нете полно всего, то про кпк ничего не видел( Основа кпк-процессор, к нему озу, ЖК, пока хватит.... А как это всё связать с операционкой?! Как научить читать win32 cons ap. да и вообще возможно ли это...
Подавляющее большинство более-менее современных мобильных устройств, в т.ч. КПК и планшетов (которые, по сути, те же КПК, только больше), базируются на процессорах архитектуры ARM. Никаких BIOSов там нет; максимум, что имеется -- это загрузчик, зашитый в ПЗУ, входящее в состав самого процессора, и умеющий загружать образ системы из внешней памяти (микросхемы DataFlash или NAND Flash, SD-карты, ещё чего-нибудь). Поэтому нет никаких готовых сервисных функций, подобных тем, что предоставляет BIOS, поэтому загруженная этим загрузчиком программа (ну или программа, прошитая во флэш-память АРМовского контроллера) должна уметь всё делать сама, без посторонней помощи. Даже такие вещи, как настройка процессора на нужную частоту работы или настройка контроллера внешней памяти, должны в общем случае выполняться самостоятельно. Соответственно, во всём этом надо разбираться.
Re: КПК...
Код: Выделить всё
Первоначально UNIX была разработана в конце 1960-х годов сотрудниками Bell Labs, в первую очередь Кеном Томпсоном, Денисом Ритчи и Дугласом Макилроем.
В 1969 году Кен Томпсон, стремясь реализовать идеи, которые были положены в основу MULTICS, но на более скромном аппаратном обеспечении (DEC PDP-7), написал первую версию новой операционной системы, а Брайан Керниган придумал для неё название — UNICS (UNIplexed Information and Computing System) — в противовес MULTICS (MULTIplexed Information and Computing Service). Позже это название сократилось до UNIX.
В ноябре 1971 года вышла версия для PDP-11, наиболее успешного семейства миникомпьютеров 1970-х (в СССР его аналоги, выпускавшиеся Министерством электронной промышленности были известно как СМ ЭВМ и «Электроника», позже ДВК, производились в Киеве, Воронеже, Зеленограде). Эта версия получила название «первая редакция» (Edition 1) и была первой официальной версией. Системное время все реализации UNIX отсчитывают с 1 января 1970.
Первые версии UNIX были написаны на ассемблере и не имели встроенного компилятора с языком высокого уровня. Примерно в 1969 году Кен Томпсон при содействии Дениса Ритчи разработал и реализовал язык Би (B), представлявший собой упрощённый (для реализации на миникомпьютерах) вариант разработанного в 1966 языка BCPL. Би, как и BCPL, был интерпретируемым языком. В 1972 году была выпущена вторая редакция UNIX, переписанная на языке Би. В 1969—1973 годах на основе Би был разработан компилируемый язык, получивший название Си (C).
В 1973 году вышла третья редакция UNIX, со встроенным компилятором языка Си. 15 октября того же года появилась четвёртая редакция, с переписанным на Си системным ядром (в духе системы Multics, также написанной на языке высокого уровня ПЛ/1), а в 1975 — пятая редакция, полностью переписанная на Си.
С 1974 года UNIX стал распространяться среди университетов и академических учреждений. С 1975 года началось появление новых версий, разработанных за пределами Bell Labs, и рост популярности системы. В том же 1975 году Bell Labs выпустила шестую редакцию, известную по широко разошедшимся комментариям Джона Лайонса[1].
К 1978 году система была установлена более чем на 600 машинах, прежде всего, в университетах.Седьмая редакция была последней единой версией UNIX. Именно в ней появился близкий к современному интерпретатор командной строки Bourne shell.
Первоначальные UNIX работали на крупных многопользовательских компьютерах, к которым также предлагались и проприетарные ОС от производителя оборудования, такие как RSX-11 и ее потомок VMS. Невзирая на то, что по ряду мнений тогдашний UNIX имел недостатки по сравнению с данными ОС (например, отсутствие серьезных движков баз данных), он был а) дешевле, а иногда и бесплатен для академических учреждений б) был портируем с оборудования на оборудование, и разработан на портируемом языке Си, что «отвязывало» разработку программ от конкретной аппаратуры. Кроме того, «отвязанным» от аппаратуры и производителя оказался и опыт пользователя — человек, работавший с UNIX на VAX, легко работал с ней же и на 68xxx, и так далее.
Вторым резким взлетом UNIX было появление RISC-процессоров около 1989 года. Еще до того существовали т. н. workstations — персональные однопользовательские компьютеры большой мощности, имеющие достаточный объем памяти, жесткого диска и достаточно развитую ОС (многозадачность, защита памяти) для работы с серьезными приложениями, такими, как CADы. Среди производителей таких машин выделялась компания Sun Microsystems, сделавшая себе на них имя.
Читаем что есть Апи и что есть WIN32
http://ru.wikipedia.org/wiki/Windows_API
А большая чать приложений использует всеже это
http://ru.wikipedia.org/wiki/GDI
А это автору как выглядит ядро в картинках

Люди могут жить без мозгов.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: КПК...
Да знаю я всё это... Но, как уже написал, здесь не достоинства/недостатки систем обсуждаются, и тем более не устройство осей в интимных подробностях.
Re: КПК...
Я когда-то во времена поздней молодости разбодяжил интерпретатор Бесика (GW Basic, кажись). Вместо функции, что гарантировано не понадобится в системе, вмонтировал свою - для работы с нашей самопальной периферией. Работала чрезвычайно быстро и надежно, потому как четко выдерживались времянки, а не в час по чайной ложке у полусонного Васика. Жаль только , что никому это не понадобилось : надвигались лихие девяностые, и всем все уже было по XYZ.YS писал(а):Эх... Сколько раз уже хотел раскурить внутренности линукса, но все ощущение что ниасилю.
А вот на замечательном клоне PDP - СМ-4 система поставлялась с исходниками - можно было смастерить компилятор "под себя" - хошь Бейсик, хошь Фортран. PL-1 тогда еще на СМ-4 не портировали, появился позже - на ДВК.


