Domanda

sto studiando il basso livello argomenti di gestione file di programmazione da Apple. Nella sezione NSFileHandle, dicono:

  

Il campo di applicazione non è NSFileHandle   limitato ai file. Esso fornisce l'unica   oggetto Fondazione in grado di leggere e   in scrittura a questi canali di comunicazione   come quelle attuate mediante prese,   tubi e dispositivi.

Sembra fantastico! Così posso parlare tramite NSFileManager ad una presa, che poi trasferisce i dati ad un server web in cui ho pasticciare in un file direttamente, a distanza?

Qualcuno può dare qualche facile da capire esempi che cosa potrei fare con questo,

  • quando si comunica con un "Socket"?
  • quando si comunica con un "tubo"?
  • quando si comunica con un "Dispositivo"?

Nota: Io non so nulla di veramente su socket, pipe, Dispositivi. E sono sicuro che da dispositivi non significano lo stesso iPhone. Non ho dimestichezza con la rete le cose. Ma io voglio imparare quella roba !! Forse si potrebbe anche dare una breve spiegazione cosa sono queste cose?

È stato utile?

Soluzione

Socket è un bene che si utilizza per la comunicazione in rete. Quando un'applicazione vuole fare qualsiasi comunicazione di rete, ha bisogno di collegarsi a host di destinazione. Per questo un socket viene utilizzato. Nella maggior parte dei casi si utilizza il protocollo TCP / IP di rete. Ciò richiede di specificare un indirizzo IP o il nome dell'host cui connettersi, e la cosiddetta porta TCP - che è un'identificazione univoca del servizio in esecuzione su host di destinazione, ad esempio 80 viene utilizzato per HTTP. Una volta stabilita la connessione, è possibile utilizzare presa in maniera simile a come handle di file, è sufficiente scrivere alcuni dati in esso, o leggere da esso. Ecco come rete di solito funziona.

Pipe è una struttura proveniente da Unix - ricorda, Mac e iPhone sono basate su sistemi Unix. E '(sorta di arcano, ma ancora popolare) via di comunicazione tra i due processi. Dal punto di vista di programmazione, è simile a handle di file - quando due processi sono collegati tramite tubi, possono scrivere e leggere nel tubo di comunicare tra loro

.

dispositivo è un'astrazione, bene, un dispositivo. Immaginate di voler avere un accesso diretto al vostro disco rigido. Il modo in cui è fatto su sistemi Unix è che si apre un po 'di file speciale, che in realtà non è un file, ma viene creato su file system come un "dispositivo". Controllare directory "/ dev /" sul vostro Mac, che contiene i dispositivi disponibili. Per un disco rigido è possibile trovare "/ dev / disk0", per la sua prima partizione "/ dev / disk0s1". Questi "dispositivi" rappresentano i driver di periferica caricati nel kernel. estensioni kernel (per esempio driver) possono fornire tale dispositivo per consentire la comunicazione con programmi spazio-utente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top