Wednesday, March 18, 2026

Java and Object-Oriented Programming

Hello, everyone,

When it comes to installing Java, the easiest way is to go to the Oracle website and get the download from there. The most efficient way that I found was from this video https://www.youtube.com/watch?v=vt7_6HwCFOU&t=632s. This video provides information on how to install Java and the Integrated Development Environment or IDE for short. You will want to install an IDE so you can see what you are developing and if it is working correctly.

The four major principles of Object-Oriented Programming can seem complicated when you first hear them, but when they are broken down into easier words, it is more simple to digest in my opinion. Take that from a novice in the programming world.

The four major principles of Object-Oriented Programming are Encapsulation, Abstraction, Inheritance, and Polymorphism. Encapsulation combines data and functions into a class and restricts access to protect the data. Abstraction shows only what an object is instead of the process that it has to take to get there. Inheritance allows new code to use parts of the existing code, allowing people to reuse parts. And finally, Polymorphism allows objects of different types to be bundled together, allowing the interface to complete general actions.

Object-Oriented Programming is not very beginner-friendly due to its complex nature. However, if you are able to learn it, it is a great tool for developing and managing complex systems and information.

Sunday, March 15, 2026

Operating Systems Concept Map from a Beginner

     Operating systems are a complex group of different systems that cooperate with each other to make a system that can complete all of the tasks that your computer needs to complete. These systems include the Process Management system, Memory Management system, File System Management, Device Management, and Security and Protection. These systems intertwine and create the operating system that we know today. These systems help to manage hardware. The modern computer operating system is designed to balance performance with efficiency. It is a delicate balance that the system has to keep in place. The Process Management system controls how the processes function and determines how each process is operated. The Memory Management system controls how the memory functions. It controls the Random Access Memory (RAM) as well as the Hard Disk Drives (HDD) and Solid State Drives (SSD).



Processes are controlled by the Process Management system. This system determines the who, what, when, where, and how each process will operate. There are five different steps in a process cycle. These are Terminated, Running, Ready, New, and Waiting. Terminated is then the process has run its course and is finished. Running is when the process is currently in the process of operating. Ready means that the process has been loaded into the RAM. The New state is when the process has just entered the system. The Waiting stage is when the process is waiting for instructions from the Central Processing Unit (CPU) on what stage to proceed to next. These systems will share information and wait their turn through the Process Control Block (PCB). The PCB determines which process gets access to which resource at what time through the CPU.



      Main memory is also the physical component of the memory system. How I envision virtual memory is that you are outsourcing your processing to a separate device, such as a server. Due to this being stored online for you, it is virtual. The way that these systems assist and correct memory management issues is through the use of resource sharing. Main memory and virtual memory share resources to allow for processing to operate without overlap or a reduction in performance. When main memory reaches its limits, virtual memory can step in and assist with processing the information. Virtual memory assists with fragmentation through paging. This prevents the fragments of information from getting overlooked and missed.



            Modern computer systems use the File system combined with the Input/Output system and Mass Storage to operate multiple things in the computer system. Files allow for the read and write of information inside the operating system and mass storage devices such as HDDs and SSDs. The physical storage, such as HDDs and SSDs, communicates with the I/O software, allowing the operating system to control the external devices. These external devices then allow you to see and operate your computer. Which, in turn, allows you to read, write, and even delete files within the File Management system, bringing the system full circle.



            There are multiple ways to control access to files and other systems within the computer operating system. One of the most common in modern computers is through the use of access lists held by the access matrix. The access lists provide defined users with permissions onto specific objects. This allows all users with the appropriate access to access the objects that they are defined as having. The other way is through the use of capability lists. The capability lists give users access to the domain through the use of tokens. These tokens can be a security risk as if they were to be released to individuals who should not have access it would possibly create a data breach.



            In the future, I plan to either work in Information Technology or in developing games. Either path it is good to have a general understanding of how operating systems function. This understanding is the base that many future courses will build upon. Having this understanding allows me to dive deeper into the operating system to diagnose any issues that may arise in the future.

My Beginners Understanding of Algorithms and Data Structure Designs

 Hello everyone, When it comes to writing code, one thing that I have learned so far is that if you are just learning, you will make almos...