[fpc-pascal]OS develing.

Marco van de Voort marcov at stack.nl
Sat Dec 29 20:56:21 CET 2001

> It seems that my biggest enemy is the 'system' unit... From the
> description, it seems that it is loaded IMPLICITLY by the compiler with
> no "uses" statement. This is doublepluss ungood because My OS design is
> about a 180 degree departure from what the current system unit does, How
> do I get the compiler to require the system unit be loaded explicitly?

You can't.

However, not all in System is required.

See rtl/fakertl and rtl/template for examples of ultra tin System.

Note however that certain parts of the System unit are necessary for 
certain language features:

- Nearly all string handling needs external routines in System
- Certain Set operations do.
- File IO does, and with that writeln and readln.
- coprocessor (floating point types)
- int64 handling
- Nearly all delphi language extensions need help (provided in pseudo system
	 unit objpas)

IOW that unit IS mandatory. However its contents and their implementation
are only for a small part.

If you move certain parts of the system unit (like e.g. memory management,
which is a "larger" part) to the kernel, the system unit can be very thin.

More information about the fpc-pascal mailing list