We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Everything You Always Wanted to Know About "Hello, World"*

Formale Metadaten

Titel
Everything You Always Wanted to Know About "Hello, World"*
Untertitel
(*But Were Afraid To Ask)
Serientitel
Anzahl der Teile
611
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache
Produktionsjahr2017

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
I've been working on a new system call ABI and the required runtime supportfor a C variant with spacial memory safety. Along the way I've encounteredlots of interesting bits and pieces required to implement a simple C "Hello,World" program. I found the process fascinating so this talk brings all thatknowledge together in one place. The first example in the classic "The C Programming Language" by Kernighan andRitchie is in fact a remarkably complete test of the C programming language.This talk provides a guided tour a slightly more complex program whereprintf() is called with multiple arguments. Along the way from the initialprocesses' call to exec() to the final _exit(), we'll tour the program loadingcode in the kernel and the dynamic linker, the basics of system callimplementation, the implementation of the memory allocator, and of courseprintf(). We'll also touch on localization and a little on threading support.Where appropriate, I'll discuss portions of the system that need changing toaccommodate memory safe versions of C like the version we are developing forour CHERI CPU. This talk will assume some knowledge of a language with C-like syntax (C, C++,Java, and PHP should all be fine).