commit 254ec111cfa111d596ba22b73aa933d6dd8d5f95 Author: Camden Dixie O'Brien Date: Sat Nov 9 12:04:30 2024 +0000 Add basic file I/O and process control syscalls diff --git a/main.tex b/main.tex new file mode 100644 index 0000000..c7b6b99 --- /dev/null +++ b/main.tex @@ -0,0 +1,58 @@ +\documentclass[a4paper]{article} + +\usepackage{baskervald} +\usepackage{booktabs} +\usepackage{courierten} +\usepackage{cuted} +\usepackage{helvet} +\usepackage{mathtools} +\usepackage{sectsty} +\usepackage{tabularx} + +\pagenumbering{gobble} +\setcounter{secnumdepth}{0} + +\allsectionsfont{\sffamily} + +\begin{document} + +\begin{center} + \LARGE \bfseries Basic Linux Syscalls + \vspace{1em} +\end{center} + +\section{File I/O} + +\begin{tabularx}{\textwidth}{lr>{\ttfamily}cX} + \toprule + read & 0 & \%rdi & File descriptor to read from \\ + & & \%rsi & Address of buffer \\ + & & \%rdx & Number of bytes to read \\ + \midrule + write & 1 & \%rdi & File descriptor to write to \\ + & & \%rsi & Address of buffer \\ + & & \%rdx & Number of bytes to write \\ + \midrule + open & 2 & \%rdi & Address of path \\ + & & \%rsi & Option flags \\ + & & \%rdx & File creation mode \\ + \midrule + close & 3 & \%rdi & File descriptor to close \\ + \bottomrule +\end{tabularx} + +\section{Process Control} + +\begin{tabularx}{\textwidth}{lr>{\ttfamily}cX} + \toprule + fork & 57 & \textrm{\textendash} & No parameters \\ + \midrule + execve & 59 & \%rdi & Address of path \\ + & & \%rsi & Address of array of arguments \\ + & & \%rsi & Address of array of environment variables \\ + \midrule + exit & 60 & \%rdi & Exit code \\ + \bottomrule +\end{tabularx} + +\end{document}