\documentclass[12pt]{article}
\usepackage{fullpage}\usepackage{indentfirst}

\begin{document}
    \section{Question 1}
    \subsection{Overlapping Intervals}
    \subsection{Non-Overlapping Intervals}
    \section{Question 2}
    \subsection{}
    Shared memory has all of the processors access one large pool of memory while distributed memory has each processor have a section of the memory.
    \subsection{}
    Distributed memory programs communicate via pipes and message queues while shared memory programs share memory with locks in place to prevent unintended behavior and race conditions.
    \subsection{}
    Shared memory is in most devices nowadays with even phones having multiple cores and a single bank of shared memory. Large rendering farms and HPC will have distributed memory to split rendering or to maximize performance.
    \subsection{}
    Distributed is easier to scale because the cluster can have nodes added or removed easily without affecting the other nodes.
    \section{Question 3}
    
\end{document}