Charleston, S.C.

Favorites

Free Stuff

Jokes

BACK

HOME

World

CHARLESTON

True Story

sumter.jpg (13017 bytes)

Operating System Concepts - "Basic"

Closing Statement at bottom:

The computer system was developed before, the Operating System! The first computer was digital (binary 1-0) and the computer was operated by a programmer which, operated the computer from a console. The programmer had to master the entire system operation! Data was install into the computer by control cards and reader cards but, the results "might" go to punch cards or line printers. The control, reader, and punch cards were developed out of paper. The control cards loaded instructions and the reader cards carried the data. The program loaded "usually" (unless-error) ran a long time to process data. There was no-interaction between jobs so, errors in a program was hard to debug (fix). Device drivers, "libraries" of commonly used functions, and program languages with their compilers were introduced. Computer operators were hired to run the computer programs "more" efficiently. The operator started to batch similar programs together so, one program ran after another to speed-up results (turnaround-time) of processes. There was a program introduced called the "Resident Monitor" which, existed in memory. The program interpreted the control cards, loaded data into memory, and job control - coordinate between jobs (programs). The resident monitor was the first simple Operating System.

Our country could use a development of the "Resident Monitor." I think, it could "help," with most the governments working together. I was a school hall patrol, cub scout, weebb-lows, and a boy scout! Truthfully: My sister Theresa wanted to be a girl scout and mom said, No! I wonder why? Click Here: Resident Monitor

How do we find the "world" called the Operating System? The computer lives among us but, the world it offers us goes beyond our imagination. One of my teachers: Once told, we must open our mind! We live in a universe (solar system) full of planets which exist beyond our expectation of understanding. The computer "lives" among us so, we should understand its (solar-system) basic-concepts. "Okay," the information I’m writing is important so, study, understand, and vision the concepts of "all" sentences. Do not forget! The concepts are hard to understand! Study five-ten sentences at a time until, you learn them by heart! You will get it in time so, open your "mind" to the "world" called the Operating System.

The Operating System (OS) is software running (processes) in an environment of hardware. The hardware consists of CPU, Memory, Motherboard, I/O devices (monitor, keyboard, etc.) but, the internal "concepts" describe the "basic" computer operation. The OS operates between the "hardware" and the "software" so, the OS controls resources (memory) and distributes resources (user). The system bus connects all devices (CPU, Memory, I/O devices, etc) to allow communication between them. The system bus is an electronic pathway (wires) of many-lines to carry (programs) data among the devices. Most computers use data lines, address lines, and control lines to transport information and communication between devices. The hardware (I/O devices) is always ready (listen) for a signal from (CPU) the control line which, usually means data is coming or needed. The address lines carry the data address to/from locations (memory-I/O devices) and the data line carries data to/from a location. "Lets" look a little deeper inside! Between the "system bus" and "I/O devices" are device controllers used to speed up the transfer of data down the system bus. The device controller reads data from I/O devices into the controllers buffer (memory) so, data traveling down the system bus gets transferred "faster" from the controllers buffer to ram (memory). The controller interrupts the CPU by control lines so, the CPU is handling a lot of interrupts. We will study "interrupts" - "routines" in a little bit! To free the CPU from interrupts, DMA controller (direct memory access) was developed to speed the flow of data (I/O devices - memory) without interrupting the CPU so, Much. "Getting Harder!" Open your mind to the world! The DMA controller operates off the OS (device driver) instead the CPU so, the controller will interrupt the CPU "only" when data task (process) is complete or next block of data is needed for a task. We will study "process" later! The OS (device driver) loads the DMA controller an address to ram with instructions so, controller transfer data between I/O device into its buffer then transfers data to ram (memory). When task is complete, the controller interrupts the CPU to signal completion. If more data is needed, the CPU loads next address with instruction to the controller. The DMA controller is use on fast I/O devices! The brain of the computer is the CPU which, is design to process data and hardware control by system bus. The CPU is complex in design but, we must understand the internal concepts which, allows processing code and data. Inside the CPU is a "control unit" which controls data to/from CPU. There is an arithmetic logic unit to do math or comparison. The instruction register decodes program instructions and "Important" the program counter (IP) shows next address of data (code) to be loaded into the CPU. There are other GPR registers (general-purpose registers) to hold code and data inside the CPU. The Intel chip uses segment registers (16bit) to hold code, data and more.. The CPU operates off an "instruction-set" (reduced or complex instructions -code) which, allows the CPU to operate proper by the operation system. Inside the CPU is a "bus controller" so, the system bus is controlled by the CPU. Open your mind to see the CPU, system bus, device controllers, and I/O devices. The memory controller (MMU or memory management unit) is connected to the system bus and it controls shared resources in ram. "Hold -On," as we go deeper into a universe to find the OS. It is here, "somewhere." When we find it, how do we communicate with it? You will soon see… FIRST lets see how the OS communicates with "Software" and "Hardware" by the system bus.

The interrupt signal allows the OS to communicate with "software" or "hardware." The signal is sent down the control line (system bus) from I/O device to the CPU (both-ways) and the OS grabs control. Two methods are used to handle interrupts: "interrupt" or "trapped." I will classify the interrupt as "hardware" control and the trap as "software" control. Hardware and Software owns "routines" to handle how the device or software functions within the OS. The OS handles proper operation control so, the OS needs a routine/handler for each device or software to allow "proper" operation. The OS uses a table (list) in ram called the "interrupt vector table" to handle routines. The table stores "addresses" of all the routines for hardware and software so, the OS can quickly find the proper routine to handle the interrupt. When an interrupt occurs, the OS "stops" all process and handles the interrupt. The OS backs up CPU program counter and registers so, the interrupt can be handled. The address of the interrupt "routine" is loaded into the CPU program counter (PC) and the OS handles the interrupt. The OS restores CPU program counter after, the interrupt was handled. The CPU program counter and registers are restored with "old" process and the CPU continues as the interrupt never occurred. Traps? Software is handled by traps! The OS traps software for two reasons: Error in software is trapped to the OS and "System-Call" is a software interrupt who, needs assistance from the OS. Software interrupts are usually transferred by CPU (hardware controlled) to the OS. Bootstrap or ROM Bios are system files loaded at boot up. The system files (OS) are stored in ram (memory) to start the computer system. The system files in ram are known as the "kernel." The interrupt vector table is stored in the kernel so, the OS has quick access to find "routine" addresses. Pretty Simple! "Hold-On" Communication with the Operation System! There are two ways to communicate with the OS: kernel supported and a program outside the kernel. The program is called the command interrupter! Unix and Dos command interrupter lives outside the kernel and Windows command interrupter "lives" in the kernel. Windows graphics (gooies) are kernel supported and Dos (text) are supported outside the kernel. The command interrupter gives us access to the OS and the OS gives us access to memory and file storage. The memory uses a "base + limit" which, gives the user access to ram. The user owns space in ram to "execute" programs. What does the computer do when, you click an icon on your desktop? Remember! Interrupt… "software or hardware" - Software! How does the OS handle software? Trap… What kind? System Call! Why? The "software" (application) needs assistance from the OS to execute operation.

The OS was developed over years of research but, several "techniques" are important to understand the improvements of the computer system. The first simple OS was a program loaded at boot up called the "resident monitor." The OS allows operation of the computer without, you doing all the work! Control cards, reader cards, magnetic tapes, which lead to off-line processing and "finally" magnetic disk. The magnetic disk (hard-drive) gives us "DIRECT" access to all data on disk. In order for a program to execute, it must be loaded into ram. Ram is the primary storage for the CPU since, the CPU can "only" process data from ram. Magnetic disk stores a lot of programs with direct access so, programs are available to transfer code/data to ram. "Now," multiple programs on a disk allows: OVER-LAP OF I/O and "Job Scheduling" so, job scheduling decides which programs get loaded into ram and number of programs! Multiprogramming stands for multi programs (jobs) in memory and job scheduler controls number of programs loaded into memory. "Now," several programs loaded into memory started "CPU scheduler" who, controls a program (data) from ram to CPU. The CPU scheduler decides on the process (program) to load into the CPU. The OS operates the CPU scheduler and Job scheduler whom, is really owned by the OS. "Now," a computer operates much faster processing data (programs). Programs to large for memory caused a major problem! "Virtual Memory" was introduced which, allowed a program to run not completely in memory. The disk (hard-drive) was used to simulate ram! Cache was introduced which, speed up data transfer between two devices of different speed. There are a lot of different caches within the computer system. Think? The temp folder in window explore uses cache. The OS uses cache to speed up data transfer (process) by storing data in ram without the CPU request. If the CPU request more data, the OS looks first in ram. There are two types of software: system software and application software. System software "helps" the computer basic operation and application software "helps" the user accomplish a task.

The OS controls process (CPU & Job scheduler), file management, memory management, and device management. Files are stored on the hard-drive so, the OS uses a table (fat allocation table) to keep track of data and their physical location. The hard-drive is divided into tracks and sectors which, all sectors own an address by the OS. The sector is 512bytes in size and the OS controls information written into the sectors. The OS has to know where, to put the data! The OS allows us to store files so, there must be a file management. The OS allows us to logical store files but, their physical storage remains in the sectors (cluster) on the hard-drive. Learn the difference between "physical" and "logical." The computer file storage (logical) appears simple but, the physical storage requires OS assistance. Are you lost? This map opens a "universe" to a "world" called the Operation System. "Get ready," we are traveling into cyber-space!

How does the Operating System handle a process? Process is a program in execution but, the process includes code and data in ram, OS resources, CPU registers, I/O devices (required), and etc. used by the process. "Remember," the interrupt gets the operating system attention! When an interrupt occurs, the OS creates a block (file) called the process control block. The block is used to store all information required, to handle the process. The block owns an address called the product PID and the address of the data location to be loaded into the CPU program counter. The block stores information on the process state: New, Ready, Running, Wait, and Terminated. Process "states" will be covered shortly! Code and data is stored in the Process Control Block! What else? The process control block (PCB) is stored in two ways: queue or stacked. Queue is a waiting place and stack is a stack-em-up! Lets talk about, Queue! The process control block exist in the kernel (OS files) which, exist in ram. When a process is started, the PCB is created in ram since, the CPU processes data out of ram. There are two types of process: cooperating and independent process. The cooperating process shares code/data space with processes and the independent does not share code/data space! How does the cooperating process work? "Someone," smart developed a technique called "Threads!" What are threads? It’s a long string of data! Independent processes share code/data space "alone" so, the process used "one" thread. Multi- threads allow processes to share code, data, and OS resources independently! Code, data, OS resources, are divided by "threads" so, information can be shared between, "processes." Threads allow programs to communicate between, programs, however; we are really talking about, processes. Information Sharing! When you are working in MS Word, click the print button! "Now," what’s the number of processes running, "one" or "two processes? Threads allow programs (process) to share information! Pretty Cool.. "Long time ago," Viken ships rowed to the beat of a drum! BOOM.. BOOM.. The men paddled the massive ship across the ocean. The computer system (OS) operates off a System-Clock (beat). When the system clock goes "Boom," an electrical pulse sent down the system bus. Boom! "One-cycle." Boom! "Two-cycles." so, On.. The system-clock is "only" a signal to send an electrical-pulse downs the system bus. The computer is executing "millions" of cycles per-pulse off the beat of the System-Clock. "Boom!" "One" process control block (PCB) is sent down system bus. Let’s get back to the process "State."

CLOSING STATEMENT:

I never finished writing operating system concepts! I passed top of the class at 97%. People were happy to make a grade "C" in the class and around 1/3 of the class dropped out! The material was written to help people visualize operating system concepts. Have you learned to be a "active" reader? Truthfully: Finding faith is more important! I promise, power is hidden as most operating systems, electrical wiring, networking or other concepts. Serious: I learned from man "concepts" and my mother's "faith" as God shown truth. I vision, we learn by love, trust, forgiveness, and honor!

Networking could be a later time. Well, I vision a great story! My "teacher" said, two men worked on developing communication on a network for the government. The project showed little to no results so government shut it down! And told them, do whatever, "they wanted with the project." Those two men figured out networking then offered, software to collages for free. Now, we travel the world wide web. I trained, friends from school on a network at home. I lived adventures of learning that, people could learn to see. I vision much in life to explore but most stuff is old news. Where will our lives go from here? God Once Said, "THERE IS A DAY TO REST." I believe, we could have past that point! We could feel pain of children living poor or we could live for wealth. Man will never STOP! Sad Part: Man could lost the way.

I'm not here to JUDGE! I vision several places to go and I'm not sure when, I'll get there! Possible Soon? Living By Faith...

Remember: Computer operates off 1's or 0's which means On or Off as a switch. God gave us positive and negative for a reason but we learn by positive. I will follow the right path. You could find the best path!

Faith