Re: R4GL V C4GL
Posted in 1994
In article <342cqu$8uo@emory.mathcs.emory.edu> villy@collinscomp.com writes: >However, if you have several people running the SAME program >simultaneously, then RDS quickly becomes a limitation and a can in >turn be a real pig. > >Running RDS, only 'fglgo' can be >shared, whereas running a .4ge, most of the application can be shared. What I'd really like to see is fglgo using mmap() on systems which support it. If the 4gi is mmap()ed into the fglgo's virtual address space and is made read-only and shareable then you'd get almost the same demand-paged shared-text characteristics of an executable 4ge program. Ie both fglgo and the pcode application _would_ be shared. If also there was a proper pcode linker to resolve symbol references at link time instead of at run time and append a symbol table to the end of the 4gi then fglgo would only need to read the symbol table at startup instead of scanning the whole 4gi file. Then you'd get true demand paging with a nice small active set to start with. This will reduce real memory usage and improve program load times. Such a linker could also readily support resolving symbols from pcode libraries. (How about it Jonathon?) > [good memory analysis deleted] > >Also, if you just look at system timings, RDS seem to run about 70% >slower than a similiar .4ge, although from a user point of view its >hardly noticable for most programs. For most applications the performance is constrained mainly by the engine. >Also, Informix Forms/Fourgen has a facility that fakes library >management pretty well for RDS stuff. I haven't looked at that. What approach does it use? -- Hugh Grierson hugh@fujitsu.co.nz 17C, occasional showers