DeCoN Δημοσ. 12 Απριλίου 2005 Δημοσ. 12 Απριλίου 2005 Kalhspera, psaxnw gia ena programmataki pou na mporei na mou pei posh mnhmh 8a xrhsimopoihsei an treksei ena .exe Ekana search kai de brhka tpt ..
alkisg Δημοσ. 12 Απριλίου 2005 Δημοσ. 12 Απριλίου 2005 Πόση μνήμη θα χρησιμοποιήσει ΑΝ τρέξει; Δεν γίνεται αυτό. Η δέσμευση μνήμης είναι συνήθως δυναμική, π.χ. τρέχεις το photoshop, θέλει 20 Mb, ανοίγεις μερικές τεράστιες εικόνες => θέλει 200 Mb. Για να δεις πόση μνήμη χρησιμοποιεί ένα πρόγραμμα τη στιγμή που τρέχει πάτα (στα 2000/XP) alt+ctrl+del και στην καρτέλα διεργασίες δες την "Χρήση μνήμης". Το μόνο που μπορείς να δεις στατικά από ένα .exe header είναι το stack size, όχι το heap size...
DeCoN Δημοσ. 12 Απριλίου 2005 Μέλος Δημοσ. 12 Απριλίου 2005 Kala nai, to to trexw kai anoigw task manager to hksera, bazw na mou deixnei kai page file used kai to blepw, epishs ennoeitai pws to ti mnhmh 8a xrhsimopoiei eksartatai apo to ti exei fortomeno, Ki emena mou to zhthsane basika, kai eipa mhpws kapoios edw exei kati ypopshn tou. (nomizw gia DOS yphrxe tetoia efarmogh) Xazh erwthsh: What is stack kai what is heap? Mhn prospa8hseis na to yperaploustefseis, katalabainw, mila sa na milas se texniko pou exei kapoia mikrh epafh me programming Thanks for the reply
alkisg Δημοσ. 12 Απριλίου 2005 Δημοσ. 12 Απριλίου 2005 Για DOS έχεις δίκιο, υπήρχε, επειδή το DOS δεν είχε virtual μνήμη (paging κτλ). Συνήθως ο compiler ζήταγε 640Kb (δηλαδή όλη τη μνήμη) και το DOS του έδινε όλη την ελεύθερη, π.χ. 550Kb... Στην ειδική περίπτωση των TSR (Terminate and Stay Resident) προγραμμάτων ο προγραμματιστής μέτραγε συγκεκριμένα πόση μνήμη θα χρειαζόταν και την δήλωνε (π.χ. 10Kb) ώστε να αφήσει ελεύθερη RAM και για τα άλλα προγράμματα. Αλλά τα TSR στο DOS δεν είχαν δυναμικές απαιτήσεις μνήμης, π.χ. αλλάζαν μόνο από ελληνικά σε αγγλικά. Stack = στοίβα = μία μικρή μνήμη, βοηθητική, για τις ανάγκες της εκτέλεσης του προγράμματος, που δεν εξαρτάται από τα δεδομένα του (εικόνες κτλ). Χρησιμοποιείται εσωτερικά από το πρόγραμμα για να ξέρει ποια διαδικασία κάλεσε ποια άλλη, και τι παραμέτρους πέρασε. Heap = σωρός = η "μεγάλη" μνήμη που αποθηκεύεται το μεγαλύτερο μέρος των δεδομένων του προγράμματος. Εκεί πάνε και οι εικόνες του photoshop και τα κείμενα του word κτλ.
DeCoN Δημοσ. 12 Απριλίου 2005 Μέλος Δημοσ. 12 Απριλίου 2005 Efxaristw poly, egw sthn ousia 8elw ena programmataki na metraei to stack tou programmatos, exeis kati ypopshn sou?
alkisg Δημοσ. 12 Απριλίου 2005 Δημοσ. 12 Απριλίου 2005 Κατέβασε π.χ. το pe_map από π.χ. http://www.karland.com/code/c/ Υπάρχουν και πολλά άλλα. Για ποιον λόγο θέλουν να κοιτάνε το stack size???!!!???
DeCoN Δημοσ. 12 Απριλίου 2005 Μέλος Δημοσ. 12 Απριλίου 2005 pistepse me, de 8elw na kserw Na'sai kala
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.