Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [java]disco virtuale

    Un saluto a tutti, sono nuovo del forum, vi pongo subito una domanda un po complessa è possibile con java creare una periferica virtuale, ovvore avete presente quando andate in risorse del computer??e si vedono gli hd?...io devo fargli vedere un hd che ovviamente non esiste ma è virtuale, è possibile tutto ciò???
    grazie a tutti per la disponibilità!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]disco virtuale

    Originariamente inviato da lukino1987
    Un saluto a tutti, sono nuovo del forum, vi pongo subito una domanda un po complessa è possibile con java creare una periferica virtuale, ovvore avete presente quando andate in risorse del computer??e si vedono gli hd?...io devo fargli vedere un hd che ovviamente non esiste ma è virtuale, è possibile tutto ciò???
    In Java non credo proprio.
    Un disco virtuale è una cosa che si può realizzare sviluppando un apposito driver per il sistema operativo. E un driver lo si scrive in genere in "C" (o in parte, o del tutto, in assembly) e non di certo in Java.
    Ora la questione da capire è: devi proprio fare una cosa del genere???? Ti dico solo che lavorare a livello di kernel .... è molto tosto.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    allora ti spiego io avrei l'esigenza di creare una cosa simile a quello che ti crea daemon tool o simili...però avevo visto un programma (v-disk) scritto in perl...che fa una cosa simile ma in poche righe di codice!

  4. #4
    Utente di HTML.it L'avatar di netarrow
    Registrato dal
    Apr 2004
    Messaggi
    1,425
    di per se Java non fa, "pilota", nel senso che ciò che viene fatto direttamente dalla JVM è relativamente poco, gran parte del lavoro è invece contenuto in delle libreria, collegate a Java come metodi nativi, che hanno lo stesso nome su tutti i sistemi operativi ma il contenuto adatto ad essere eseguito sul sistema opsite, questo significa che quando tu chiami il comando astratto, generico di altissimo livello "CreaThread" la JVM eseguirà il codice contenuto nella funzione importata dalla libreria nativa Thread.qualcheè (tanto per fare un esempio).
    Infatti quando vuoi importare un metodo nativi da una libreria in Java scrivi

    Sustem.loadLibrery("NomeLibreria");

    senza specificare l'estensione visto che sarà la JVM a decidere qualè quella usata dal sistema(così puoi tenere vicine Libreria.a e Libreria.dll, tu chiami Libreria e la funzione func, quale sarà quella giusta lo decide la JVM).

    Ovviamente però la Sun non può astrarre tutte le funzioni possibili di un sistema operativo, o in genere, di un dispositivo come cellulari ecc... quindi per farlo in Java, anche qui con relativamente poche righe, devi usare dei metodi nativi che insegnino a Java a pilotare questa funzionalità del sistema operativo, che però non esistono nella core standard quindi o li scrivi tu o cerchi una libreria già esistente e in Java "al 99% c'è sempre qualcuno che ci ha già pensato".

    Imparare è un'esperienza, tutto il resto è solo informazione. (Albert Einstein)

  5. #5
    spiegazione fantastica..ti ringrazio sei stato chiarissimo!io ho provato a fare qualche ricerca ma non ho trovato...non è che saresti così gentile anche solo da consigliarmi qualche parola chiave da ricercare!cmq...anche se non con i metodi nativi si puo in teoria realizzare?

  6. #6
    Utente di HTML.it L'avatar di netarrow
    Registrato dal
    Apr 2004
    Messaggi
    1,425
    Ho trovato questo che fa al caso tuo:

    http://forum.ioprogrammo.it/thread.p...4ffb6&page=1#9

    Cmq direttamente in Java direi che è impossibile, è slegato dal sistema Java, si collega ad esso tramite "ponti", questo ponte non c'è quindi devi farlo tu; nel link cmq c'è una soluzione che potrebbe funzionare: lpuso del comando dos subst.

    In alternativa cerca come creare un device driver in C/C++ e poi crei la libreria da richiamare in Java, trovi i riferimento sempre nel link.

    Imparare è un'esperienza, tutto il resto è solo informazione. (Albert Einstein)

  7. #7
    ti ringrazio sei stato gentilissimo!!!
    il link è appena stato aggiunto nei segnalibri!!!!!!
    in ogni caso...sapevo che fosse necessario creare un device driver ma , pur consocendo decentemente il c, la programmazione con il ddk non fa proprio al caso mio
    proverò implementando qualcosa di preconfezionato anche perchè la mia esigenza era quella di avere portabilità ovvero che funzionasse sia sotto linux che sotto windows, ma ti ringrazio perchè quella è già un ottima base di partenza!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.