Week 1 (5/25-6/1)
What did I learn in the first week at CST334: Operating Systems?
This week, I read the required textbook chapter and learned a lot about low-level languages. The chapter also included a brief overview of the history of operating systems, tracing their origins over time. C is a new language for me—my experience has been mostly in object-oriented programming (OOP), so working without objects and instead using structs feels like rewiring everything I know. Fortunately, learning C is directly helping me in my internship, where I’m learning about binary analysis and symbolic execution using angr. These techniques allow users to analyze and manipulate binary code, explore execution paths, and identify vulnerabilities. Working with this powerful Python-based framework is especially useful when analyzing compiled C code without access to the source.
Learning about WSL, Docker, and Ubuntu has also been extremely helpful in understanding the tech stack used in my internship, along with the many tools Linux provides. The software engineers I work with recommend Linux for its security, stability, and seamless development workflow. The buffer overflow exercises in Lab 1 and the memory allocation practice in PA1 were especially effective for deepening my understanding of memory. I also saw how temporary fixes can sometimes work, but using ```malloc``` is a better long-term solution for managing memory.
Perhaps the most valuable takeaway this week was learning how to use VS Code (a Windows IDE) to write and debug code that will be deployed on a Linux server—all within a Windows environment using WSL and Ubuntu. At first, I downloaded gcc.exe through MinGW-w64, thinking I needed it to compile C in VS Code using the C/C++ extension. However, my professor explained that this could interfere with Docker compilation and why it’s important to avoid that. I’ve since disabled the extension to prevent VS Code from adding Windows-specific headers like ```#include "windows.h"```, which would cause compilation issues. So far, I’ve really enjoyed this class and look forward to learning more.
No comments:
Post a Comment