The base tables are created from base business objects which are currently found in the base package in cvs. No usual transaction should result in any change in such a table. Most of the information stored in these tables is entered directly by the user. These tables are typically introduced by some modules and occasionally extended by some columns in other modules. In some cases the business objects are not tables at all, but are used as generic definitions that are included in other business objects.
Auxiliary tables are probably the most static tables of the whole system.
They are maintained only by the user. No change in a table of this type may be done auto magically by the system. We don't do this in GNUe, because it may come that for some code we will need additional columns. Instead, GNUe uses a separate table for each type of code. Something very related to auxiliary tables are matrix tables.