{"id":436,"date":"2007-12-28T23:46:58","date_gmt":"2007-12-28T21:46:58","guid":{"rendered":"http:\/\/www.mitternachtshacking.de\/blog\/436-24c3-automatic-memory-management"},"modified":"2018-05-31T22:36:45","modified_gmt":"2018-05-31T21:36:45","slug":"24c3-automatic-memory-management","status":"publish","type":"post","link":"https:\/\/www.mitternachtshacking.de\/blog\/436-24c3-automatic-memory-management","title":{"rendered":"24C3: Automatic Memory Management"},"content":{"rendered":"<p>Im Vortrag &#8222;<a href=\"http:\/\/events.ccc.de\/congress\/2007\/Fahrplan\/events\/2277.en.html\">Automatic Memory Management<\/a>&#8220; ging es um automatisches Speichermanagement also Garbage Collection und die Frage ob es sinnvoll ist, den Speicher z.B. in einem C-Programm mittels <a href=\"http:\/\/en.wikipedia.org\/wiki\/Malloc\">malloc()<\/a> und free() selbst zu verwalten oder das einem automatischen Prozess zu \u00fcberlassen. Insgesamt eher eine Frage f\u00fcr Programmiersprachenentwickler und weniger f\u00fcr Hacker.<\/p>\n<p>Hannes stellte dabei die verschiedenen Garbage Collection Ans\u00e4tze vor, im einzelnen:<\/p>\n<ul>\n<li>Reference Counting<\/li>\n<li>Mark and Sweep<\/li>\n<li>Mark and Compact<\/li>\n<li>Copying GC<\/li>\n<li>Generational GC<\/li>\n<li>Incremental GC<\/li>\n<li>Memory Pool System<\/li>\n<\/ul>\n<p>Und die Vorteile in der Systemsicherheit, insbesondere<\/p>\n<ul>\n<li>keine Memory Leaks<\/li>\n<li>keine Double-Free Bugs<\/li>\n<\/ul>\n<p>Sein Fazit war, wenn man etwa den vierfachen RAM zur Verf\u00fcgung hat, den das System zum normalen Ablauf braucht, dann ist Garbage Collection effizient, wenn der verf\u00fcgbare RAM etwa dem ben\u00f6tigten entspricht und GC daher sehr oft laufen muss, ist eine manuelle Allokierung und Freigabe effizienter.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Im Vortrag &#8222;Automatic Memory Management&#8220; ging es um automatisches Speichermanagement also Garbage Collection und die Frage ob es sinnvoll ist, den Speicher z.B. in einem C-Programm mittels malloc() und free() selbst zu verwalten oder das einem automatischen Prozess zu \u00fcberlassen. Insgesamt eher eine Frage f\u00fcr Programmiersprachenentwickler und weniger f\u00fcr Hacker. Hannes stellte dabei die verschiedenen [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[13,8],"tags":[],"_links":{"self":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/436"}],"collection":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/comments?post=436"}],"version-history":[{"count":0,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/436\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/media?parent=436"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/categories?post=436"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/tags?post=436"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}