Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Флейм > Очень тупой вопрос! про OS


Автор: jhonyxakep 10.6.2009, 08:16
Тупее не придумаешь!:
Как кто думает, где можно достать исходники ядра какой-нибудь старенькой(или просто не затребовонной) OS, конечно открытой, и что-бы эти исходники были написанны на C++?

Кто считает вопрос тупым... Пусть то-же что-нибудь сюда напишет! smile  smile 

Автор: Lazin 10.6.2009, 08:46
тебе знакома разница между с++ и си? если нет, то можно посмотреть исходники ядра linux(все 2хх Мб) smile 

Автор: jhonyxakep 10.6.2009, 08:54
Я про туксов думал  smile  но туксы уже не интересные! Не много-ли сборок на линухах?
А какое-нить фонарное ядро.... Кто-бы поделился?

Автор: bilbobagginz 10.6.2009, 09:54
обычно оперативные системы написаны на языках более низкого уровня, а то что пишется на объектном языке пишут для обёртки ОС библиотеками (которые также обзывают модными словами "framework", "kit" и т.д.)
некоторые системы имеют стандартный набор библиотек работы с ОС на языке Си (POSIX)
а некоторые имеют стандартный набор библиотек на Си++: BeOS, Haiku (может быть и NeXT, но её код не доступен открыто)
я не знаком с виндовс, но возможно виндовс тоже имеет все эти новые замены GDI и т.д.на C++.

открыто доступные ядра ОС (на память):
netbsd, freebsd, openbsd, linux, minix, XINU (это не совсем ОС, т.к. использует DOS вызовы для работы)

есть довольно обширный http://en.wikipedia.org/wiki/List_of_operating_systems


Автор: jhonyxakep 10.6.2009, 10:11
bilbobagginz, в С++ то-же можно оперировать регистрами, и создать, хоть и преметивную но рабочюю систему распределения ресурсов... Мне просто хочется ознакомется с некоторыми методоми построения ОС, а ASM не знаю... И для изучения больше подходит простейшая ОС

Автор: gambit 10.6.2009, 12:22
Microsoft раздовало исходник ядра Win2000, поройся может и тебе перепадет.

Автор: Olegan 10.6.2009, 13:09
Цитата(jhonyxakep @  10.6.2009,  09:16 Найти цитируемый пост)
Пусть то-же что-нибудь сюда напишет!    

ЙА тут был!  smile 

Автор: jhonyxakep 10.6.2009, 13:21
Olegan, ЙА РАД! smile

Добавлено через 41 секунду
gambit, о! А поконкретнее можно? А?smile

Автор: gambit 10.6.2009, 13:40
Цитата(jhonyxakep @  10.6.2009,  13:21 Найти цитируемый пост)
gambit, о! А поконкретнее можно? А? 

Вообще они его раздавали по программе MSDNAA, подробности здеся http://blogs.gotdotnet.ru/personal/sos/PermaLink.aspx?guid=147453A0-AEAB-4B02-AB90-A27866F6F15C
но я думаю что он уже давно распластался по торрентам. Так что копай, ищи. Кто ищет тот найдет )))

Автор: Void 10.6.2009, 14:58
На C++ написана http://www.haiku-os.org/ — свободный клон BeOS.

Автор: bilbobagginz 10.6.2009, 15:31
Цитата(Void @  10.6.2009,  14:58 Найти цитируемый пост)
На C++ написана

не знал, что она вся написана на C++. я думал что сама написана на obj-C, а API - на C++....
действительно, большинство кода на C++ smile!!!!
http://dev.haiku-os.org/browser/haiku/trunk/src/system/kernel


Автор: jhonyxakep 11.6.2009, 03:20
smile А прыкольно!

Добавлено через 3 минуты и 53 секунды
А вот как они загрузчик написали на С++? это загадка...

Автор: Lazin 11.6.2009, 07:59
ну ты же настойащий хакер, тебе лучше знать smile

Автор: unicuum 11.6.2009, 09:56
Цитата(jhonyxakep @  11.6.2009,  03:20 Найти цитируемый пост)
А вот как они загрузчик написали на С++? это загадка... 

А почему нет, компиляторы как ни странно и с C++ работают. Единственная причина http://www.youtube.com/results?search_type=&search_query=write+in+C это сила привычки.

Автор: jhonyxakep 11.6.2009, 13:37
Цитата

ну ты же настойащий хакер, тебе лучше знать  

Не смейся, я-же над ламерами не смеюсь!smile


Цитата

А почему нет, компиляторы как ни странно и с C++ работают. Единственная причина писать сейчас на Си это сила привычки. 


Скорее незнание ассемблера

Автор: Lazin 11.6.2009, 14:17
Цитата(jhonyxakep @  11.6.2009,  13:37 Найти цитируемый пост)
Не смейся, я-же над ламерами не смеюсь!

а жаль, говорят смеяться над собой - полезно smile

Автор: unicuum 11.6.2009, 15:40
Цитата(jhonyxakep @  11.6.2009,  13:37 Найти цитируемый пост)
Скорее незнание ассемблера

Он зависит от архитектуры процессора, плюс опять же надёжность играет не последнюю роль. Как то я думал над проблемой компиляторов. Предположим есть некое вычислительное устройство и оно способно менять блоки информации в соответствии с неким алгоритмом. Существует параллельное и последовательное изменение данных. Каждое изменение длится какое-то время.

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

Автор: bilbobagginz 11.6.2009, 17:14
Цитата(unicuum @  11.6.2009,  15:40 Найти цитируемый пост)
Но если вдуматься природа двоичных данных едина. Даже учитывая те неоднородные вычислительные машины, которые понаделали люди ведя их родословную от архитектур калькуляторов, есть способы задействовать потерянную вычислительную мощь. Но её использование окажется вне логики машинных команд, так как изменения будут характеризоваться по другим принципам. 


да, природа едина, и вполне возможно на основе одного и того же устройства, пропустив сигнал другим маршрутом через тот же процессор, можно получить разные результаты.
но это и есть часть определения "архитектуры", и если она изменчива, на такую гибкую архитектуру понадобится своя ОС, которая сможет контролировать всё это, и скорее всего придётся под неё создать и свой специфический ассемблер, и над ним создать компилятор Си, а затем и плюс-плюс, т.к. Си переводится довольно однозначно в машинный код, в отличии от плюсов.



Автор: unicuum 11.6.2009, 18:46
Цитата(bilbobagginz @  11.6.2009,  17:14 Найти цитируемый пост)
и скорее всего придётся под неё создать и свой специфический ассемблер, и над ним создать компилятор Си, а затем и плюс-плюс

Ассемблер точно не понадобится по причине самой реализации, а вот насчёт остальных языков я бы подумал.

Цитата(bilbobagginz @  11.6.2009,  17:14 Найти цитируемый пост)
но это и есть часть определения "архитектуры", и если она изменчива, на такую гибкую архитектуру понадобится своя ОС

Идея вовсе не в гибкой архитектуре, а скажем так в гибком компиляторе, способным из любой архитектуры выжать максимальную вычислительную мощь.

Автор: bilbobagginz 11.6.2009, 19:15
Цитата(unicuum @  11.6.2009,  18:46 Найти цитируемый пост)
а скажем так в гибком компиляторе

Врядли какая-то фирма по созданию компиляторов создаст компилятор для несуществующего процессора без ассемблера.
Думаю, только фирма-производитель самого процессора будет создавать втихаря свой процессор, и выпустит его с набором инструметнов разработки.
Уверен, что для этого надо будет всё же ДА сделать какой-то ассемблер для "ассемблеро-сопоставимых" режимов работы этого подразумеваемого процессора ;-)
кроме-того это должен быть такой крутой продукт, который решит проблемы которые сегодня никакой другой проц не решит....

Цитата(unicuum @  11.6.2009,  18:46 Найти цитируемый пост)
Ассемблер точно не понадобится по причине самой реализации, а вот насчёт остальных языков я бы подумал.

процессор общей ориентации - не надо будет ему ассемблера, но на сегодня general purpose процессора вообще никуда не идут.. дошли до технологического ступора.
Поэтому, единственные ниши, в которых ещё возможен прогресс - это ниши чего-то среднего между микроконтроллерами, и полноценными микропроцессорами (типа x86).
такими процессорами пользуются в нише embedded, в которой очень даже не редкость работать на уровне машинного кода (real time, etc.), получится.
Кроме того, если подход будет слишком хитрый, 
без типовых решений разработки, то займёт время до внедрения такого продукта в руки разработчиков,
и он может не успеет подняться, 
поэтому производитель такого типа процессоров, всё таки ДА предоставит ассемблер, как пить дать.

Добавлено через 3 минуты и 11 секунд
Цитата(unicuum @  11.6.2009,  18:46 Найти цитируемый пост)
, а скажем так в гибком компиляторе, способным из любой архитектуры выжать максимальную вычислительную мощь. 

максимальная вычислительная мощь - это как раз и есть команды процессору: 
"вот такую загогулинку легче вычислять в вычислительной единице плавающей точкой, поэтому задействую пожалста FPU".
где тут противоречие к нужде в ассемблере ?

Автор: Void 11.6.2009, 19:26
Цитата(unicuum @  11.6.2009,  20:46 Найти цитируемый пост)
гибком компиляторе, способным из любой архитектуры выжать максимальную вычислительную мощь. 

DARPA знает что делать, %username%
http://www.media.rice.edu/media/NewsBot.asp?MODE=VIEW&ID=12402
Цитата
The Defense Advanced Research Projects Agency (DARPA), as part of its Architecture Aware Compiler Environment Program, has awarded Rice University $16 million to develop a new set of tools that can improve the performance of virtually any application running on any microprocessor.

Хотя каких результатов можно добиться под программой с такими расплывчатыми целями, я не представляю.

Автор: unicuum 11.6.2009, 19:52
Цитата(Void @  11.6.2009,  19:26 Найти цитируемый пост)

Хотя каких результатов можно добиться под программой с такими расплывчатыми целями, я не представляю. 

DARPA с разработкой ARPANET или по другому Internet. Действительно непонятно, чего же они добьются с такими расплывчатыми целями. smile 

Автор: jhonyxakep 12.6.2009, 14:20
Цитата

Он зависит от архитектуры процессора, плюс опять же надёжность играет не последнюю роль. Как то я думал над проблемой компиляторов. Предположим есть некое вычислительное устройство и оно способно менять блоки информации в соответствии с неким алгоритмом. Существует параллельное и последовательное изменение данных. Каждое изменение длится какое-то время.

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

Сам сочинял, или из книги скатал?  

Вы о чём тут говорите? 

Автор: Lim4 12.6.2009, 14:37
Цитата(jhonyxakep @  12.6.2009,  13:20 Найти цитируемый пост)
Вы о чём тут говорите?  

Кто? smile  Я вообще ничего не говорила smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)