tuttodiMC (Normal User)
Expert
Messaggi: 327
Iscritto: 29/10/2012
|
Salve a tutti. Dato che a scuola sta diventando tutto un po' noioso, sempre con esercizi sui fondamenti della programmazione, avreste un programma da realizzare a riga di comando che mi tenga impegnato per molto tempo, portandomi a scrivere centinaia di righe di codice?
|
|
pierotofy (Admin)
Guru^2
Messaggi: 6230
Iscritto: 04/12/2003
|
Riscrivi l'implementazione di malloc. Oppure prendi un programma Unix a caso da /sbin e reimplementalo.
|
|
dmr (Normal User)
Pro
Messaggi: 141
Iscritto: 04/01/2012
|
Postato originariamente da pierotofy:
Riscrivi l'implementazione di malloc. |
Ovviamente senza usare la realloc.... hahahha. |
|
AldoBaldo (Member)
Guru
Messaggi: 699
Iscritto: 08/01/2015
|
Piero: "Riscrivi l'implementazione di malloc."
dmr: "Ovviamente senza usare la realloc."
Eh, be'... a questo punto la curiosità mi spinge a porre una domanda, anche se ho già paura della risposta (della quale magari capirò lo zero virgola): per una funzione come malloc(), chi scrive le librerie standard fa riferimento alle API del sistema operativo o usa altri metodi più diretti?
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti. |
|
dmr (Normal User)
Pro
Messaggi: 141
Iscritto: 04/01/2012
|
Si, ovviamente nella sua implementazione, ci sarà una chiamata di sistema per dire al sistema operativo di andare a cercare uno spazio contiguo di memoria sufficientemente grande. Una volta trovato, il sistema "marcherà" tale zona di memoria allocata, come occupata. Tutto questo fa intervenire il gestore della memoria del sistema operativo.
Ultima modifica effettuata da dmr il 15/04/2015 alle 18:05 |
|
Roby94 (Member)
Guru
Messaggi: 1170
Iscritto: 28/12/2009
|
E il lavoro dell'implementazione a cosa si riduce se fa tutto il sistema?
|
|
pierotofy (Admin)
Guru^2
Messaggi: 6230
Iscritto: 04/12/2003
|
Ci sono un sacco di cose da tenere in considerazione nell'implementazione... soprattutto in termini di efficenza e di gestione di threads multipli.
http://danluu.com/malloc-tutorial/
|
|
tuttodiMC (Normal User)
Expert
Messaggi: 327
Iscritto: 29/10/2012
|
Un attimo! Faccio il terzo superiore, e anche se chiedo un programma leggermente più complicato, non arrivo a reimplementare malloc, dato che mi mancano fondamenti teorici che acquisirò nei prossimi ultimi mesi di scuola. Qualcosa in cui non devo interagire con componenti a basso livello?
|
|
()
Newbie
Messaggi:
Iscritto:
|
Postato originariamente da tuttodiMC:
Faccio il terzo superiore, e anche se chiedo un programma leggermente più complicato, non arrivo a reimplementare malloc, dato che mi mancano fondamenti teorici che acquisirò nei prossimi ultimi mesi di scuola. |
Conoscendo la scuola italiana, ne dubito
Comunque, se vuoi divertirti senza andare troppo "a fondo", puoi valutare la realizzazione di un programma come un gestionale per agenti di commercio, che richiede l'interazione con dei database, un sacco di moduli interni (per lo storico clienti, lo storico articoli, le statistiche di vendita, il database dei mandanti, la registrazione di fatture e altri documenti analoghi...) e non indifferenti conoscenze (e dunque, lunghe ricerche) circa le necessità e il "materiale" specifico con cui lavorano gli agenti di commercio. Un programma del genere ti terrebbe impegnato per un bel po' |
|