[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2006
    Beiträge
    348

    Question 16MB Grenze in C Programmen umgehen

    Hallo an alle,

    in einer Anwendung muss ich mit dem Befehl malloc() mehr als 16 MB reservieren. Jedoch hat die AS/400 damit ein Problem.

    Hier mal ein kleines Testprogramm:

    Code:
    int main ( void )                          
    {                                          
        char *test;                            
                                               
        /* Geht nicht */                       
        test = (char*)malloc(17 * 1024 * 1024);
        free(test);                            
                                               
        /* Geht */                             
        test = (char*)malloc(15 * 1024 * 1024);
        free(test);                            
                                               
        return 0;                              
    }
    Im Befehl CRTCMOD gibt es die Option Teraspace einschalten. Dies kann aber zu Problemen mit anderen Programmen und mit anderen Aktivierungsgruppen geben.

    Gibt es noch eine anderen Möglichkeit die 16 MB Grenze zu umgehen? Wir verwenden V5R3.

    Gruß
    Matthias Schatte

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.250
    Eine andere Möglichkeit gibt es da nicht.
    Du kannst doch eine eigene Aktivierungsgruppe verwenden und Teraspace dann verwenden.

    Soweit ich weiß besteht das Problem nur, wenn ich einen zusammenhängenden Bereich >16MB benötige. Das halte ich aber für sehr unübersichtlich.
    Ich denke mehrere kleinere alloc's können insgesamt über 16 MB gehen. Also arbeite mit Verpointerung der Daten oder Listen von Strukturen usw.

    Ansonsten schau mal nach HEAP-API's.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jun 2006
    Beiträge
    348
    Vielen Dank für die schnelle Antwort.

    Damit werd ich es dann mal versuchen.

Similar Threads

  1. Zusammenhang zwischen Programmen und SRC-files
    By mtu in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 18-10-05, 14:13
  2. variable calls im free-format RPG
    By opeker in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 13-10-04, 07:05
  3. Feldverwendung in Programmen
    By peter.kinne in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 02-09-04, 13:21
  4. WRKOBJLCK in CL Programmen
    By Herbie in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 02-08-04, 14:41
  5. MsgBreak Programm umgehen
    By Robi in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 06-09-01, 07:29

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •