Skip to content

C programming and Linux components of the Holberton school "Low-Level and Algorithms" specialization curriculum.

Notifications You must be signed in to change notification settings

allelomorph/holbertonschool-system_linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
Nov 26, 2021
Nov 22, 2021
Nov 26, 2021
Nov 23, 2021
Nov 26, 2021
Nov 23, 2021
Nov 23, 2021
Nov 26, 2021
Dec 9, 2021
Nov 26, 2021
Nov 25, 2021
Jan 30, 2022
May 23, 2022
Dec 6, 2021

Repository files navigation

holbertonschool-system_linux

Description

C programming and Linux components of the Holberton school "Low-Level and Algorithms" specialization curriculum.

General C project requirements

Compilation conditions

  • Ubuntu 14.04 LTS
  • gcc 4.8.4
  • flags -Wall -Werror -Wextra -pedantic

Linters


Building a clone of the Linux function ls.

Introduction to static variables in C and building a clone of the glibc function getline.

Revisiting (235) 0x16. C - Simple Shell to build a second clone of dash / Ubuntu sh, now with logical operators, piping, and input/output redirections.

Introduction to using the /proc filesystem to explore the memory footprint of a running process.

Introduction to ELF or the Executable and Linkable Format, its uses, and structure.

Introduction to x86 assembly: Intel vs AT&T, flag registers, stack frames, function and system calls.

Introduction to Unix signals: sending, listening, and catching.

Continued exploration of ELF structures, now in building clones of nm and objdump.

An investigation into how Python 3 is implemented in C and how to access it via its C API.

Learning more about syscalls and registers, and the use of the ptrace library through cloning behavior of strace.

Introduction to the pthread library and concepts like concurrency vs parallelism, mutual exclusion, and race conditions.

Investigating virtual memory and the heap by building clones of the glibc malloc, free, calloc, and realloc.

Introduction to networking in C using sockets; building a simple HTTP server.


Student

About

C programming and Linux components of the Holberton school "Low-Level and Algorithms" specialization curriculum.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published