Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [C]: Dll in MS-DOS

  1. #1

    [C]: Dll in MS-DOS

    Prima di tutto scusate se rompo continuamente le scatole su questo forum.

    Volevo fare una domanda: le DLL (Dinamic Link Library) si usano solo sotto Windows (almeno credo, visto che utilizzano le API), ma se io volessi usarle su di un sistema operativo tipo MS-DOS (o proprio MS-DOS)?
    Grazie in anticipo.
    printf("Programmazione in C!");
    cout<<"Programmazione in C++!";

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Dubito che sia possibile, visto che MS-DOS è un ambiente uniprogrammato... ma poi che utilità avrebbe?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Più che altro è curiosità: se allora non ci sono le DLL come faceva allora con il kernel, che sui sitemi operativi di solito è una DLL?
    printf("Programmazione in C!");
    cout<<"Programmazione in C++!";

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Originariamente inviato da metal_prog
    Più che altro è curiosità: se allora non ci sono le DLL come faceva allora con il kernel, che sui sitemi operativi di solito è una DLL?
    Se parli di DLL, parli di un file che ha un formato specifico.

    Non esistono DLL, ma esistono ovviamente delle cose del tutto simili, per quanto in DOS non fossero necessari (il kernel può essere anche un solo programma caricato in memoria, con agganciati alcuni driver di periferica o altro).

    Ma tu cosa intendi fare? Qual è lo scopo di questa discussione?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Ma il kernel di solito non è una dll... il kernel dei sistemi operativi NT, ad esempio, è ntoskrnl.exe (più eventuali dependencies). Forse sei stato ingannato dalla dll kernel32.dll, che però serve solamente come tramite tra le applicazioni e il kernel (la sua descrizione è, molto significativamente, "DLL client di Windows NT BASE API").
    Tra l'altro non ha senso che il kernel sia una dll: una dll è del codice che viene caricato nello spazio di indirizzi di un processo e quindi richiamato, ma la stessa esistenza di un processo presuppone l'esistenza del kernel!
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Quindi un Kernel è uneseguibile caricato in memoria, mentre per accederci deve esserci una dll tramite la quele i programmi accedono all'hardware?
    printf("Programmazione in C!");
    cout<<"Programmazione in C++!";

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    No ... le Dll non le puoi usare con MSDOS ...

  8. #8
    Originariamente inviato da alka
    Dubito che sia possibile, visto che MS-DOS è un ambiente uniprogrammato... ma poi che utilità avrebbe?
    [ot] veramente il dos 4 era multithreading, ma è stato segato subito perchè pieno di bachi [/ot]

    edit: intendevo multitasking

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Multithreading il DOS 4 ? ... Era una battuta ...?

  10. #10

    Re: [C]: Dll in MS-DOS

    Originariamente inviato da metal_prog
    Prima di tutto scusate se rompo continuamente le scatole su questo forum.

    Volevo fare una domanda: le DLL (Dinamic Link Library) si usano solo sotto Windows (almeno credo, visto che utilizzano le API), ma se io volessi usarle su di un sistema operativo tipo MS-DOS (o proprio MS-DOS)?
    Grazie in anticipo.
    dipende cosa intendi..
    se vuoi realizzare una console application puoi utilizzare un linguaggio che permette la reflection
    tipo java/c# per caricare dinamicamente assembly in memoria (concetto simile alle dll)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.