ОС на FPC

Обсуждение идей, архитектуры и проектов (как существующих, так и разрабатываемых).

Модераторы: Рождённый_в_СССР, Модераторы

Re: ОС на FPC

Сообщение pasm » 15.05.2009 02:57:47

Mr.Smart писал(а):На fpc неполучится откомпилировать в 6 разрядном режиме.


А кокой компилятор паскаля позволяет выполнить такую задачу ??? (это конечно не имеет отношение к FPC, но к теме "Операционная система" немного имеет... )
pasm
незнакомец
 
Сообщения: 4
Зарегистрирован: 14.05.2009 22:37:00

Re: ОС на FPC

Сообщение Mr.Smart » 15.05.2009 11:40:45

Turbo Pascal, Quick Pascal :wink:
Mr.Smart
долгожитель
 
Сообщения: 1797
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: ОС на FPC

Сообщение pasm » 15.05.2009 16:59:10

Mr.Smart писал(а):Turbo Pascal, Quick Pascal :wink:



Turbo Pascal - точно позволяет это делать ? я что-то не вижу как даже com-файл сделать :cry:
там еще были опции {$? +/-} - может как-то ими можно ? но эти опции и есть вроде все ниже...


Код: Выделить всё

Turbo Pascal  Version 7.0  Copyright (c) 1983,92 Borland International
Syntax: TPC [options] filename [options]
  -B = Build all units                -L = Link buffer on disk
  -D<syms> = Define conditionals      -M = Make modified units
  -E<path> = EXE/TPU directories      -O<path> = Object directories
  -F<seg>:<ofs> = Find error          -Q = Quiet compile
  -GD = Detailed map file             -T<path> = TPL/CFG directory
  -GP = Map file with publics         -U<path> = Unit directories
  -GS = Map file with segments        -V = Debug information in EXE
  -I<path> = Include directories      -$<dir> = Compiler directive
Compiler switches: -$<letter><state>  (defaults are shown below)
  A+ Word alignment       I+ I/O error checking   R- Range checking
  B- Full boolean eval    L- Local debug symbols  S+ Stack checking
  D- Debug information    N- 80x87 instructions   T- Typed pointers
  E+ 80x87 emulation      O- Overlays allowed     V- Strict var-strings
  F- Force FAR calls      P- Open string params   X+ Extended syntax
  G+ 80286 instructions   Q- Overflow checking
Memory sizes: -$M<stack>,<heapmin>,<heapmax>  (default: 16384,0,655360)
pasm
незнакомец
 
Сообщения: 4
Зарегистрирован: 14.05.2009 22:37:00

Re: ОС на FPC

Сообщение Sergei I. Gorelkin » 15.05.2009 17:17:46

Требованию 16-битности он удовлетворяет, а вот остальному едва ли.
Мы в далекие времена использовали компилятор Borland С++, который позволял задать tiny модель памяти, а потом результат обрабатывали утилитой exe2bin.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1378
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: ОС на FPC

Сообщение pasm » 15.05.2009 18:56:11

Sergei I. Gorelkin , а как создать tiny модель ?
прочитал что в тини модели по всей видимости не поддерживаются:
а что же там тогда останется :(

When using TinyRTL in your programs you can't use all the features that
the standard RTL has. Here's a list of removed features:

- All System unit procedures, such as WriteLn
- All runtime error checks (you have to use {$R-,S-,Q-,I-} mode)
- Return codes (ignore the runtime error messages that IDE shows)
- Floating-point data types (you have to use {$N-,E-} mode)
- Heap manager (allocate memory using DOS calls)
- String handling routines (including the + operation)
+ Some of the LongInt operations: *, /, shr, shl (they still work with Integer)
+ Large variable assignments (that involved a procedure call)
+ Virtual methods




удалось найти утилиту только exe2bin с freedos от Watcom,
пишет что у вас присутствует сегмент стека ... видать тини не получился...

в те далекие времена по крайней мере знали архитектуру компьютера и процессора...
а сейчас уже никого не волнует что там внутри делается...
pasm
незнакомец
 
Сообщения: 4
Зарегистрирован: 14.05.2009 22:37:00

Re: ОС на FPC

Сообщение Sergei I. Gorelkin » 15.05.2009 20:39:41

Tiny модель памяти и TinyRTL - совсем разные вещи :)
Зачем вообще понадобился 16-битный код?
Если это загрузчик для OC (кстати, он отнюдь не с нулевого адреса грузится на PC), его дешевле взять готовый. Ну или на ассемблере написать, как собственно все и делают.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1378
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: ОС на FPC

Сообщение Anat731 » 24.05.2009 11:39:20

Это совершенно здравая идея "Создать маленькую простенькую ОС на языке высокого уровня из группы АЛГОЛо-подобных, хотя бы и паскаль (язык си не относится к таковым)". Инструментальной платформой может быть и MS W32. Это нужно в связи с тем, что часто возникает нужда бысто создать простую дешёвую программу для нестандартного компьютера (например, контроллера какого-то устройства на базе i386). Подобные вещи уже делались. Известна система Modula-2 Николаса Вирта, состоявшая из транслятора для языка Modula-2, а также набора языковых модулей, реализующих основные функции ОС. Кроме того имелся модуль ядра системы, написанный на Ассемблере целевой машины. Компоновщик объединял полученные на трансляторе объектные модули нужных модулей (системных и модулей разрабатываемой задачи) вместе с объектным модулем ядра.
Созданный компоновщиком загрузочный модуль в кодах машины-исполнителя годился для загрузки в голую машину (пустую, содержащую только загрузчик кода). С этой системой мне приходилось работать.
Подобная система может быть и универсальной: достаточно написать на ассемблере конкретной машины только коды для ядра ОС и загрузчика кода.
Примитивами (основными функциями) ядра ОС являются: очередь процессов, запуск и остановка процессов, переключение контекста от одного процесса к другому, реакция на внешние прерывания процессов, создание процессов. Все остальные желаемые функции создаваемой конкретной ОС могут программироваться на языке высокого уровня. Да, нужно еще написать на ассемблере библиотеку, используя которую, можно вызывать примитивы ядра из языковой программы.
Вообще говоря, меня интересуют до сих пор подобные проекты.
Неясно пока, годится ли для такого проекта язык freepascal?

Добавлено спустя 11 минут 10 секунд:
Хочу добавить. Чтобы создавать коды под любой процессор, вы сами можете на языке freepascal написать транслятор с любого вымышленного Вами (для конкретной задачи) языка на язык Ассемблера нужного Вам процессора. Подобные разработки я делал.
Anat731
незнакомец
 
Сообщения: 1
Зарегистрирован: 22.05.2009 07:51:21

Re: ОС на FPC

Сообщение kikiriki0 » 23.11.2009 19:29:37

разработка ОСи заморожена? :(
kikiriki0
незнакомец
 
Сообщения: 6
Зарегистрирован: 18.02.2009 05:07:13

Re: ОС на FPC

Сообщение Mr.Smart » 23.11.2009 20:29:45

Mr.Smart
долгожитель
 
Сообщения: 1797
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: ОС на FPC

Сообщение kovinik » 08.04.2010 10:53:44

Надо писать ОС под разные платформы, а не только под ПС. например под MCS-51.
Обязательно с поддержкой многозадачности (физической или виртуальной неважно) как на уровне ОС так и компилятора.
Отсюда вывод и ОС и компилятор должны быть ориентированы друг на друга.
Это можно легко сделать с помощью асма, но трудно на FPC.
Если получится придумать универсальную ОС то и компилятор FPC надо переделать под нее. (или создать новый).
Иначе асм.
Кстати у меня есть операционка простая под конроллер. Естественно GUI там нет.
Написана на асм. хотя можно написать на паскале, только не генерирует он 'правильный' код,
а без 'правильного' кода ОС невозможна в принципе.

Добавлено спустя 11 минут 55 секунд:
вообще можно написать, что угодно, только зачем ?

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

опыт показывает ос и компилятор взаимозависимы. а также 'железо'.
только концепции и алгоритмы общие. реализация разная.
kovinik
незнакомец
 
Сообщения: 5
Зарегистрирован: 07.04.2010 14:18:34

Re: ОС на FPC

Сообщение Fluffy » 13.06.2010 09:55:28

зачем писать какую-то ОС, все равно лучше виндовса и линукса не сделать, если уж захотелось ОС сделать, лучше делайте на базе линукса как мандрива :)
Аватара пользователя
Fluffy
незнакомец
 
Сообщения: 5
Зарегистрирован: 12.06.2010 23:07:35
Откуда: Новосибирск

Re: ОС на FPC

Сообщение NXP » 13.06.2010 11:19:13

Fluffy писал(а):если уж захотелось ОС сделать, лучше делайте на базе линукса как мандрива

Ой не надо. Уже наелись, этим поголовьем Linux'ов :D
Чем больше поголовье, тем меньше шансов у каждого из них занят доминирующее место, и соответственно привлечь простых блонд-лузеров.

Я бы хотел, простую ОС, вернее ядро типа "все в одном", являющуюся частью RTL приложения. Примером такого приложения служит ядро memtest, ramdisk которые запускаются через GRUB.
На С сложно и долго сделать что-то нужное, в таком виде. А вот если была бы простая и понятная заготовка на Pascal, все бы значительно упростилось.
Это была бы большая фора для компьютерных контроллеров, и однозадачных серверов, особенно если задача не сложная, но решить ее надо быстро и надежно.
Аватара пользователя
NXP
постоялец
 
Сообщения: 187
Зарегистрирован: 02.01.2008 16:11:56
Откуда: Воронеж

Re: ОС на FPC

Сообщение Fluffy » 13.06.2010 14:03:44

понятно, я если честно мало разбираюсь в ОС, просто решил сумничать )) мне вот например убунта вообще не нравится, зато мандрива... удобная, красивая...
Аватара пользователя
Fluffy
незнакомец
 
Сообщения: 5
Зарегистрирован: 12.06.2010 23:07:35
Откуда: Новосибирск

Re: ОС на FPC

Сообщение NXP » 13.06.2010 21:47:33

зато мандрива... удобная, красивая...

... и глюченная :D

Мандрайцы (не в обиду) действительно мало разбираются в ОС.
От себя добавлю, что наилучшей гибкостью, серьезностью, проработанностью, эргономичностью обладает только один дистрибутив - openSUSE. Пусть он не суперстабильный как SLES/SLED но это дань новаторству.
ЗЫ Мандриву на днях продавали, потом не продавали, потом хз. Вещь которая пошла по рукам - не вещь 8)
Аватара пользователя
NXP
постоялец
 
Сообщения: 187
Зарегистрирован: 02.01.2008 16:11:56
Откуда: Воронеж

Re: ОС на FPC

Сообщение Fluffy » 13.06.2010 22:02:58

я мало разбираюсь в ОС, по мне лучше манлрива :) мне все равно она только для проверки сделанных программ ))
Аватара пользователя
Fluffy
незнакомец
 
Сообщения: 5
Зарегистрирован: 12.06.2010 23:07:35
Откуда: Новосибирск

Пред.След.

Вернуться в Операционная система

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru