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

Ваш аккаунт

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

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

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

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

419
19 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Все-все-все!
Подключайтесь к созданию новой мультизадачной операционной системы!
[email]gladkih@hot.ee[/email]
Страницы:
419
29 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by NAIL
Да кстате в твоём профиле я мыла не вижу:(((


ICQ нет. А e-mail должен быть... [email]gladkih@hot.ee[/email]

419
29 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Делал я ядро, делал, и вдруг вижу: ну не то это всё... Стёр я файл и начал заново. Вожусь с исключениями, взял кусочек примера из одной книги,
а он, гад, не работает?! Помогите, плиз!
Вот код:
main:
sta:
JMP REALSTART ;ЋЎе®¤Ё¬ ¤ ­­лҐ

label GDTR pword ;LABEL PWORD ;ᢥ¤Ґ­Ёп ® GDT
GDTLIM DW gdtsize-1
GDTADR DD 10000h

label IDTR pword
;LABEL PWORD ;ᢥ¤Ґ­Ёп ® IDT
IDTLIM DW idtsize
IDTADR DD 14040h

GDT:
NULLGDT:
times 8 DB 0
CODES:
DW codesize-1
ADR1 DW 0
ADR2 DB 7h
DB 98h
DB 01000000b
DB 0
DATAS:
DW codesize-1
DW 0
DB 7h
DB 92h
DW 0
STK:
DW 50 ;01Fh
DW STKDW
DB 7
DB 92h
DW 0
VIDEOB:
DW 3999
DW 8000h
DB 0Bh
DB 92h
DW 0
gdtsize=$-GDT
idt:
DW EXC0
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXC3
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXC10
DW 08h
DB 0
DB 8Fh
DW 0

DW EXC11
DW 08h
DB 0
DB 8Fh
DW 0

DW EXC12
DW 08h
DB 0
DB 8Fh
DW 0

DW EXC13
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0

DW EXCDUMMY
DW 08h
DB 0
DB 8Fh
DW 0
idtsize=$-idt


COUNTER:
db 0
X DB 1
Y DB 1
testm db 'The microprocessor has retruned into real-mode.',255
MSG1 DB 'We are in protected mode!',255
STRING DB '**** ****_**** ****_**** ****'
datasize=$-COUNTER
STKDW:
times 50 DB 0
stksize=$-STKDW
REALSTART:

mov ax,REALSTART-2 ; ®аЈ ­Ё§гҐ¬ б⥪
mov sp,ax
push cs ;­  ўбпЄЁ© б«гз © Ё­Ёж. ॣЁбвал
pop ds
push ds
pop es

CLI
mov ax,1000h ;ЏҐаҐи«Ґ¬ GDT Ї® 1000:0000h
mov es,ax

xor di,di
mov si, GDT
mov cx,gdtsize
rep movsb

MOV SI,idt
MOV CX,idtsize
MOV DI,4040
REP MOVSB

LGDT [CS:GDTR]
LIDT [CS:IDTR]

MOV AL,0D1h ;ЋвЄа®Ґ¬ a20
OUT 64h,AL
MOV AL,0DFh
OUT 60h,AL

MOV EAX,CR0
OR EAX,1
MOV CR0,EAX ; б®Ўб⢥­­® ЇҐаҐе®¤ ў § йЁйҐ­­л© ०Ё¬

DB 0EAh
DW CONTINUE ; FAR JMP ­  32 ЎЁв­л© ЁбЇ®«­пҐ¬л© Є®¤, ¤ Ўл
DW 8 ; ®Ў­®ўЁвм CS:EIP

CONTINUE:
USE32
MOV AX,16
MOV DS,AX

MOV AX,24
MOV SS,AX

MOV SP,48

MOV AX,32
MOV ES,AX

MOV AX,40
MOV GS,AX

MOV DX,3F2h
MOV AL,00001000b ;—в®Ўл д«®ЇзЁЄ ­Ґ и㬥« :)
OUT DX,AL

MOV DI,1920
MOV CX,80
MOV AX,1E01h
SCRN:
STOSW
INC AL
LOOP SCRN
MOV AX,0FFFFh
HOME:
MOV SI,STRING
CALL WRD_ASC
MOV SI,STRING
MOV CX,29
MOV AH,74h
MOV DI,1280
SCRN1:
LODSB
STOSW
LOOP SCRN1
CONT2:
JMP CONT2 ; § жЁЄ«Ёў ­ЁҐ

WRD_ASC:
PUSHA
MOV BX,0F000h
MOV DL,12
MOV CX,4
CCCC:
PUSH CX
PUSH AX
AND AX,BX
MOV CL,DL
SHR AX,CL
CALL BIN_ASC
MOV BYTE PTR DS:SI,AL
INC SI
POP AX
SHR BX,4
SUB DL,4
POP CX
LOOP CCCC
POPA
RET
BIN_ASC:
CMP AL,9
JA LETTR
ADD AL,30h
JMP OK
LETTR:
ADD AL,37h
OK:
RET
;OUTSYM:
;;‚лў®¤ бЁ¬ў®« ; CR LF ­Ґ гз. ax - attr,sym, bx - x,y
; PUSH AX
; MOV AX,48
; MOV ES,AX
; MOV AL,80
; XOR AH,AH
; MUL BL;‚ AX - y*80
; MOV BL,BH
; XOR BH,BH
; ADD AX,BX
; MOV BX,2
; MUL BX
; MOV BX,AX;‚ BX - Ї®§ЁжЁп ў ЎгдҐаҐ
; POP AX
; MOV WORD PTR ES:BX,AX
; RETN
EXC0:
MOV AX,0
JMP HOME
EXC3:
MOV AX,3
JMP HOME
EXC10:
MOV AX,10
JMP HOME
EXC11:
MOV AX,11
JMP HOME
EXC12:
MOV AX,12
JMP HOME
EXC13:
MOV AX,13
JMP HOME
EXCDUMMY:
MOV AX,5555h
JMP HOME
codesize=$-sta
Написан для fasm.
В чем же ошибка?
2.9K
29 декабря 2002 года
NAIL
10 / / 29.12.2002
Mitja Gladkih не забивай себе голову всякой чухнёй, посмотри сдесь http://www.codenet.ru/progr/os/intro.php ,там есть простенький пример ядра,и мне кажется что оно написано вполне сносно и просто,и тем более намного меньше чем ты выложил сдесь:))
395
29 декабря 2002 года
RelB
367 / / 09.11.2002
Для начала поздравляю всех с наступающим Новым Годом! Хорошо вчера посидели, бошка болит, так что не сердитесь если я пишу коряво... (простите, что не в тему)

Посмотрел я на страничку и особо хорошего впечатления она у меня не оставила.... Мне кажется, ошибочно ОС разрабатывать с файловой системы. Достаточно для начала чтобы она работала на FAT. Это уж потом можно изобретать различные файловые системы под новую ось. Кстати, как MNDOS расшифровывается?

Ну, ща начну критиковать, люблю я енто дело :). Только без обид. Насчет утверждения, что таблица в середине диска уменьшает среднее время доступа к диску мне кажется ошибочным, т.к. существует такое понятие как КЭШ где можно енту таблицу хранить. А если без кэширования, то бедному дисководу придется "пролетать" еще и FAT, который посередине чтобы добраться до нужного сектора. Конечно, мое утверждение может быть ошибочным.
Кстати, почему только одна таблица на все логические диски, по моему это только усложнит работу с диском? А почему ты не хочешь использовать кластеры? С помощью них скорость заметно возрастает.

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

Жаль что доки только по ФС. Жду с нетерпением новых поступлений, чтобы хорошенько все раскритиковать :).
419
29 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by RelB
Для начала поздравляю всех с наступающим Новым Годом! Хорошо вчера посидели, бошка болит, так что не сердитесь если я пишу коряво... (простите, что не в тему)

Посмотрел я на страничку и особо хорошего впечатления она у меня не оставила....


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

Цитата:

Мне кажется, ошибочно ОС разрабатывать с файловой системы. Достаточно для начала чтобы она работала на FAT. Это уж потом можно изобретать различные файловые системы под новую ось. Кстати, как MNDOS расшифровывается?


Я не с Ф/С разрабатывал, просто это то, что успел изложить.(И хорошо представить:)) А ФАТ я не буду использовать.
Сейчас я обновил сайт, загляните, там и расшифровка, и обои другие.
Monosoft Ltd. Disk Operating System. Monosoft Ltd. - имя виртуальной компании, которая систему разрабатывает. Почему такое? Это личное. Связано с именем одной старой фирмы, которая здесь, в Таллине была... Считайте, просто нравится такое.

Цитата:

Ну, ща начну критиковать, люблю я енто дело :). Только без обид. Насчет утверждения, что таблица в середине диска уменьшает среднее время доступа к диску мне кажется ошибочным, т.к. существует такое понятие как КЭШ где можно енту таблицу хранить. А если без кэширования, то бедному дисководу придется "пролетать" еще и FAT, который посередине чтобы добраться до нужного сектора. Конечно, мое утверждение может быть ошибочным.


Я и так, и сяк прикидывал - быстрее выходит.

Цитата:

Кстати, почему только одна таблица на все логические диски, по моему это только усложнит работу с диском?


Нет, упрощает. Диск выглядит как однородная структура цепочек.

Цитата:

А почему ты не хочешь использовать кластеры? С помощью них скорость заметно возрастает.


Ну не нравятся они мне... Такой уж я есть...
Теи более, что это я обосновал на сайте.

Цитата:

Идем далее, что у нас по программе :)?. Посмотрел я исходник загрузчика, сильно не вдавался, особенно после того как увидел название главной функции (извините, но это более чем несерьезно).


Это о чем? а... MITJA PROC ... Это пока я один писал, так делал, щас поменяю, пардон... :(

Цитата:

Да и метки там какие-то не красивые, такое впечатление, что это выходной документ дизассемблера.


А я специально старался... :)

Цитата:

Жаль что доки только по ФС. Жду с нетерпением новых поступлений, чтобы хорошенько все раскритиковать :).


НЕ ВЫЙДЕТ!!!!
С наступающим!!!

419
29 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by NAIL
Mitja Gladkih не забивай себе голову всякой чухнёй, посмотри сдесь http://www.codenet.ru/progr/os/intro.php ,там есть простенький пример ядра,и мне кажется что оно написано вполне сносно и просто,и тем более намного меньше чем ты выложил сдесь:))


Там real mode система! Может, ссылка неправильная?

2.9K
30 декабря 2002 года
NAIL
10 / / 29.12.2002
Да нет ссылка правильная ,просто я в низкоуровневом програмирование плохо щарю,вот и не разбираюсь что там и где... Могу подкинуть ещё пару другую исходников операционнок ,да и ддокументации у меня немерено ,если что спрашивай.
424
30 декабря 2002 года
(C)dragon
307 / / 04.12.2002
О, если много всяких доков, то не мог ли ты подкинуть, как работать с дискетами и винтами через порты в защищённом режиме, а то этого почти нигде не найти.
419
30 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by (C)dragon
О, если много всяких доков, то не мог ли ты подкинуть, как работать с дискетами и винтами через порты в защищённом режиме, а то этого почти нигде не найти.


А у меня книги про это! Хы хы хы...

2.1K
30 декабря 2002 года
xkip
19 / / 09.12.2002
Здарова, перцы!
Как я рад шо нашел единомышленников!
Ну начнем с конца - я хочу участвовать в етом проекте!! :)

а терь по порядку
сам я тоже давно собираюсь написать ОС, но пока, так в черновиках.. причем не сами проги, а чисто идеи, о всяких там тонкостях.. :)

меня ща от етих форточек (win) колотит просто! (сквозняк наверно :) )

куча идей на высоком уровне (VirtualEngines, GraphicKerneel, даже CyberSpace)

я много с чем знаком, но в основном в теории..
желание льется через край! но времени мало..

RelB правильно заметил про важность организации обмена сообщений между прогами и ОС, я тоже ща над етим размышляю..

и про универсальность я с ним тоже согласен!
даже об фс - пусть у систмы будет новая фс, съевшая опыт предыдущих..
но есль прально организовать универсальость, шо стоит проинициализировать и замонтировать
тот же nfs, fat12-32, ntfs... да шо угодно :)
тоже касается любой железяки..

FS тоже свою думал, но ща еще полистаю Mitin's страничку..

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

еще 3 очень важных вопроса:
1) когда ОС запущина - все просто, надо с винт почитать - шлем msg to fsdriver.. ну и так со всеми..
а вот шо касается процесса загрузки - ведь драйвер FS еще незапущен, а ос грузить надо..
т.е. выходит надо создать временные сервисы, организующие работу винта..
ну ето тонкости загрущика..
практики у меня мало, поетому я уперся в етот вопрос..
просто получается шо или потом после загрузки ядра надо переинициализировать винт дровами, а фс-сис-сервис, используемый при загрузке, потереть.
Либо приручить ос к етому сервису, но может у ОС будет другая политика работы с железом..
Mitja, теска мой, раскажи, как ты с етим справился?

2) Тут пиплы сразу - задачи, шлюзы.. com-фрмат..
а я вот подумал, может лучше создать executable формат на подобе *.bat
типа общается месегами с ОС и др прогс.. делает все шо ей нужно как и в exe-com, pe-ne (ну bin форматы, так скажем :) ), НО! она несможет делать то шо нельза!
здесь гораздо легче повысить стабильность системы..
типа нельза лазить по памяти выделенной лругим прогам, тырить, или шо еще хуже - менять в них данные, незя топтать аппаратные порты - ето дело привелигированных модулей..
нельзя скакать по памяти.. (call far) для етого есть служба сообщений (msg)

я конешно понимаю, шо если писать на подобе BAT (типа opensource, как сразу в транслятор)
то сильно упадет скорость выполнения прог. Но в 90% времени прога будет ждать юзерских действий.. т.е. в среднем ето небудет сильно брасаться в глаза..

однако!
я знаю шо в большенстве описанных выше "запрещенных" действие прого (например про память) сработает GPE (Global Protection Error)
если в аритектуре ЦП мона указать так шобы и при обращении к портам GPE срабатывало, то разумеется отбросим BAT форматы, и остановимся на binо-образных :)
(я просто неимею подробной инфо по архитектуре в таких тонкостях..)

3) Всеже как будет оргинизовано распределение ЦП времени на задачи??
неужели просто при int8 (18 с хвостом раз в секунду) менять задачи по списку?
(гдето слыхал такой алгоритм)
или же будут навороты?

Немного о себе
Сам я поидее опытный прогер на VB6
знаком с ASM, архитектурой, ну вобщем всего понемногу..
как я и говорил - практики мало, больше знаю в теории..
тут на щет "грубостей,дерзостей" сразу замечу - может и я че грубого ляпну,
ну незна, такой у меня стиль, я стараюсь без обид писать..
также о стиле - может ето кажеться грубым, иногда я пишу свои идеи как бы в утверждениях, типа ожидая критики, а то скажут - "че ты нам порешь - сам нихера не знаешь"
вобщем если че в уме дописывайте: "...так штоли? или я не прав?" шобы ето не выглядело утверждением..

тут у вас и сайт и два форума, мыло, еще че-то..
основной, я полагаю, форум здсь? "...так штоли? или я не прав?" :)

сори за оффтопики..

вобщем, надеюсь мы друг другу пригодимся.. :)
Всех С Новым, типа, Годом :)

С уважением, xkip.
419
30 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by xkip
Здарова, перцы!
Как я рад шо нашел единомышленников!
Ну начнем с конца - я хочу участвовать в етом проекте!! :)

а терь по порядку
сам я тоже давно собираюсь написать ОС, но пока, так в черновиках.. причем не сами проги, а чисто идеи, о всяких там тонкостях.. :)

меня ща от етих форточек (win) колотит просто! (сквозняк наверно :) )

куча идей на высоком уровне (VirtualEngines, GraphicKerneel, даже CyberSpace)

я много с чем знаком, но в основном в теории..
желание льется через край! но времени мало..

RelB правильно заметил про важность организации обмена сообщений между прогами и ОС, я тоже ща над етим размышляю..

и про универсальность я с ним тоже согласен!
даже об фс - пусть у систмы будет новая фс, съевшая опыт предыдущих..
но есль прально организовать универсальость, шо стоит проинициализировать и замонтировать
тот же nfs, fat12-32, ntfs... да шо угодно :)
тоже касается любой железяки..

FS тоже свою думал, но ща еще полистаю Mitin's страничку..

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

еще 3 очень важных вопроса:
1) когда ОС запущина - все просто, надо с винт почитать - шлем msg to fsdriver.. ну и так со всеми..
а вот шо касается процесса загрузки - ведь драйвер FS еще незапущен, а ос грузить надо..
т.е. выходит надо создать временные сервисы, организующие работу винта..
ну ето тонкости загрущика..
практики у меня мало, поетому я уперся в етот вопрос..
просто получается шо или потом после загрузки ядра надо переинициализировать винт дровами, а фс-сис-сервис, используемый при загрузке, потереть.
Либо приручить ос к етому сервису, но может у ОС будет другая политика работы с железом..
Mitja, теска мой, раскажи, как ты с етим справился?

2) Тут пиплы сразу - задачи, шлюзы.. com-фрмат..
а я вот подумал, может лучше создать executable формат на подобе *.bat
типа общается месегами с ОС и др прогс.. делает все шо ей нужно как и в exe-com, pe-ne (ну bin форматы, так скажем :) ), НО! она несможет делать то шо нельза!
здесь гораздо легче повысить стабильность системы..
типа нельза лазить по памяти выделенной лругим прогам, тырить, или шо еще хуже - менять в них данные, незя топтать аппаратные порты - ето дело привелигированных модулей..
нельзя скакать по памяти.. (call far) для етого есть служба сообщений (msg)

я конешно понимаю, шо если писать на подобе BAT (типа opensource, как сразу в транслятор)
то сильно упадет скорость выполнения прог. Но в 90% времени прога будет ждать юзерских действий.. т.е. в среднем ето небудет сильно брасаться в глаза..

однако!
я знаю шо в большенстве описанных выше "запрещенных" действие прого (например про память) сработает GPE (Global Protection Error)
если в аритектуре ЦП мона указать так шобы и при обращении к портам GPE срабатывало, то разумеется отбросим BAT форматы, и остановимся на binо-образных :)
(я просто неимею подробной инфо по архитектуре в таких тонкостях..)

3) Всеже как будет оргинизовано распределение ЦП времени на задачи??
неужели просто при int8 (18 с хвостом раз в секунду) менять задачи по списку?
(гдето слыхал такой алгоритм)
или же будут навороты?

Немного о себе
Сам я поидее опытный прогер на VB6
знаком с ASM, архитектурой, ну вобщем всего понемногу..
как я и говорил - практики мало, больше знаю в теории..
тут на щет "грубостей,дерзостей" сразу замечу - может и я че грубого ляпну,
ну незна, такой у меня стиль, я стараюсь без обид писать..
также о стиле - может ето кажеться грубым, иногда я пишу свои идеи как бы в утверждениях, типа ожидая критики, а то скажут - "че ты нам порешь - сам нихера не знаешь"
вобщем если че в уме дописывайте: "...так штоли? или я не прав?" шобы ето не выглядело утверждением..

тут у вас и сайт и два форума, мыло, еще че-то..
основной, я полагаю, форум здсь? "...так штоли? или я не прав?" :)

сори за оффтопики..

вобщем, надеюсь мы друг другу пригодимся.. :)
Всех С Новым, типа, Годом :)

С уважением, xkip.



Так первое. Давайте все же писать по-русски - в смысле не шо, а что, иначе мне тебя трудно понять.
Главный форум здесь, но вопросы можно задавать и ТАМ. Про int 8. Это в Р/Р 8, в З/Р будет 32.
Буду просто менять, но таймер можно зпрограммировать и на более высокую частоту.
Программы будут в виде bin и exe, скрипты(batch) будут, но они не будут играть особой роли.
Работать с SLTFS очень просто - посмотри исходник загрузчика. А так пиши на e-mail - желательно знать твое имя.

419
30 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
RelB и все остальные! Я понял, как объяснить, что SLTFS лучше!
Рассмотрим систему без кэширования, диск не сильно фрагментирован - так и мне, и всем легче представить.
Представь: SLTFS в середине, FAT в начале.
1)При маленькой заполненности диска головкам накопителя(это самая медленная операция - xkip совершенно прав)при моей системе придётся "бегать" от начала диска к середине, при FATе - от начала до... начала, т.е. здесь FAT быстрее.
2)При средней заполненности диска при SLTFS головки ходят от середины к середине, при FATе - от начала к середине, т.е. SLTFS быстрее, т.е. в первых двух случаях FAT и SLTFS компенсируют друг друга.
3)При заполненности диска выше средней отметки:
при SLTFS головки бегают от середины в конец диска, а при FATе - от НАЧАЛА диска в КОНЕЦ, т.е
скорость FATа падает значительно быстрее в сравнении с SLTFS.

Недаром в старых системах - RSX и ОС-РВ(М)
SYSGEN позволяла(утилита - она)размещать спарвочник файлов(не могу уточнить, что это - думаю, корневая директория, но более полезная, чем сейчас)в середине, начале или конце диска - в зависимости от заполненности последенего.
Вот так!... С наступающим!
395
31 декабря 2002 года
RelB
367 / / 09.11.2002
Ну ладно, допустим, что твоя файловая система быстрее. А мне все равно, пока математически не докажешь, я не поверю :). Щас скажите, почему ты такой упрямый? Да не упрямый я, просто я не раз сталкивался в жизни с такими случаями когда свиду очевидные вещи кажется навскидку одними, а при математическом подходе все оказывается по другому.

Вот пример. Допустим, Земля имеет длину экватора, скажем, 40000 км. Если мы увиличим длину экватора на один метр, на сколько увеличится радиус Земли? У кого я не спрашивал все говорили: "Ну, да ваще не увеличится ни фига, да на тысячные доли миллиметра". А на самом то деле, он увеличится на 1/2pi метра, т.е. примерно на 16 сантиметров. Т.е. даже если бы длина окружности была сотни тысяч миллионов км, радиус бы все равно увеличился на 16 см. Конечно может для вас это сразу было понятно без мат. решения, но для обычных людей нет.
Сорри за оффтопик.

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

P.S. Всех с Наступающим!!!
419
31 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Ладно, я распишу в условных единицах времени, но это займет время :)
По-моему, все очевидно, перечитай еще раз мой пост... Я ж сказал, при SLTFS - от 40 дорожки до 80, при FAT - от 0 до 80! А насчет надежности - мне кажется, что Ф/С достаточно надежна, хотя могло быть и получше. Просто когда я ее разрабатывал, не было описаний других систем...
С Наступающим!
2.1K
31 декабря 2002 года
xkip
19 / / 09.12.2002
> Про int 8. Это в Р/Р 8, в З/Р будет 32.
ах, да забыл :) ето наверно гдето про искуственную многозадачность в Р/Р читал

> Буду просто менять,
А как же приотитеты?
Вобще я поначалу и сам также планировал, но в последующих релизах (которые свет увидит) придется учитывать приоритеты :)

Загрущик еще непочитал.
А про ФС:

На счет копий ФАТ:
При физическом повреждении диска (в первую очередь ето про флопов)
высока вероятность того, что повредяться сразу обе стороны.. я бы нестал делать копии напротив друг друга..

ПРО метки в ячейках ФАТ:
ну метка "00" ето понятно, на "00" у нас загрущик, а если там "01"? загрущик ты вроде хотел на 2 сектора..
и нащет "FFF", "FFE" - в FAT12 там торчит копия талбицы, а у нас выходит сюда ниче не запишешь!

вот из етих двух пунктов следует што копию выгодно держать в конце..

и ктомуже - ячейка может содержать метку на FAT!
а ето фигово: при случайном сбое и обращении к FAT как к файлу.., вдруг программа захочет стереть етот файл?
В любом случае будет неполноценное использование меток.. может тогда использовать смещение??

А ето приводит к сложности написания и лишним глюкам...
кстати, подумай, легко ли будет диск с такой ФС дефрагментировать??
нужно таскать файлы не в начало и попорядку, а в середину и равномерно распределять их по обе стороны..

кстати, подкинешь доков про HPFS?
че-то неслыхал.. полезно почитать..

Да, и справочники (папки) лучше наверно с середины записывать, рас уж там будет ФАТ.

Может всеже для начала поставим ФАТ в начало :)
Всетаки щас главное - ядро!

А потом обязательно доведем до ума, с ФАТ посреди диска! Сколько не выщитывай - так будет быстрее.
И я бы несказал што ето зависит от заполненности диска:
забили диск доконца, потом поудаляли почти все, остались файлы токо в конце. Т.е. диск заполнен мало, но при обращении к ним ФАТ будет проходить все дорожки (80), а SLTFS токо 40. Т.е. дело не в заполненности, а в расположении секторов файла. А ето можно при ращетах брать как среднюю величину, т.е. 40 - середина всего и 20, 60 - середина половин (а не середина-начало-конец) (даже если файл фрагментирован - среднее останется тоже, ведь куски могут быть разбросаны по всему диску)
дык вот:

TO| FAT; SLTFS
--------------
20| 20; 20
40| 40; 0
60| 60; 20

и того:
FAT: 120
SLTFS: 40

такие вот у меня вычисления :)

Ну конешно по теории вероятности, учитывая расположение файлов, ету разницу в движениях головками можно опровергнуть, уменьшить, но не до такой же степени :)
Ктомуже, читали Нортона "Праграммно аппаратная организация компьютера" 1982г?
про ФС я читал, што с таблицей посреди действительно более быстраю система, но ее сложно создать, много глюков, и используется токо на мощьных серверах, где етот ресурс критичен :)


Нужно также разобраться с основными принцыпами ядра, в данном случае - работа с железом
Помоему можно загрущик уместить в одном секторе, типа поиск и запуск ядра. в етом же секторе, например в конце, можно помещать инфу о диске - кликуха (label), разделы (если надо), сигнатура ФС..
Дык вот, а после запуска ядра, оно грузит drv для винта, и работает с винтом по всем своим принципам.. как и с любой железиной :)
т.е. остальное - дело ядра, и загрущик етим ножно не наворачивать :)

Загрущик еще не читал
на трезвую голову почитаю :)

С Новым Годом!
419
31 декабря 2002 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by xkip
> Про int 8. Это в Р/Р 8, в З/Р будет 32.
ах, да забыл :) ето наверно гдето про искуственную многозадачность в Р/Р читал

> Буду просто менять,
А как же приотитеты?
Вобще я поначалу и сам также планировал, но в последующих релизах (которые свет увидит) придется учитывать приоритеты :)


Да, я и сам вчера решил с приоритетами делать - нашел на полке книгу, когда елку ставил, "Проектирование операционных систем доля малых ЭВМ"1986. Я заглянул - все базовые понятия АБСОЛЮТНО ТАКИЕ ЖЕ, все подходит! Живем!!!

Цитата:

Загрущик еще непочитал.
А про ФС:

На счет копий ФАТ:
При физическом повреждении диска (в первую очередь ето про флопов)
высока вероятность того, что повредяться сразу обе стороны.. я бы нестал делать их напротив друг друга..


Не, будут напротив - дискета вообще вещь ненадежная, а если повреждения такие, что насквозь :), то данные не считать. А повредить диск можно в любом месте. Если они напротив, так проще при повреждении и т.д.

Цитата:

ПРО метки в ячейках ФАТ:
ну метка "00" ето понятно, на "00" у нас загрущик, а если там "01"? загрущик ты вроде хотел на 2 сектора..
и нащет "FFF", "FFE" - в FAT12 там торчит копия талбицы, а у нас выходит сюда ниче не запишешь!


С ума сойду - не понимаю ни слова. Где копия?
FFF - 4095, на дискете всего 2880?!

Цитата:

вот из етих двух пунктов следует што копию выгодно держать в конце..

и ктомуже - ячейка может содержать метку на FAT!
а ето фигово:


А ни фи*а: менеджер файловой системы не позволит туда ничего записать - все обращения к секторам
будет фильтроваться, проги доступ к Таблице не заимеют!!! Главный аспект безопасности - фильтрация системой вызовов записи!

Цитата:

1) при случайном сбое и обращении к FAT как к файлу.., вдруг программа захочет стереть етот файл?
В любом случае будет неполноценное использование меток.. может тогда использовать смещение??


Поясни про метки и смещение - не понимаю ни слова... То ли праздник так действует!?

Цитата:

кстати, подкинешь доков про HPFS?
че-то неслыхал.. полезно почитать..


Где-то английский был. Поищу.

Цитата:

Да, и справочники (папки) лучше наверно с середины записывать.


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

Цитата:

Нужно также разобраться с основными принцыпами ядра, в данном случае - работа с железом
Помоему можно загрущик уместить в одном секторе, типа поиск и запуск ядра. в етом же секторе, например в конце, можно помещать инфу о диске - кликуха (label), разделы (если надо), сигнатура ФС..


В два не поместится. Хотя можно попробовать. А про таблицу томов я на сайте написал - может и во второй сектор запихну.

Дык вот, а после запуска ядра, оно грузит drv для винта, и работает с винтом по всем своим принципам.. как и с любой железиной :)
т.е. остальное - дело ядра, и загрущик етим ножно не наворачивать :) А он и не наворачивается. Там драйвера нет, только две простеньких функции...
:)

Цитата:

С Новым Годом!


Вас также!

2.1K
31 декабря 2002 года
xkip
19 / / 09.12.2002
хехе)
Написал, потом сидел исправлял :)
а пока исправлял пришел ваш ответ :)
так што почитайте еще раз - там есть кое чего нового :)
2.1K
01 января 2003 года
xkip
19 / / 09.12.2002
ну че там???
я самый трезвый шоли?

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

> А повредить диск можно в любом месте.
> Если они напротив, так проще при повреждении
> и т.д.

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

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

т.е. полюбому, в разных местах выгодней..
хотя я неспорю.. в ФАТ шобы обратиться к резерву надо из одного конца в другой перется..
а тут токо с другой стороны диска глянуть (шо на порядок бустрее), но согласись, к резерву довольно редко приходится обращаться :)
однако повредить его... хорошего мало!

> С ума сойду - не понимаю ни слова.
> Где копия? FFF - 4095, на дискете всего 2880?!

да, я наверно попутал :) надо есчо доков почитать (или перечитать - давно читал-то) :) но ето такое у меня сложилось впчатление..
после первого прочтения..

> А ни фи*а: менеджер файловой системы не
> позволит туда ничего записать

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

> Поясни про метки и смещение - не понимаю
> ни слова... То ли праздник так действует!?

да, на меня тоже наверно празник действовал.. :)
вобщем про метки я попутал - я хотел сказать ячейки :) в таблице фат

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

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

> Где-то английский был. Поищу.
угу, плиз поищи, непомешает познакомиться.. :)
eng - непроблема :)

> Там драйвера нет, только две простеньких
> функции...

а вот ето зря.. вот протрезвею, дык мысли свои напишу!

ну лано!
там еще почитай разок старый пост, я его едит!

типа тем, у кого еще небыло НГ, последний раз говорю, "С Новым Годом!!" (ето относится к лондону и америке :) хотя пока писал уж наверно и в лондане прошли празники :) а в америке токо девятый час..

вобщем удачччи всем в 2003!!
салют, сисрайтеры! :))
2.7K
02 января 2003 года
matt
5 / / 22.12.2002
Посмотри книгу У.Девис. Операционные системы. Функциональный подход. Издательство "Мир" 1980. Книга старая, но много интересных концепций...

Удачи в темных делах!
419
03 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by matt
Посмотри книгу У.Девис. Операционные системы. Функциональный подход. Издательство "Мир" 1980. Книга старая, но много интересных концепций...

Удачи в темных делах!


Спасибо!
Моя С.Кейслера, толщиной сантиметров 5.
Вот я и прос вою также думаю - хоть и старая, но все полезное.
Спасибо за посты, буду читать. Залезте на сайт - он обновился!!!

2.3K
03 января 2003 года
YuZeR
6 / / 03.01.2003
Hello All, с наступившим вас! Подскажите, плз, что необходимо знать, чтобы написать операционную систему. Буду признателен, если подскажите литературу по данной теме. Заранее спасибо.
419
03 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by YuZeR
Hello All, с наступившим вас! Подскажите, плз, что необходимо знать, чтобы написать операционную систему. Буду признателен, если подскажите литературу по данной теме. Заранее спасибо.


Нужно на ШЕСТЬ знать аппаратную организацию компьютера, свойства, задачи О/С, устройство других и Ассемблер, конечно.
Теперь:
xkip!
Не понял сути твоих речей о смещении меток и тому подобном. Если речь о SLTFS12, там избыточность.
Если о SLTFS16, то вряд ли диск будет именно 65536 секторов+размер Таблицы. Тогда лучше уж поставить SLTFS32.

419
03 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Кстати, xkip!
Дефрагментатор будет простым. А размещение файлов/спарвочников файлов как можно ближе к центру - задача файлового менеджера, это все будет.
На сайте системы я обновил документ о тех.подр.
419
03 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Вот я сел в калошу-то! !@#$%^&*
Планировал я размещать Таблицу по одну сторону диска, копию-по другую. И представлял дискету.

(Кстати, в этой идее надо, чтобы хоть одна сторона была цела, если диск насквозь - работать не будет ни за каие коврижки! В MS-DOS в этом случае пишется "Испорчена дорожка 0. Дальнейшее использование диска невозможно.")

Ну так вот. Про конфуз-то. В начале хотел, чтобы сектора нумеровались так - все сетора на дорожке, ротом след. дорожка. Когда последняя, дорожка 0, головка - следующая. НО: Пишу-то я на диск при помощи DiskEditor, а он, как и MS-DOS считает сектора так : Вначале все сектора дорожки на одной головке, на след., только затем переход на следующую дорожку. Значит, Таблица будет располагаться гармошкой и по ту сторону диска, и по эту. Но скорость будет той же - ведь вероятно, что сектора файла будут и по ту сторону диска, и по эту. По длине треков Таблица будет разделена пополам, и записана по середине с точночтью до дорожки. Это даже лучше, ведь в совр. Дисках на 0 и последнем треке различное число секторов на дорожку. А копия будет храниться рядом.
Думать надо было головой, пардон, друзья! Но изменений никаких.
Так! xkip!
Понимаешь, для защ. и реального режимов нужны соответственно 32 и 16 битный драйвера. Не имеет смысла писать полноценный 16-битный драйвер, если он исп. только в загрузчике! А в вирт. режиме используются тоже 32 битные драйвера, только через опр. фильтры. Ну что ж, идем далее!?
3.0K
03 января 2003 года
alex2048akaPAQ
2 / / 03.01.2003
Да! Хорошая идея! Чтобы не какой-нибудь линукс, или аналогичный тормоз, а так, чтобы шел на ХТ с 256 КБ памяти!
Но отойдем от громких слов. Конечно, если собраться вместе, человек так двести, то, конечно, можно создать что-нибудь, но ведь тот же "Micr0Soft" :-) состоит не из одного Гейтса. Да и IBM тоже...
Однако, Торвальдс создал свой юникс за четыре года. И что получилось спустя несколько лет - видите сами.
По-моему, если создавать - то какую-нибудь ДОС-систему с поддержкой FAT32, CD-ROM и прочими прибамбасами. Ведь сейчас все подстраиваются под тот же WinNT (Neadertalus Technology :) ). И мы - с ними.
Кстати, скажу по-секрету: такая же утопическая идея есть на dospage.by.ru , с которой я немного согласен (кстати, там есть ссылочка на мой ресурс ;-) )
419
05 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by alex2048akaPAQ
Да! Хорошая идея! Чтобы не какой-нибудь линукс, или аналогичный тормоз, а так, чтобы шел на ХТ с 256 КБ памяти!
Но отойдем от громких слов. Конечно, если собраться вместе, человек так двести, то, конечно, можно создать что-нибудь, но ведь тот же "Micr0Soft" :-) состоит не из одного Гейтса. Да и IBM тоже...
Однако, Торвальдс создал свой юникс за четыре года. И что получилось спустя несколько лет - видите сами.
По-моему, если создавать - то какую-нибудь ДОС-систему с поддержкой FAT32, CD-ROM и прочими прибамбасами. Ведь сейчас все подстраиваются под тот же WinNT (Neadertalus Technology :) ). И мы - с ними.
Кстати, скажу по-секрету: такая же утопическая идея есть на dospage.by.ru , с которой я немного согласен (кстати, там есть ссылочка на мой ресурс ;-) )


Не смущай народ. Конечно, это трудно, но никто и не говорит, что легко.
А я и моя система ни под кого не подстраивается. Будет поддержка их особенностей, но не более. А IBM нам не страшен!!! Нас больше!!!
Кстати, все! Заходите на сайт, обновил описание ситемы, добавил кое-что!

419
05 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Кстати! Не забывайте, что моя система - система ЗАЩИЩЕННОГО РЕЖИМА!
Она действительно мультизадачная. В релизах планируется и многопользовательность.
Господи, словечки, чЕРТ ногу сломит.
Да,да,да! Вы путаете! MN-DOS совсем другая О/С, она графическая, мультизадачная, а не монозадачная с резидентами. ДОС - потому что Дисковая О/С, а не потому что реального режима ! Не путайте сами и не смущайте народ!
Да, и она будет идти только как минимум, на 386 - она использует специфичные ресурсы М/П!
395
05 января 2003 года
RelB
367 / / 09.11.2002
Всем привет!

Мдааа, почитал я тут тех. документацию по MN-DOS и у меня родилось впечатление, что надо переработать ее еще более основательно :). Только не обижайтесь на меня, такой уж у меня трудный характер :).

Начнем с диспечеризацией задач. Там я много слышал о PID и других интересных вещицах, НО мне ужастно не понравилось, что PID - 1 байт, система ведь, как я понимаю, 32-х битная и процессору гораздо проще оперировать с 32-х битными операндами нежели с байтами. Потом насчет виндовса, я вот у себя посмотрел - 28 процессов и самое большое значение - 1736, так что не знаю почему у Вас там так много. Ну даже если там и такие большие значения, PID же в Виндовс 32-х битный, поэтому значений все равно надолго хватит.
Идем далее, я тут посмотрел повнимательнее и вообще ужаснулся, привык то я, что процесс порождает задачи, потоки, треды или как хотите называйте (вообщем treads), а не наоборот. Все треды по сути для процессора отдельная задача, так что 256 задач (или, как я понял у Вас, процессов) уж точно не хватит (у меня щас 320 тредов работает). Идем далее, как вычисляется квант времени, ну или поставлю по другому вопрос, в каком случае задача/процесс прерывается и процессор предоставляется другому? Теперь о очереди процессов на исполнение. Мне показалось, что алгоритм, может и крутой, но тормозной. Мне кажется, проще (для начала) выделить минимальный квант времени и в соответствии с приоритетом каждому процессу выделять количество квантов равное значению приоритета. Конечно этот алгоритм не притендует на крутизну, он даже наверное самый простой который только можно было придумать, но зато он быстрый и надежный, для начала предлагаю использовать его, чтобы упростить ПОКА(!) это довольно тонкое место, а уж потом его начать перерабатывать и отшлифовывать. Для начала ведь необходимо добиться хоть какой-то работоспособности ядра, ведь если мы будем сразу все по сложному делать, то разработка затянтся на долго.
Далее, необходимо задумываться о том, что в GUI системах большинство процессов только одно и делают, что ждут реакции пользователя, поэтому необходимо предусмотреть, чтобы этим процессам процессорное время не предоставлялось, пока не будет на это необходимости. Еще, чуть не забыл, как вы интересно будете передавать данные между процессами с помощью одних блокировок, семафоров и событий?
Теперь о памяти. Мы же программируем в защищенном режиме, а там задача дефрагментации памяти уже решена на аппартном уровне. Ведь есть такая очень даже хорошая вещь (спасибо Intel) как страничная организации памяти. Зря Вы там выдумываете всякие алгоритмы, которые только замедлят скорость, если есть такое простое решение.
Посмотрел я на последний абзац и понял, что все что я писал выше вообще ни кому не нужно, потому что автор, сам запутался, кто главный - процесс или задача. Все таки я предлагаю четко разделить такое понятие как задачи и процессы!!! Без этого разделения, все разговоры о ядре будут идти впустую.

Ну вот и все, жду дальнейших поступлений, Удачи!!!
2.8K
06 января 2003 года
Athlon4XP
8 / / 04.01.2003
Цитата:
Originally posted by Mitja Gladkih
Кстати, что такое Copyleft under GNU,FSF?
Млжет, кто с дизайном поможет. То ли я дальтоник, то ли у меня супер-пупер-мега освещение в комнате и монитор, но мне кажется все нормальным...



S disainom pomoch mogy! Tolko ne garantipyu chto bydet lychshe, chem y "Microsoft" :D Vsy info ia vozmy s syshestvyushego web'a.

Esli nado pishi: [email]grigorey@msn.com[/email]
:D

419
06 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Так, про сайт - теперешний обновленый дизайн мне вполне нравится.
RelB! Много говорил, мало толкового сказал!
Такое большое число - 65536 там и т.д. я привел для примера, что номера разорваны.
256 должно хватить! Не хватит - расширю до двух байт. А про задачи и процессы я ничего не путаю!
В самом начале статьи я написал свои понятия этих терминов. Видимо, это ты сам запутался из-за моего нестандартного их использования. А алгоритм дефрагментации не новый, а отработанный на PDP и IBM, EC-1040 и т.д.(если Ты думаешь, что эти машины надо сдавать в металлолом, а особенно, СМ-1420, мы может по почте поспорить, но тогда держитесь, братцы :)
В начале страницы не будут использованы, будет использована линейное представление,(но ведь пределы памяти от этого не изменяются, все равно 4Гб?!) но это можно исправить, если потребуется. А с каталогом страниц пока возиться не буду, посмотрим, как моя, пардон, наша системка запашет!
Ведь вы все на меня набрасывались, мол, зачем свою Ф/С делать, давай для начала упростим и возбмем FAT, теперь моя очередь упрощать :) Вначале отладим простую модель, потом и страницы.
Кстати, дефрагментатор памяти будет запускаться либо через определенные промежутки времени, либо при нехватке памяти. Спасибо за внимание.
395
07 января 2003 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by Mitja Gladkih
RelB! Много говорил, мало толкового сказал!
Такое большое число - 65536 там и т.д. я привел для примера, что номера разорваны.
256 должно хватить! Не хватит - расширю до двух байт. А про задачи и процессы я ничего не путаю!
В самом начале статьи я написал свои понятия этих терминов. Видимо, это ты сам запутался из-за моего нестандартного их использования.



Ну раз так, я приведу выдержки с твоего сайта

Цитата:
Задача - программа, загруженная в память ЭВМ, и исполняющаяся(м.б. ждущая)/готовая к исполнению. Каждая задача состоит из одного или нескольких процессов. Все процессы задачи имеют приоритет задачи.


Ну тут все ясно, далее, в последнем абзаце идет следующее

Цитата:
В системе будут предусмотрены функции дополнительного выделения памяти, т.е. задача может увеличить свой сегмент ДАННЫХ в процессе исполнения. Эти "добавки" будут зарегистрированны с использованием PID главного процесса задачи.


Хорошо, скажи что такое главный процесс задачи? До этого ничего о нем не говорилось.

Далее зачем PID использовать 1,2-х байтные??? Это только замедлит скорость!!! Современные процессоры ориентированы на 32-х битные операнды! Вот именно это было моей главной мыслью.

Цитата:
А алгоритм дефрагментации не новый, а отработанный на PDP и IBM, EC-1040 и т.д.(если Ты думаешь, что эти машины надо сдавать в металлолом, а особенно, СМ-1420, мы может по почте поспорить, но тогда держитесь, братцы :)
В начале страницы не будут использованы, будет использована линейное представление,(но ведь пределы памяти от этого не изменяются, все равно 4Гб?!) но это можно исправить, если потребуется. А с каталогом страниц пока возиться не буду, посмотрим, как моя, пардон, наша системка запашет!
Ведь вы все на меня набрасывались, мол, зачем свою Ф/С делать, давай для начала упростим и возбмем FAT, теперь моя очередь упрощать :) Вначале отладим простую модель, потом и страницы.
Кстати, дефрагментатор памяти будет запускаться либо через определенные промежутки времени, либо при нехватке памяти. Спасибо за внимание.

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

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


Ну раз так, я приведу выдержки с твоего сайта

Ну тут все ясно, далее, в последнем абзаце идет следующее

Хорошо, скажи что такое главный процесс задачи? До этого ничего о нем не говорилось.



Ну... это...Если задача состоит из одного куска, это и есть главный процесс. Если к программе добавить подпрограммы, все равно, главный процесс - тот же основной код.

Цитата:

Далее зачем PID использовать 1,2-х байтные??? Это только замедлит скорость!!! Современные процессоры ориентированы на 32-х битные операнды! Вот именно это было моей главной мыслью.


Ясно. Просто мне байтовое представление кажется более логичным.

Цитата:

А мне все равно кажется проще использовать страницы. И быстрее и мороки не много, особенно если для всех задач используется один каталог страниц. Потом, когда начнешь менять все это дело, не придется ли менять вообще все? Далее, при такой организации памяти система будет как раз похожа на ДОС :),


ОПЯТЬ!!!!! Говорите MS-DOS!!!!! "DOS" - аббревиатура!!! Ух, ка я зол....:(

Цитата:

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


Взаимно.

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

Взаимно.


:D :D

395
09 января 2003 года
RelB
367 / / 09.11.2002
Я тут решился написать по поводу SLTFS. Вот я подумал так случайно и понял, что если ее использовать, то это большой шаг в сторону от всех имеющихся стандартов, потому что все разделы диска могут быть только SLTFS, а это очень плохо, т.к. нельзя будет иметь на одном диске разделы с разными файловыми системами, а значит иметь и разные операционки на одном диске. Ну вот и все что я хотел сказать :), есть какие-нить комментарии?
424
09 января 2003 года
(C)dragon
307 / / 04.12.2002
Придёться тебе переделывать ФС, т.к. никто не захочет ставить себе на комп одну малоизвестную систему. Таблица секторов должна быть своя для каждого раздела - это правило существует для всех файловых систем.
363
09 января 2003 года
Michael
132 / / 20.07.2000
Митя по теме GNU; FSF и GPL ты можешь почитать gnu.org //Жалко, русской версии нет!

- RelB, ты молодец! Так держать, коллега! -

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

С уважением!
395
09 января 2003 года
RelB
367 / / 09.11.2002
2Michael: Спасибо, только вот за что, если не секрет :)?.

Еще вопрос к Мите. Решил ли ты проблему определения полного объема физической памяти? Вот например у меня 256Мб, как мне определить что у меня ее стока? Ни где не нашел, максимум, на что БИОС и ЦМОС способны это 64 МБ. Пробовал просматривать всю память чтением/записью чего то не выходит.
419
09 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by RelB
2Michael: Спасибо, только вот за что, если не секрет :)?.

Еще вопрос к Мите. Решил ли ты проблему определения полного объема физической памяти? Вот например у меня 256Мб, как мне определить что у меня ее стока? Ни где не нашел, максимум, на что БИОС и ЦМОС способны это 64 МБ. Пробовал просматривать всю память чтением/записью чего то не выходит.


Не, не знаю. Наверно буду, как в Mandrake, просить юзера ввести объём памяти.
А насчет Ф/С - кто сказал, что для каждого раздела своя таблица, что -это неисанное правило, а? Мне кажется это оптимальным вариантом.

А поддержка других Ф/С будет, это естественно. Но наверно, в версии 1.5, 2.0 - не раньше. А Ф/С такова, что для ее нормального функционирования нельзя "приспособиться" к FAT или другим Ф/С. Надо чем-то и жертвовать. Зато после моей системы fdisk как по маслу пойдет. А то удалить Линукс - проблема... То имена разделом не той кодировкой, разными буквами, вроде AbcD_EfghiJK, то sys.com загрузчик никак выкинуть не может, хотя и пишет, что все ОК...

419
09 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by Michael
Митя по теме GNU; FSF и GPL ты можешь почитать gnu.org //Жалко, русской версии нет!

- RelB, ты молодец! Так держать, коллега! -

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

С уважением!


Ребята! Я в английских аббревиатурах не силен, в-основном использую их русские аналоги. Что такое GNU,FSF,GPL?

419
09 января 2003 года
Mitja Gladkih
284 / / 19.12.2002
Цитата:
Originally posted by (C)dragon
Придёться тебе переделывать ФС, т.к. никто не захочет ставить себе на комп одну малоизвестную систему. Таблица секторов должна быть своя для каждого раздела - это правило существует для всех файловых систем.


Ну да... Но ведь Линукс тоже был малоизвестной системой, которая сначала вряд ли могла сосуществовать с другими О/С, Mac/OS вроде тоже...

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