[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3159450.3159597acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article
Public Access

Implementing Malloc: Students and Systems Programming

Published: 21 February 2018 Publication History

Abstract

This work describes our experience in revising one of the major programming assignments for the second-year course Introduction to Computer Systems, in which students implement a version of the malloc memory allocator. The revisions involved fully supporting a 64-bit address space, promoting a more modern programming style, and creating a set of benchmarks and grading standards that provide an appropriate level of challenge. With this revised assignment, students were able to implement more sophisticated allocators than they had in the past, and they also achieved higher performance on the related questions on the final exam.

References

[1]
Basma S. Alqadi and Jonathan I. Maletic. 2017. An Empirical Study of Debugging Patterns Among Novices Programmers Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE '17). ACM, New York, NY, USA, 15--20.
[2]
Randal E. Bryant and David R. O'Hallaron. 2001. Introducing Computer Systems from a Programmer's Perspective Proceedings of the Thirty-second SIGCSE Technical Symposium on Computer Science Education (SIGCSE '01). ACM, New York, NY, USA, 90--94.
[3]
Randal E. Bryant and David R. O'Hallaron. 2015. Computer Systems: A Programmer's Perspective (bibinfoedition3rd ed.). Pearson.
[4]
Brian W. Kernighan and Dennis M. Ritchie. 1988. The C Programming Language. Prentice Hall Press, Upper Saddle River, NJ, USA.
[5]
Donald E Knuth. 1973. Fundamental algorithms: the art of computer programming.
[6]
Chris Lattner and Vikram Adve. 2004. LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. Proceedings of the International Symposium on Code Generation and Optimization: Feedback-directed and Runtime Optimization (CGO '04). IEEE Computer Society, Washington, DC, USA, 75--88. http://dl.acm.org/citation.cfm?id=977395.977673
[7]
Laurie Murphy, Gary Lewandowski, Renée McCauley, Beth Simon, Lynda Thomas, and Carol Zander. 2008. Debugging: The Good, the Bad, and the Quirky -- a Qualitative Analysis of Novices' Strategies Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education (SIGCSE '08). ACM, New York, NY, USA, 163--167.
[8]
Paul R. Wilson, Mark S. Johnstone, Michael Neely, and David Boles. 1995. Dynamic Storage Allocation: A Survey and Critical Review Proceedings of the International Workshop on Memory Management (IWMM '95). Springer-Verlag, London, UK, UK, 1--116. http://dl.acm.org/citation.cfm?id=645647.664690

Cited By

View all
  • (2022)The House of Computing: Integrating Counternarratives into Computer Systems EducationProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499394(279-285)Online publication date: 22-Feb-2022

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGCSE '18: Proceedings of the 49th ACM Technical Symposium on Computer Science Education
February 2018
1174 pages
ISBN:9781450351034
DOI:10.1145/3159450
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 February 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. malloc
  2. programming assignment
  3. systems programming

Qualifiers

  • Research-article

Funding Sources

Conference

SIGCSE '18
Sponsor:

Acceptance Rates

SIGCSE '18 Paper Acceptance Rate 161 of 459 submissions, 35%;
Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

Upcoming Conference

SIGCSE TS 2025
The 56th ACM Technical Symposium on Computer Science Education
February 26 - March 1, 2025
Pittsburgh , PA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)187
  • Downloads (Last 6 weeks)36
Reflects downloads up to 27 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)The House of Computing: Integrating Counternarratives into Computer Systems EducationProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499394(279-285)Online publication date: 22-Feb-2022

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media