Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Создадим О/С (перемешено из форума "Операционные системы")

419
19 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Все-все-все!
Подключайтесь к созданию новой мультизадачной операционной системы!
[email]gladkih@hot.ee[/email]
Страницы:
395
23 января 2003 года
RelB
367 / / 09.11.2002
Решил я тут встрять в спор, хоть и поздно.
Цитата:
Originally posted by SkLite

Я говорю не про то, что кто-то там или я сам его неправильно настроил, а что по умолчанию у новой мамы был выключен Bus Master и вместе с ним расширенный инт13. По моему это большая лажа. И если я и нашел, то это не значит, что все найдут.
А винт на 15Г. И через биос твоя ось у меня (и не только) не загрузилась бы!!!

Грузилась бы, очень даже грузилась. Просто нерасширенный инт13 способен "видеть" только первые 8 гб винта. И не грузилась бы она если находилась бы за пределами этой области.

Цитата:
Originally posted by SkLite
Не знаю где ты копался, но для стандартных устройств он работает ооочень медленно и занимает намного больше места, чем аналогичная прога!

Скорее всего он работает медленно, потому что записан в ПЗУ, а такая память отличается достаточно малым быстродействием.

Цитата:
Originally posted by SkLite
Ты только сильно не обижайся, просто, по-моему, ты начал не с того конца. Все сначала проектируют, потом пишут хоть что-то(загрузчик, ядро и, обязательно, компилятор и дебагер), а уж потом набирают команду. А ты хочешь все наоборот.

Конечно доля правды есть, но как ты будешь писать дебагер под несуществующую ось? Ведь его запускать как то нужно будет. А где? Так что пока единственным способом отладки является вывод сообщений на экран, типа: "Запустился обработчик прерывания дисковода". Потом такие вещи как ядро, я вообще не предсталяю как отлаживать.

1.8K
24 января 2003 года
Exfector
74 / / 12.10.2002
Цитата:
Originally posted by pardus



Подобное я только в QNX видел... Но QNX достаточно новая система, а Оберон аж 88 года выпуска (правда это сам язык, а операционка появилась этак в 96).


http://www.oberon.ethz.ch/download.html




Хмм .. может я чтото гдето упустил ? Цытирую:

QNX Software Systems is a leading global provider of realtime operating system (RTOS) technology. Founded in 1980 by Gordon Bell and Dan Dodge, QNX is committed to enabling embedded systems vendors to accelerate the development of highly reliable and scalable realtime applications.

TIA

1.9K
24 января 2003 года
SkLite
38 / / 02.12.2002
Цитата:
Originally posted by RelB
Решил я тут встрять в спор, хоть и поздно.
Грузилась бы, очень даже грузилась. Просто нерасширенный инт13 способен "видеть" только первые 8 гб винта. И не грузилась бы она если находилась бы за пределами этой области.


Кому нужна такая ось, которая будет выбирать сама будет она грузиться отсюда или вон оттуда? Универсальность должна быть.

Цитата:
Originally posted by RelB
Скорее всего он работает медленно, потому что записан в ПЗУ, а такая память отличается достаточно малым быстродействием.


Очень даже может быть. Я даже никогда об этом и не задумывался (что работает из пзу). Хотя написан все равно криво.

Цитата:
Originally posted by RelB
Конечно доля правды есть, но как ты будешь писать дебагер под несуществующую ось? Ведь его запускать как то нужно будет. А где? Так что пока единственным способом отладки является вывод сообщений на экран, типа: "Запустился обработчик прерывания дисковода". Потом такие вещи как ядро, я вообще не предсталяю как отлаживать.


А что такое дебагер? Это прога, которая показывает регистры, память и еще чего. Но только не когда BSoD, а в реальном времени. Можно даже делать что-то типа отладочных версий с вызовом в некоторых местах этих функций (отображение регистров... ). А ядро надо не отлаживать, а писать без ошибок. Если требуется отладка ядра, то это или не досканальное знание работы процессора (у меня) или не понимание самого процесса. Там же голый асм. Чего там отлаживать? Другое дело тестить как оно работает.

P.S. По-моему мы немного вышли из темы. Предлагаю открыть новую тему: Универсальный подход к написанию оси без конкретной реализации. С целью проанализировать ошибки и недостатки других осей.

P.P.S. Хорошая книга Олифер: "Сетевые операционные системы". Название точно не помню. Есть на цитфоруме.

419
27 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by SkLite

Кому нужна такая ось, которая будет выбирать сама будет она грузиться отсюда или вон оттуда? Универсальность должна быть.


О чем вообще речь?
Естественно, универсальность.
Но этот загрузчик - ДЛЯ ДИСКЕТЫ!!!!!
Прошу, друзья, вначале внимательнее смотреть предыдущие сообщения, мою теорию, а потом кричать.

Цитата:

Очень даже может быть. Я даже никогда об этом и не задумывался (что работает из пзу). Хотя написан все равно криво.


По ходу он должен копироваться в ОЗУ, так было по-крайней мере в IBM PC
А насчет криво - я бы так не сказал. Писал его не дядя Вася из первой квартиры, а профессионалы IBM, т.к. это самая критичная часть. Как говорится, надо чаще смотреть в зеркало. Как мы сами все иногда пишем...

Цитата:

А что такое дебагер? Это прога, которая показывает регистры, память и еще чего. Но только не когда BSoD, а в реальном времени. Можно даже делать что-то типа отладочных версий с вызовом в некоторых местах этих функций (отображение регистров... ). А ядро надо не отлаживать, а писать без ошибок.


Как ты программируешь? Первое правило - ПРОГРАММЫ БЕЗ ОШИБОК НЕ СУЩЕСТВУЕТ!!! Если их нет, значит либо программа не работает как надо, либо ты их не заметил, третьего не дано.

Цитата:

Если требуется отладка ядра, то это или не досканальное знание работы процессора (у меня) или не понимание самого процесса. Там же голый асм. Чего там отлаживать? Другое дело тестить как оно работает.


Отлаживать придется.
У меня интернет грохнулся, поэтому редко появляюсь. Не могу никак понять, почему исключения не так работают...(точнее не работают вообще - перезагружается. Опять сказывается недостаток опыта программирования именно З/Р)Скоро выйдет дополнение к теории и опять просьба о помощи...

Цитата:

P.S. По-моему мы немного вышли из темы. Предлагаю открыть новую тему: Универсальный подход к написанию оси без конкретной реализации. С целью проанализировать ошибки и недостатки других осей.

P.P.S. Хорошая книга Олифер: "Сетевые операционные системы". Название точно не помню. Есть на цитфоруме.


Спасибо за ссылки, но пока нужно сделать костяк.

2.1K
28 января 2003 года
xkip
19 / / 09.12.2002
Всем ПРИВЕТИЩЕ!!
Наконец-то я завершил войну с провайдером,
терь я снова в сети!! хехе))

Гляжу форум бурно идет - спустя почти
месяц моего отсутствия исписали чуть
ли не 2 страницы :) и рейтинга дофига.

Вобщем ща еще дел выше крыши, но все-же как-нить почитаю ваши "проказы". Mitja, просьба к тебе - напиши на мыло, чего там типа нового произошло?

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

Недавно приехал с Обласной олимпиады по инф,
5-ое место :(( (из за точки-запятой 14 баллов посеял!!)

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

До встречи!
419
29 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by xkip
Всем ПРИВЕТИЩЕ!!
Наконец-то я завершил войну с провайдером,
терь я снова в сети!! хехе))

Гляжу форум бурно идет - спустя почти
месяц моего отсутствия исписали чуть
ли не 2 страницы :) и рейтинга дофига.

Вобщем ща еще дел выше крыши, но все-же как-нить почитаю ваши "проказы". Mitja, просьба к тебе - напиши на мыло, чего там типа нового произошло?

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

Недавно приехал с Обласной олимпиады по инф,
5-ое место :(( (из за точки-запятой 14 баллов посеял!!)

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

До встречи!


С новыми силами - к новым делам.
Все также, проектирую. Смотри сайт, может, я его обновил когда ты отключился?(тех.инфо)
Сейчас грядет обновление. Завершаю свою битву с исключениями, Всем!!! Смотрите вопрос о стеке.
А я тут недавно на олимпиаду "ходил".
Ну препод по информатике говорит: так и так, ты единственны программер на школу, иди. Пришел, часа два по ТПедИ ходил, потом оказалось, что ее перенесли в др. место или заочно, черт те знает. Короче, препод об этом тоже не знал, а устроители, гады, пардон, не оповестили.!@#$%^&
Но она БЫЛА, есть рез-ты. И прикинте, первое место - 53 балла из 100! Я от смеха чуть не лопнул, особенно, когда задачи увидел. Я б там баллов на 98 нарешал... :)
Sorry for offtopic

356
29 января 2003 года
molnij
159 / / 20.06.2000
Цитата:
Originally posted by RelB


Ну и зря, все MMX нежелательно. Как я понимаю у AMD (конечно, я могу ошибаться) нет MMX, значит даже базовые функции пахать не будут, а значит по сути на аналогах Intel твоя ОСь не пойдет. А это хреново, т.к. у многих AMD. Далее, зачем оптимизировать некритичные по времени исполнения функции. Пользователь все равно не заметит как ему на экран текст выводится - через MMX или по обычному. А сайт mndos.narod.ru помойму :)


Ну не совсем ты прав... начиная с k6-2 MMX поддерживается и у амдов - я не думаю что сейчас много машин меньшей мощности - их в свое время не очень много брали...
ИМХО:
возвращаясь к ФС. Интересно вы что думаете кластерную систему придумали от нечего делать? давайте прикинем: современный винт, гигов 40-60, забит под завязку. Сколько у вас уйдет только на одну ФС?????? подумать страшно...Хотя может я и не прав... щаз конечно пойду погляжу на сайт, потом буду дальше громить... ничего личного просто люблю громить...

356
29 января 2003 года
molnij
159 / / 20.06.2000
Мда-а-а продолжим однако...
Первое дизайн сайта... оригинальное решение голубой на синем - как выяснилось в процессе чтения неплохо, вот только тогда приглушите окружающий фон - забивает все-таки... Где-то строки перенесены неправильно и слофо тафтология пишется через "в"...
ну это так - мелочи жизни...
Итак начнем серъезные накаты... Первое: тех. план оставляет весьма гнусное впечатление... видно примерно куда собираешься (собираетесь?) идти, но в общем-то подробностями это назвать трудно, тем более техническими.
Второе. Кто тебе сказал, что расположение в середине винта таблицы ускорит доступ. Учитывая способности современных винтов, типа там замены битых секторов на лету не думаю что заметите разницу... и как интересно собираетесь определять середину? Сейчас между прочим число секторов зависит не только от цилиндра но и от модели, изготовителя и черт от чего знает еще... так что лучше забейте и поместите в начало как все нормальные люди (хотя с другой стороны никакой вирус не догадается гадить таблицу в середине диска).
Третье. Замечание по поводу негибкости 256 процессов лучше рассмотри повнимательнее. Между прочим неплохой способ завесить систему - зарегистрировать 256 процессов (ну или сколько дадут) - любое следующее приложение обломиться.
Четвертое. Дерагментация. Прости но про дефрагментацию в общем-то не написано ничего... не знаю что и сказать... посмотри кнута хоть что-ли, вроде у него что-то было по этому поводу...
И последнее обновление 4 января... - ты еще жив?
Ну что бы еще сказать... Я бы не прочь присоединиться, но вот только мой опыт программирования под асмами не слишком велик... точнее сказать исчезающе мал... так что не знаю чем смогу пригодиться...
356
29 января 2003 года
molnij
159 / / 20.06.2000
А еще на сайте со странички даунлоада не доступны новости...хе-хе
363
30 января 2003 года
Michael
132 / / 20.07.2000
Первое.
Почему-то у многих из нас сейчас проблеммы с провайдерами. Страная общность.


Второе.
Да AMD поддерживают MMX. Ситуация разворачивается в сторону того, что AMD придётся поддержать и более новые extensions from Intel. Можно смело ориентироваться на сегодняшние SSE2 т.к. пока мы закончим ОС, Intel выпустит ещё несколько Instructions Sets. На первых порах об extensions можно не беспокоится. Дальше будет виднее.


Третие.
Распологая таблицу в середине, мы обрекаем программу на конкретные модели HDDs. Как было замечано ранее середину по единой формуле не найдёшь, также нужно учитывать, что HDD всё ещё расут и соответственно растёт количество внутренних вариаций.


Спасибо за внимание.
419
30 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by molnij

Ну не совсем ты прав... начиная с k6-2 MMX поддерживается и у амдов - я не думаю что сейчас много машин меньшей мощности - их в свое время не очень много брали...
ИМХО:
возвращаясь к ФС. Интересно вы что думаете кластерную систему придумали от нечего делать? давайте прикинем: современный винт, гигов 40-60, забит под завязку. Сколько у вас уйдет только на одну ФС?????? подумать страшно...Хотя может я и не прав... щаз конечно пойду погляжу на сайт, потом буду дальше громить... ничего личного просто люблю громить...


Про файловую систему - все, проехали и точка.
Принимаются дополнения. И не поставил бы я посекторный учет с бухты-барахты, опять же - привожу пример OS/2, обдумывал не раз.

419
30 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by molnij
Мда-а-а продолжим однако...
Первое дизайн сайта... оригинальное решение голубой на синем - как выяснилось в процессе чтения неплохо


Это сарказм или...?

Цитата:

вот только тогда приглушите окружающий фон - забивает все-таки... Где-то строки перенесены неправильно и слофо тафтология пишется через "в"...


Да? Извините! Но думаю, я пишу все же грамотнее, чем многие участники форума.

Цитата:

ну это так - мелочи жизни...
Итак начнем серъезные накаты... Первое: тех. план оставляет весьма гнусное впечатление... видно примерно куда собираешься (собираетесь?) идти,


Поподробнее, пожалуйста!

Цитата:

но в общем-то подробностями это назвать трудно, тем более техническими.


Конкретные примеры - ?

Цитата:

Второе. Кто тебе сказал, что расположение в середине винта таблицы ускорит доступ.


Почитай пожалуйста, на странице 2-3 есть даже расчеты. И к этому можно логическими размышлениями прийти.

Цитата:

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


Да, в современных дисках даже разное кол-во секторов на разных дорожках, это учтено при проектировании. Вы все извините, но я не могу свои мысли по этому поводу выразить на "бумаге".

Цитата:

и как интересно собираетесь определять середину?


Элементарно! LBA число/2
Сектора нумеруются "прошивкой", как в БИОСе для дискеты.

Цитата:

Сейчас между прочим число секторов зависит не только от цилиндра но и от модели, изготовителя и черт от чего знает еще...


Даже на компьютерах XT AT параметры НМД зависили от модели, это было даже когда еще и персоналок не было...

Цитата:

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


Ну, спасибо, конечно, за ненормального.
В начале диска ставят те, кто не знает ничего, кроме FAT, кто хочет сделать попроще, кто идет по пути наименьшего сопротивления, не хочет заниматься оптимизацией и т.д.
По-моему, на форуме было приведено уже достаточно доводов в пользу Ф/С MN-DOS.
Тем более, чтобы появились вирусы, надо какое-то время после появления системы. Первые вирусы под Windows 95 появились нескоро, для Linux - быстрее, наверно, из-за Open Sources. Ничего против O.S. не имею, это побочное явление.

Цитата:

Третье. Замечание по поводу негибкости 256 процессов лучше рассмотри повнимательнее. Между прочим неплохой способ завесить систему - зарегистрировать 256 процессов (ну или сколько дадут) - любое следующее приложение обломиться.


Вот-вот! Именно не запустится, а ситема не зависнет! Но, как я уже сказал, расширить не составляет труда.
[/QUOTE]
Четвертое. Дерагментация. Прости но про дефрагментацию в общем-то не написано ничего... не знаю что и сказать... посмотри кнута хоть что-ли, вроде у него что-то было по этому поводу...
[/QUOTE]
Про дефрагментацию чего?
Посмотреть что...?

Цитата:

И последнее обновление 4 января... - ты еще жив?
Ну что бы еще сказать...


Приношу свои извинения, у меня есть время на систему, а на сайт не хватает... Сделаю обновление точно не позднее 5 февраля.

Цитата:

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


Хоть критикуйте, но тщательно взвешивая аргументы.

419
30 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by Michael

Третие.
Распологая таблицу в середине, мы обрекаем программу на конкретные модели HDDs.


Ничего подобного.

Цитата:

Как было замечано ранее середину по единой формуле не найдёшь


Очень даже найдешь. Если я разделю размер LBA на 2, контроллер действительно даст именно ФИЗИЧЕСКУЮ СЕРЕДИНУ любого диска, с любой геометрией, с любыми вариациями расположения и количества секторов.

356
30 января 2003 года
molnij
159 / / 20.06.2000
Цитата:
Это сарказм или...?


Нет это не сарказм, это констатация удобства на мой взгляд не совсем совместимых цветов.

Цитата:
Да? Извините! Но думаю, я пишу все же грамотнее, чем мног...


Я ж не потому это писал, что ты неграмотен, а чтобы выловил ошибки.

Цитата:
Элементарно! LBA число/2


Извини не понял, что такое LBA число/2, кто такое LBA число???

Цитата:
Про дефрагментацию чего?
Посмотреть что...?


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

А по поводу тех. подробностей... Где-то была уже мессага о том, что прочитав тех. подробности чел должен понять вообще что вы делаете, и если хочет сразу включиться в разработку. То есть видит он тот же планровщик задач. ПОнимает как эТо работАет и пробует его написать (хотя бы и с нуля). А по пока имеющемуся даже непонятно для какого режима проца ось делается... я понимаю, что это есть в форуме, но ведь листать-читать весь форум - не лучшее развлечение... Кстатти можешь выложить копию этого форума на свой сайт - будет кстати, или хотя бы ссылку...

419
30 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by molnij

Нет это не сарказм, это констатация удобства на мой взгляд не совсем совместимых цветов.

Я ж не потому это писал, что ты неграмотен, а чтобы выловил ошибки.

Извини не понял, что такое LBA число/2, кто такое LBA число???


Ну....
Logical Block Addressing.
То-есть, я не совсем правильно выразился, наверно.
Имелось ввиду общее кол-во секторов, получаемое от контроллера ЖМД.

Цитата:

Чего дефрагментацию - тебе виднее; я месс писал прямо по тех. документации - наверное оперативки.


Там вроде речь и о дефрагментации накопителей шла.

Цитата:

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


Я свои способы брал из специальной книжки -"Проектирование О/С для малых ЭВМ".(не микро(ПК), а малых.)
Ну, и естественно, сам додумывал.

Цитата:

А по поводу тех. подробностей... Где-то была уже мессага о том, что прочитав тех. подробности чел должен понять вообще что вы делаете, и если хочет сразу включиться в разработку. То есть видит он тот же планровщик задач. ПОнимает как эТо работАет и пробует его написать (хотя бы и с нуля). А по пока имеющемуся даже непонятно для какого режима проца ось делается...


Все дело в том, что в-основном люди попадают туда, прочитав этот форум... :)

Цитата:

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


Хорошая идея, сделаю.

363
31 января 2003 года
Michael
132 / / 20.07.2000
Митя, цвет сайта действительно плохо влияет на читаемость. Хочешь хороший пример сочетания цветов, посмотри хотя бы на данный форум, так намного приятнее читать.


А про середину нужны подробности.

Обдумай несколько факторов:

- файлы дефрагментированны на HDD;
- диаметр диска увеличивается от центра, что уже не обеспечивает равномерной скорости если располагать таблицу в середине;
- BAD sectors скажутся на скорости доступа к "середине";
- стандартный HDD не достаточно широкий чтобы обеспечивать прирост из-за размещения таблицы в центре, другое дело HDD диаметром в 1000 метров; а на стандартном механическая головка не сможет обеспечить такого "1000 метрового результата", ведь помимо "перемещения", ещё есть много процессов на стороне головки:
-- процесс остановки,
-- начала процесса записи,
-- конца процесса записи,
-- начала процесса чтения,
-- конца процесса чтения,
-- начала движения по диску,
-- завершения движения по диску,
- т.е. само перемещение не составляет ста процентов от комплексного процесса доступа к диску;
- попробуй поэкспериментировать с знаменитыми FS и твоей FS когда закончишь версию для HDD, я предполагаю, не обижайся, что знаменитые FS покажут лучший результат по скорости;
- Я искренне хочу увидеть FS с таблицей, в центре работающею быстрее, чем FS с таблицей в начале, но пока я такого чуда не видел. Приведи реальные цифры в миллисекундах.


С глубоким уважением.
1.9K
31 января 2003 года
SkLite
38 / / 02.12.2002
Hi
Очень долго смеялся. Особенно про стек.

Теперь серьезно:
- есть очень хорошая книга Зубкова С. В. про асм. Там и про з\р немного есть. Как раз и про стек. Стек от данных ничем не отличается. Процу все равно что там хранить.

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

- и, наконец, про то откуда грузиться. Ты говоришь, что утебя пока все с дискеты. Теперь представь, что ты упихал все в бут почти под завязку. С дискеты все нормально. И надо доделать загрузку с других устройств. Куда ты будешь пихать эти процедуры?

P.S. Какого размера у тебя бут, лоадер или еще чего? Я говорил про универсальность не просто, необходимо сначала спроектировать. Где твой проект? Что за чем, в каком режиме проца, когда и откуда грузиться будет?

Всего наилучшего.
By
395
31 января 2003 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by SkLite
Hi
Очень долго смеялся. Особенно про стек.

Теперь серьезно:
- есть очень хорошая книга Зубкова С. В. про асм. Там и про з\р немного есть. Как раз и про стек. Стек от данных ничем не отличается. Процу все равно что там хранить.

Вот если бы ты не смеялся, а читал, то понял, что разговор шел главным образом о организации сегментов с расширением вверх и вниз. Нигде подробно об этом не пишется, только в мануале Intel-a том 3.

Цитата:
- и, наконец, про то откуда грузиться. Ты говоришь, что утебя пока все с дискеты. Теперь представь, что ты упихал все в бут почти под завязку. С дискеты все нормально. И надо доделать загрузку с других устройств. Куда ты будешь пихать эти процедуры?

P.S. Какого размера у тебя бут, лоадер или еще чего? Я говорил про универсальность не просто, необходимо сначала спроектировать. Где твой проект? Что за чем, в каком режиме проца, когда и откуда грузиться будет?

Всего наилучшего.
By


Кстати, Митя, я посмотрел бут по подробнее (только начало) и понял, что тебе придется его переделывать (хотя и немного). Есть там такое поле

BOOT DB 00h ;PHYSICAL DRIVE NUMBER

Вот оно абсолютно лишнее. Получается, что если мы вставим дискету в дисковод B:, то будет прикольный облом. Пора уже знать, проектировщик :), что при считывании бута БИОС заносит номер девайса в регистр DL и передает управление буту. Да, еще нет универсальности относительно директории где находится ОС и имени файла ядра.
Лично я бы поступил так.
Бут грузит exe-шник или com (например osloader.exe), который в корневом каталоге (такой бут легко уместиться в 512 байт для любых девайсов, даже для всех сразу можно было бы использовать один и тот же бут, конечно только для определенной FS). В этом экзешнике на размер нет практически никаких ограничений, т.е. мы имеем большое поле для маневров. Osloader переходит в ЗР (хотя и не обязательно) ищет в корневике system.ini, где прописаны все пути, файлы которые нужно запустить и т.д и т.п. Ну а дальше лишь дело техники. А то у Вас бедное ядро даже флоп отключает после своего запуска (нехорошо, я даже сказал, что очень нехорошо, получается, что ядро привязано только к дискете, я говорю на основании тех исходников, которые видел на форуме, может щас все и поменялось). Вот так будет все универсально, я бы даже сказал абсолютно универсально. По такому принципу грузится скажем WinNT, я думаю, что Вы не скажете, что это абсолютное фуфло и мы даже смотреть не будем в ее сторону.

Желаю успехов!!!

356
31 января 2003 года
molnij
159 / / 20.06.2000
Цитата:
Originally posted by Mitja Gladkih

Ну....
Logical Block Addressing.
То-есть, я не совсем правильно выразился, наверно.
Имелось ввиду общее кол-во секторов, получаемое от контроллера ЖМД.


Здо`рово! берем винт, пусть даже один блин, на каждой стороне по 10 (условно) секторов, всего - 20, что и покажет LBA, теперь делим пополам и попадаем ровно в конец первой стороны блина (или начало второй) - я до сих пор не понимаю алгоритм поиска середины диска, при отутствии инфы о геометрии харда, которую получить мягко говоря затруднительно. И что такое тогда середина диска, ответь плиз?

424
31 января 2003 года
(C)dragon
307 / / 04.12.2002
Цитата:
Originally posted by molnij

Здо`рово! берем винт, пусть даже один блин, на каждой стороне по 10 (условно) секторов, всего - 20, что и покажет LBA, теперь делим пополам и попадаем ровно в конец первой стороны блина (или начало второй) - я до сих пор не понимаю алгоритм поиска середины диска, при отутствии инфы о геометрии харда, которую получить мягко говоря затруднительно. И что такое тогда середина диска, ответь плиз?



Середину диска невозможно определить, не зная его геометрии. Вот у дискеты - это начало сороковой дорожки, а у винтов всё по разному.

395
31 января 2003 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by molnij

Здо`рово! берем винт, пусть даже один блин, на каждой стороне по 10 (условно) секторов, всего - 20, что и покажет LBA, теперь делим пополам и попадаем ровно в конец первой стороны блина (или начало второй) - я до сих пор не понимаю алгоритм поиска середины диска, при отутствии инфы о геометрии харда, которую получить мягко говоря затруднительно. И что такое тогда середина диска, ответь плиз?


Прикольный пример. Молодец. Мне было действительно смешно :). Посмотрим как Митя это оспорит.

P.S. Я еще ни разу не видел как он признает свои ошибки :D

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by Michael
Митя, цвет сайта действительно плохо влияет на читаемость. Хочешь хороший пример сочетания цветов, посмотри хотя бы на данный форум, так намного приятнее читать.


А про середину нужны подробности.

Обдумай несколько факторов:

- файлы дефрагментированны на HDD;


Ну и что? Они и в SLTFS могут быть дефрагментированы, и в FAT - это только еще более усредняет показатели, "сглаживает" неровности графиков.

Цитата:

- диаметр диска увеличивается от центра, что уже не обеспечивает равномерной скорости если располагать таблицу в середине;


В середине - не возле шпинделя, а на 40 дорожке из 80, например.
Т.е. вохле шпинделя 5 с., на конце - 100, значит, в середине - 105/2 - самое среднее время считывания.

Цитата:

- BAD sectors скажутся на скорости доступа к "середине";


Нелогично. Они мешают ЛЮБОЙ Ф/С

Цитата:

- стандартный HDD не достаточно широкий чтобы обеспечивать прирост из-за размещения таблицы в центре, другое дело HDD диаметром в 1000 метров; а на стандартном механическая головка не сможет обеспечить такого "1000 метрового результата",


Не понялсути, разъясни.

Цитата:

ведь помимо "перемещения", ещё есть много процессов на стороне головки:
-- процесс остановки,
-- начала процесса записи,
-- конца процесса записи,
-- начала процесса чтения,
-- конца процесса чтения,
-- начала движения по диску,
-- завершения движения по диску,
- т.е. само перемещение не составляет ста процентов от комплексного процесса доступа к диску;


Да, но перемещение - самая долгая операция.
Я именно на уменьшении использования самой долгой операции и основал Ф/С.

Цитата:

- попробуй поэкспериментировать с знаменитыми FS и твоей FS когда закончишь версию для HDD, я предполагаю, не обижайся, что знаменитые FS покажут лучший результат по скорости;
- Я искренне хочу увидеть FS с таблицей, в центре работающею быстрее, чем FS с таблицей в начале, но пока я такого чуда не видел. Приведи реальные цифры в миллисекундах.


В миллисекундах сложно, а в условных единицах - кто-то на форуме уже приводил, в самом начале.

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by SkLite
Hi
Очень долго смеялся. Особенно про стек.

Теперь серьезно:
- есть очень хорошая книга Зубкова С. В. про асм. Там и про з\р немного есть. Как раз и про стек. Стек от данных ничем не отличается. Процу все равно что там хранить.


No comments, читайте внимательно!

Цитата:

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


Да, в какой-то системе для малых ЭВМ я такое видел. Может, попробую.

Цитата:

- и, наконец, про то откуда грузиться. Ты говоришь, что утебя пока все с дискеты. Теперь представь, что ты упихал все в бут почти под завязку. С дискеты все нормально. И надо доделать загрузку с других устройств. Куда ты будешь пихать эти процедуры?


У меня boot loader в двух секторах, второй занят только наполовину. Тем более, чтобы грузиться с НМД, надо только изменить размерность используемых регистров и операций. И вместо 12-битной Таблицы сделать 16/32.

Цитата:

P.S. Какого размера у тебя бут, лоадер или еще чего? Я говорил про универсальность не просто, необходимо сначала спроектировать. Где твой проект? Что за чем, в каком режиме проца, когда и откуда грузиться будет?


Вот теперь я долго смеялся. Вот уже с прошлого года обсуждаем 32 pmode MN-DOS...:)

Цитата:

Всего наилучшего.
By


Вам всем также!

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by RelB
Вот если бы ты не смеялся, а читал, то понял, что разговор шел главным образом о организации сегментов с расширением вверх и вниз. Нигде подробно об этом не пишется, только в мануале Intel-a том 3.

Кстати, Митя, я посмотрел бут по подробнее (только начало) и понял, что тебе придется его переделывать (хотя и немного). Есть там такое поле

BOOT DB 00h ;PHYSICAL DRIVE NUMBER

Вот оно абсолютно лишнее. Получается, что если мы вставим дискету в дисковод B:, то будет прикольный облом.


Ничего подобного. BIOS всегда грузит с A, а если и нет, то используется опция Swap floppy drives, в это мслучае грузится с В:, но он везде как А:

Цитата:

Пора уже знать, проектировщик :), что при считывании бута БИОС заносит номер девайса в регистр DL и передает управление буту.


Кстати!
Я об этом узнал только когда попал на форум CodeNet в прошлом году! Где только не искал - нигде не было. Но можно и доделать.
Не фатально.

Цитата:

Да, еще нет универсальности относительно директории где находится ОС и имени файла ядра.


Почему же?
A:\SYSTEM\kernel.bin - всегда!
Причем эта директория недоступна для программ.
(на диске, где О/С)

Цитата:

Лично я бы поступил так.
Бут грузит exe-шник или com (например osloader.exe), который в корневом каталоге (такой бут легко уместиться в 512 байт для любых девайсов, даже для всех сразу можно было бы использовать один и тот же бут, конечно только для определенной FS). В этом экзешнике на размер нет практически никаких ограничений, т.е. мы имеем большое поле для маневров. Osloader переходит в ЗР (хотя и не обязательно) ищет в корневике system.ini, где прописаны все пути, файлы которые нужно запустить и т.д и т.п. Ну а дальше лишь дело техники.


Каждый вибирает по себе.(песенка такая есть.)
У меня этим будет начальная часть ядра заниматься.

Цитата:

А то у Вас бедное ядро даже флоп отключает после своего запуска (нехорошо, я даже сказал, что очень нехорошо, получается, что ядро привязано только к дискете, я говорю на основании тех исходников, которые видел на форуме, может щас все и поменялось).


:):)
Дело не в этом. Просто у меня на Laptop'е, где О/С пишу, оооочень шумный флопчик - и когда мне надо подумать, почему жу та или иная часть не работает, он меня своим шумом отвлекает.
Потом, конечно, уберу.

Цитата:

Вот так будет все универсально, я бы даже сказал абсолютно универсально. По такому принципу грузится скажем WinNT, я думаю, что Вы не скажете, что это абсолютное фуфло и мы даже смотреть не будем в ее сторону.
Желаю успехов!!!


Да, кстати, покажите мне Linux, в котором можно 98 окон открыть и не зависнуть. В Win98 можно(98 и 98 - совпадение.)

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by RelB

Прикольный пример. Молодец. Мне было действительно смешно :). Посмотрим как Митя это оспорит.


Сейчас напишу.

Цитата:

P.S. Я еще ни разу не видел как он признает свои ошибки :D


:) Если бы вы имели возможность спросить моих друзей, они бы сказали, что за время нашего знакомства я может раз или два признал, что неправ.
Главным образом, потому, что часто я могу доказать свою ПРАВОТУ.

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by (C)dragon


Середину диска невозможно определить, не зная его геометрии. Вот у дискеты - это начало сороковой дорожки, а у винтов всё по разному.


Смотря о какой дискете идет речь.

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by molnij

Здо`рово! берем винт, пусть даже один блин, на каждой стороне по 10 (условно) секторов, всего - 20, что и покажет LBA, теперь делим пополам и попадаем ровно в конец первой стороны блина (или начало второй) - я до сих пор не понимаю алгоритм поиска середины диска, при отутствии инфы о геометрии харда, которую получить мягко говоря затруднительно. И что такое тогда середина диска, ответь плиз?


Как бы я хотел иметь такое устройство, чтобы увидев некое сообщение, нажимал на кнопку, и автора било бы током. Шутка, конечно. Видел в "Принцип'е Дилберта"
Как же еще заставить людей внимательно читать форум!?
Моя система прдставляет нумерацию секторов так же, как и BIOS. Причины я уже называл.
То-есть, получается такой меандр - вверх-вниз...
И в данном случае 20/2 будет не конец первого блина, а 5 сектор первой стороны.

419
31 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Да, вы можете сказать, дескать, в современных дисках разное количество секторов на разных дорожках, но:
Если мы возьмем среднее арифм. между кол-вом сеторов у шпинделя и на 0 треке, перемещений головок будет больше, но будут интенсивнее использоваться сектора более полноценных дорожек, значит - опять же плюс.
1.9K
31 января 2003 года
SkLite
38 / / 02.12.2002
Во-первых: были проблемы со стеком. Из за него вроде чего-то не работало (или перегружалось (висло)), поэтому и смешно, если ты пытался делать стек не как данные для всегда одинакового по размеру стека. И судя по твоим вопросам это именно так.

Во-вторых: я спрашивал не про то в каком режиме она будет работать, а где именно будет переходить в з\р.

B сколько можно спорить по поводу середины винта? Когда будет готова - тогда и сравним с другими фс.

P.S. Если я чего напутал, то прошу прощения. У меня сессия.
419
01 февраля 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by SkLite
Во-первых: были проблемы со стеком. Из за него вроде чего-то не работало (или перегружалось (висло)), поэтому и смешно, если ты пытался делать стек не как данные для всегда одинакового по размеру стека. И судя по твоим вопросам это именно так.


Да, мне нужен был обычный стек с расширением вниз, а что?

Цитата:

Во-вторых: я спрашивал не про то в каком режиме она будет работать, а где именно будет переходить в з\р.


Как где - где-то там..... В ядре. Задай, пожалуйста, конкретнее.

Цитата:

B сколько можно спорить по поводу середины винта? Когда будет готова - тогда и сравним с другими фс.


Согласен, но скажи это тем, кто спорит - мне-то надо отвечать на выпады.

1.8K
01 февраля 2003 года
Lonesome
112 / / 27.01.2003
Цитата:
Originally posted by Mitja Gladkih

Да, кстати, покажите мне Linux, в котором можно 98 окон открыть и не зависнуть. В Win98 можно(98 и 98 - совпадение.)



Любой Linux. Вообще фраза "открыть в линуксе 98 окон и не зависнуть" - некорректна, т.к. графическая подсистема не является частью Linux. Сервер X-Window выполняется в третьем кольце как обычное пользовательское приложение и завесить систему не может в принципе :)

424
01 февраля 2003 года
(C)dragon
307 / / 04.12.2002
Цитата:
Originally posted by Lonesome


Любой Linux. Вообще фраза "открыть в линуксе 98 окон и не зависнуть" - некорректна, т.к. графическая подсистема не является частью Linux. Сервер X-Window выполняется в третьем кольце как обычное пользовательское приложение и завесить систему не может в принципе :)



Не может, но всё равно завешивает...

2.9K
01 февраля 2003 года
NAIL
10 / / 29.12.2002
Цитата:
Originally posted by (C)dragon


Не может, но всё равно завешивает...



Не знаю ,не знаю у меня получилось завесить linux только запустив StarCraft через wine,а по большому счёту он у меня работал без сбоев.Linux вообще намного стабильнее тойже windows или Unix

1.8K
01 февраля 2003 года
Lonesome
112 / / 27.01.2003
Цитата:
Originally posted by (C)dragon


Не может, но всё равно завешивает...



Не завешивает. Есть разница между зависоном X-сервера и зависоном Линукса. Если бы вдруг какая-то программа, исполняющаяся с CPL=3 и с правами обычного пользователя смогла бы завесить Linux, то об этом уже знал весь мир :D. В отличие от Win9x в пингвине изоляция процессов друг от друга выполнена на пять с плюсом.

ЗЫ. А зависший X-сервер лечится командами Ctrl-Alt-Backspace, Alt-Fn, Ctrl+PrtScr ...

2.5K
01 февраля 2003 года
Crank
5 / / 01.02.2003
Цитата:
Originally posted by Mitja Gladkih
Ну, у кого еще желание спросить, помочь...?



Слушай, а под какой объём оперативки будет ориентирована твоя ОС? И ещё, как собираешся быть с совместимостью программ, написанных под Windows с твоей ОС. Если они будут нормально совместимы, то это резко повысит полезность твоей ОС.

419
01 февраля 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by Lonesome


Любой Linux. Вообще фраза "открыть в линуксе 98 окон и не зависнуть" - некорректна, т.к. графическая подсистема не является частью Linux. Сервер X-Window выполняется в третьем кольце как обычное пользовательское приложение и завесить систему не может в принципе :)


:D После такого "зависания 3 кольца" все клинит так, что даже ни CAD, ни NumLock не работают :D

419
01 февраля 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by NAIL


Не знаю ,не знаю у меня получилось завесить linux только запустив StarCraft через wine,а по большому счёту он у меня работал без сбоев.Linux вообще намного стабильнее тойже windows или Unix


Я тут недавно провел опыт - на восемь разных компьютеров ставил Win98 и разные Линуксы.
Везде, подчеркиваю - везде Win98 работал заметно стабильнее...
И я так, просто, фразу бросил, тут форум про MN-DOS!

419
01 февраля 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by Crank


Слушай, а под какой объём оперативки будет ориентирована твоя ОС? И ещё, как собираешся быть с совместимостью программ, написанных под Windows с твоей ОС. Если они будут нормально совместимы, то это резко повысит полезность твоей ОС.


Чтобы попробовать - 1 Мб, желательно 4 и более...
:) MS-DOSовские буду поддерживать, а насчет Win - вряд ли, но его протоколы и Ф/С буду.

363
02 февраля 2003 года
Michael
132 / / 20.07.2000
Цитата:
Originally posted by Mitja Gladkih

Я тут недавно провел опыт - на восемь разных компьютеров ставил Win98 и разные Линуксы.
Везде, подчеркиваю - везде Win98 работал заметно стабильнее...
И я так, просто, фразу бросил, тут форум про MN-DOS!



Это во многом, так и есть.

Перед тем чтобы Linux начал работать, так же как и Win XP работает сразу после установки "by default" нужно потратить уйму времени. Начинать лучше с компиляции ядра.

2.0K
02 февраля 2003 года
yup
31 / / 03.12.2002
Цитата:
Originally posted by Michael


Это во многом, так и есть.

Перед тем чтобы Linux начал работать, так же как и Win XP работает сразу после установки "by default" нужно потратить уйму времени. Начинать лучше с компиляции ядра.



комплирирую ядро, только радо того, что бы подогнать под свой PC, а так оно нормально работает

А вообще, на RH-7.1 в X дошел до 300 окно,
на Slakware 8.1 - 500 птом вырубил

На счет того чтоб линуксы работали хуже виндов просто неверю, правда их поставить сначало нормально нужно

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог