Difference between revisions of "User:AlexVinS/Packages"

From Free Pascal wiki
Jump to navigationJump to search
Line 1: Line 1:
 
==Some ideas on library [[packages]] design==
 
==Some ideas on library [[packages]] design==
 
* New system ''lib''.  
 
* New system ''lib''.  
** os independent, but depends on CPU. Example targets i386-lib ia640-linux
+
** os independent, but depends on CPU. Example targets i386-lib ia64-lib
 
* OOP interface (ojpas interfaces based) between host executable and package RTL, extensible to communicate with concrete packages.
 
* OOP interface (ojpas interfaces based) between host executable and package RTL, extensible to communicate with concrete packages.
 
* Host executable memory manager shared with package libs.
 
* Host executable memory manager shared with package libs.

Revision as of 13:42, 10 January 2011

Some ideas on library packages design

  • New system lib.
    • os independent, but depends on CPU. Example targets i386-lib ia64-lib
  • OOP interface (ojpas interfaces based) between host executable and package RTL, extensible to communicate with concrete packages.
  • Host executable memory manager shared with package libs.
  • Package binary file format.
    • Require to be fully portable (not depends of target system and cpu)

Questions

  • How exceptions objects should be transfered between executable and packages?
  • The package binary format (ELF, FatELF based?)
  • The package main source file format (lpk?)
  • Can RTTI help to access objects from exe by package and vice versa? Use only interfaces or macpas external objects?

Known issues

win32

  • manually loaded binary must (of this restriction could be circumvented?) be copied to another location to mark memory executable.