Module 1-5 combined (Intro to Programs).pdf

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Document Details

ExaltedFibonacci

Uploaded by ExaltedFibonacci

PHINMA Cagayan de Oro College

Tags

computer science IT education hardware computing

Full Transcript

Introduction to IT and COMPUTING Module #1 Learning Objectives: At the end of the module, you will be able to: Define the requirement and class expectation; Compose good rapport with classmates; and Understand how computers evolved, how they are used in different fields, and what issues...

Introduction to IT and COMPUTING Module #1 Learning Objectives: At the end of the module, you will be able to: Define the requirement and class expectation; Compose good rapport with classmates; and Understand how computers evolved, how they are used in different fields, and what issues confront them. Course Objectives At the end of this course, you are expected to: Enumerate and describe functions of computer hardware and software components including operating system and computer architecture; Use technology to search, access, evaluate and use information; and cite electronic and printed references; Demonstrate the ability to use different application programs like word processing, spreadsheet, presentation, and image editing software to communicate information and develop keyboarding and mouse operation skills ; and What is a Computer? A computer is a data-processing machine. In other words, a machine for the manipulation of data to present information. The word “computer” general-purpose stored-program electronic digital computer. General-purpose computers may be applied to solve any solvable problem. The computer is directed by a program or a sequence of instructions that determine what actions will the computer carry out. Programs are written by us humans. All modern computers have their programs stored along with the data in a memory (called the storage). Stored-program computers use programs to efficiently solve problems by executing specific operations. Computer data processing units are built with electronic components that enable speeds approaching a million or even a billion operations per second, with some machines achieving even higher speeds. Digital computers have overshadowed analog machines. In analog computers, a physical process is used to imitate the computation. Digital computers use symbols as such for computation Analog Computer Digital Computer Speedometer Computer/Laptop Analog Computer Digital Computer COMPUTER HARDWARE AND SOFTWARE In programming, a computer user does not have to deal directly with the physical devices (hardware) of the computer system. Instead, special service programs, stored in the computer memory, provide an interface between the user and the machine. These programs, called systems software, simplify the task of the programmer and the application software written by the user and control the use of the hardware. COMPUTER HARDWARE AND SOFTWARE HARDWARE 1.Physical components of the computer 2. Central processor 3. Memory system 4. Input/Output devices COMPUTER HARDWARE AND SOFTWARE System Software refers to the foundational software that manages hardware and provides essential services for application software.  Operating System Ex. Windows, macOS, Linux, iOS, Android and etc. COMPUTER HARDWARE AND SOFTWARE Application Software refers to programs designed to perform specific tasks for users. Ex. Microsoft Word, Google Chrome, Adobe Photoshop, Microsoft Excel, Spotify, Zoom and etc. Basic Computer Organization and Design Module #2 Learning Objectives: At the end of the module, students will be able to: 1. Generations of Modern Computer 2. Identify the basic parts of a computer; and 3. Describe the basic components and functional organization of a computing device. Generations of Modern Computers Basic parts of a computer: 1. Central Processing Unit (CPU) The brain of the computer that performs calculations and processes instructions. 2. Motherboard The main circuit board that connects all components of the computer. 3. Random Access Memory (RAM) Temporary memory that stores data and programs currently in use for quick access. 4. Storage Hard Disk Drive (HDD) or Solid State Drive (SSD): Used for long-term data storage. 5. Power Supply Unit (PSU) Converts electrical power from an outlet to usable power for the computer's components. 6. Input Devices Examples: Keyboard, mouse, scanner; used to input data into the computer. 7. Output Devices Examples: Monitor, printer; used to display or produce results from the computer. 8. Cooling System Keeps the computer’s components at safe operating temperatures, often using fans or liquid cooling. The Internet and Networking  A network is a group of computers that share information and hardware.  The computers are connected together using copper phone wires, fiber optic cables, or radio waves.  Our computers are on a network here at school...Look under the table and see the blue wires that connect your computer to the network.  The internet is many networks around the world that are all connected together to make 1 huge network. Modern Uses of Computers Education Business Healthcare Entertainment The Future of Computing The future of computing holds exciting possibilities, including advancements in artificial intelligence, quantum computing, and the continued growth of the Internet of Things (IoT). These innovations will further transform how we live and work. Conclusion Computers have become an integral part of our lives, driving innovation and progress. Understanding their basics, history, and impact can help us appreciate the technology that shapes our world. Thank You For Your Attention COMPARING COMPUTER ARCHITECTURES Module #3 LESSON TITLE: COMPARING COMPUTER ARCHITECTURES LEARNING TARGETS: At the end of the module, you will be able to: 1. Define what is computer architecture; and 2. Differentiate the architectures used in various types of computing devices. The term architecture in computer literature signifies the efforts of Sir Lyle R. Johnson and Sir Frederick P. Brooks, members of the Machine Organization department, in 1959. Sir Johnson noted his description of formats, instruction types, hardware limitations, along with speed improvements. These were at the level of system architecture, a term that is more useful than machine organization. COMPUTER ARCHITECTURE is a set of rules and methods that describe the functionality, organization, and implementation of computer systems. TWO MAJOR APPROACHES TO THE PROCESSOR OF THE COMPUTER ARCHITECTURE ARE: Complex Reduced Instruction Instruction Set Set Computer Computer (CISC) (RISC) COMPLEX INSTRUCTION SET MICRO PROGRAM COUNTER COMPUTER (CISC) CONTROL —they can handle WORD complex tasks with just one instruction. MICRO PROGRAM MEMORY REDUCED INSTRUCTION SET INSTRUCTION REGISTER COMPUTER (RISC) CONTROL WORD —they do simpler tasks quickly and efficiently, one at a time. TYPES OF COMPUTER ARCHITECTURE Von-Neumann Harvard Architecture Architecture Instruction Set Micro- Architecture architecture John von Neumann coined and developed this architecture. The computer we are using nowadays is based on the von Neumann architecture. Harvard Architecture consists of code and data laid in distinct memory sections. It requires a separate memory block for data and instruction. It has solely contained data storage within the Central Processing Unit (CPU). INSTRUCTION SET MICRO- ARCHITECTURE ARCHITECTURE This architecture holds a collection Micro-architecture is the structural of instructions that the processor design of a microprocessor. renders and surmises. It consists of two instruction sets: RISC (Reduced Instruction Set Computer) and CISC (Complex Instruction Set Computer). SYSTEM DESIGN defines a design that can serve user requirements like system architecture, computer modules having various interfaces, and data management within a system. The term product development is connective to the system design. THANK YOU PART I. MULTIPLE CHOICE Direction: Choose the correct letter for the following questions. WRITE THE LETTER AND THE ANSWER PART I. MULTIPLE CHOICE 1. A ________is a data-processing machine. a. Computer b. Arithmetic-logic unit c. Input Devices d. Digital Computers PART I. MULTIPLE CHOICE 2. the bridge between computer users and hardware. a. Computer b. Arithmetic-logic unit c. Software d. Digital Computers PART I. MULTIPLE CHOICE 3. are used to communicate with a computer. It is also used to enter the information in the computer. a. Computer b. Arithmetic-logic unit c. Input Devices d. Digital Computers PART I. MULTIPLE CHOICE 4. are any devices that are capable of storing information temporarily or permanently. a. Computer b. Arithmetic-logic unit c. Input Devices d. Memory devices PART I. MULTIPLE CHOICE 5. An _________ is the part of a central processing unit that carries out arithmetic and logic operations on the operands in computer instruction words. a. Computer b. Arithmetic-logic unit c. Input Devices d. Memory devices PART I. MULTIPLE CHOICE 6. The term __________in computer literature signifies the efforts of Sir Lyle R. Johnson and Sir Frederick P. Brooks, members of the Machine Organization department, in 1959. a. Control Unit b. Arithmetic-logic unit c. Input Devices d. Architecture PART I. MULTIPLE CHOICE 7. _________ is the core function of any computer. When a computer receives data from an input device, this data must first go through an intermediate stage before it is sent to an output device. a. Control Unit b. Arithmetic-logic unit c. Processing d. Architecture PART I. MULTIPLE CHOICE 8. __________ are used to extract/ disseminate processed data from the computer. It presents the information processed by the CPU. a. Input devices b. Arithmetic-logic unit c. Processing d. Output devices PART I. MULTIPLE CHOICE 9. A __________ is circuitry that directs operations within a computer's processor. a. Input devices b. control unit/CU c. Processing d. Output devices PART I. MULTIPLE CHOICE 10. __________have overshadowed analog machines. a. Input devices b. control unit/CU c. Digital computers d. Output devices PART II. ENUMERATION 2 Types of Memory 11 & 12 Give 2 Examples if Input Devices 13 & 14 Give 2 Examples if Output Devices 15 & 16 4 Types of Computer Architecture 17 - 20 TYPES OF COMPUTER ARCHITECTURE Digital Education Benefits of Digital Introduction Trends Education Education Conclusion Technology TYPES OF COMPUTER ARCHITECTURE Digital Education Benefits of Digital Introduction Trends Education Education Conclusion Technology HERE ARE SOME KEY POINTS THAT EXPLAIN DIGITAL EDUCATION TRENDS: INCREASED TIME AND PLACE ACCESSIBILITY FLEXIBILITY INTERACTIVE ENGAGEMENT EDUCATION TECHNOLOGY REDUCED Various educational technologies, such as e- INSTRUCTION SET learning platforms, virtual classrooms, and educational applications, are catalysts for COMPUTER (RISC) change. They open the door to more interactive learning experiences, support collaboration between students, and give educators tools to personalize learning. DEFINITION OF DIGITAL EDUCATION As pioneers of digital education, we Let's explore together the challenges need to continuously analyze the and opportunities that exist in shaping direction of future technology. With curriculum and teaching methods that breakthroughs such as artificial are relevant to an ever-changing era. intelligence, virtual reality, and Our future education will bring amazing previously unthinkable technologies, we innovation and progress. can predict the evolution of education. Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ Lesson title: Operating system concept Materials: Student module Learning Targets: At the end of the module, students will be able to: 1. Identify the general structure and services of an References: OS. https://www.mygreatlearning.com/blog /what-is-operating-system/#examples- of-operating-system A. LESSON PREVIEW/REVIEW Introduction A wonderful day everyone. Yesterday, we tackled computer architecture in which we learned about the three majors and types of computer architecture. For today's session, we will be dealing with operating system concepts. Below are the topics to be discussed in this module: Components of operating system Features of operating system Types of operating system Examples of operating systems B. MAIN LESSON Content notes Operating System (OS)- is the most important program that is first loaded on a computer when you switch on the system. Operating System is system software. The communication between a user and a system takes place with the help of an operating system. Operating System History The first computer, the Z1, was made in 1936 – 1938. Unfortunately, this computer ran without an operating system. Twenty years later, the first-ever operating system was made in 1956. In the 1960s, bell labs started working on building UNIX, the first multitasking operating system. In 1977 the apple series came into existence. Apple Dos 3.3 was the first disk operating system. In 1981, Microsoft built the first DOS operating system by purchasing 86 – DOS software from a Seattle company. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ The most famous Microsoft windows came into existence in 1985 when MS-DOS was paired with GUI, a graphics environment. Functions of Operating System ❖ Processor Management: An operating system manages the processor’s work by allocating various jobs to it and ensuring that each process receives enough time from the processor to function properly. ❖ Memory Management: An operating system manages the allocation and deallocation of the memory to various processes and ensures that the other process does not consume the memory allocated to one process. ❖ Device Management: There are various input and output devices. An operating system controls the working of these input-output devices. It receives the requests from these devices, performs a specific task, and communicates back to the requesting process. ❖ File Management: An operating system keeps track of information regarding the creation, deletion, transfer, copy, and storage of files in an organized way. It also maintains the integrity of the data stored in these files, including the file directory structure, by protecting against unauthorized access. ❖ Security: The operating system provides various techniques that assure user data integrity and confidentiality. Following security measures are used to protect user data: Protection against unauthorized access through login. Protection against intrusion by keeping Firefall active. Protecting the system memory against malicious access. Displaying messages related to system vulnerabilities. ❖ Error Detection: From time to time, the operating system checks the system for any external threat or malicious software activity. It also checks the hardware for any type of damage. This process displays several alerts to the user so that the appropriate action can be taken against any damage caused to the system. ❖ Job Scheduling: In a multitasking operating system where multiple programs run simultaneously, the operating system determines which applications should run in order and how time should be allocated to each application. Features of Operating Systems Here is a list of some important features of operating systems: 1. Provides a platform for running applications 2. Handles memory management and CPU scheduling This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ 3. Provides file system abstraction 4. Provides networking support 5. Provides security features 6. Provides user interface 7. Provides utilities and system services 8. Supports application development Components of Operating System Now to perform the functions mentioned above, the operating system has two components: Shell Kernel Shell handles user interactions. It is the outermost layer of the operating system and manages the interaction between the user and the operating system by Prompting the user to give input Interpreting the input for the operating system Handling the output from the operating system. Shell provides a way to communicate with the operating system by either taking the input from the user or the shell script. A shell script is a sequence of system commands that are stored in a file. Kernel A kernel is the central component of an operating system. It manages the system’s resources and provides common services for computer programs. Functions of kernel The kernel is the core component of an operating system that acts as an interface between applications, and the data is processed at the hardware level. When an OS is loaded into memory, the kernel is loaded first and remains in memory until the OS is shut down. After that, the kernel provides and manages the computer resources and allows other programs to run and use these resources. The kernel also sets up the memory address space for applications, loads the files with application code into memory, and sets up the execution stack for programs. The kernel is responsible for performing the following tasks: Input-Output management This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ Memory Management Process Management for application execution. Device Management System calls control Types of Operating Systems Batch OS Distributed OS Multitasking OS Network OS Real-OS Mobile OS Types of Operating Advantages Disadvantages Examples System Batch OS is the first Execution time It is hard to debug Payroll system, bank operating system for taken for similar batch systems. statements, data entry, second-generation jobs is higher. If a job fails, then etc. computers. This OS does Multiple users the other jobs have not directly interact with can share batch to wait for an the computer. Instead, an systems. unknown time till operator takes up similar Managing large the issue is jobs and groups them works becomes resolved. together into a batch, and easy in batch Batch systems are then these batches are systems. sometimes costly. executed one by one The idle time for based on the first-come, a single batch is first, serve principle. very less. A distributed operating Failure of one The setup cost is LOCUS, etc. system is a recent system will not high. advancement in the field of affect the other Software used for computer technology and systems such systems is is utilized all over the world because all the highly complex. that too with great pace. In computers are Failure of the main a distributed OS, various independent of network will lead to computers are connected each other. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ through a single The load on the the failure of the communication channel. host system is whole system. These independent reduced. computers have their The size of the memory unit and CPU and network is are known as loosely easily scalable coupled systems. The as many system processes can be computers can of different sizes and can be added to the perform different network. functions. The major As the benefit of such a type of workload and operating system is that a resources are user can access files that shared are not present on his therefore the system but another calculations connected system. In are performed addition, remote access is at a higher available to the systems speed. connected to this network. Data exchange speed is increased with the help of electronic mail. The multitasking OS is Each task gets Processes with UNIX, etc. also known as the time- equal time for higher priority sharing operating system execution. cannot be as each task is given some The idle time for executed first as time so that all the tasks the CPU will be equal priority is work efficiently. This the lowest. given to each system provides access to There are very process or task. a large number of users, few chances for Various user data and each user gets the the duplication is needed to be time of CPU as they get in of the software. taken care of from a single system. The tasks unauthorized performed are given by a access. single user or by different Sometimes there users. The time allotted to is a data This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ execute one task is called communication a quantum, and as soon as problem. the time to execute one task is completed, the system switches over to another task. Network operating New Microsoft Windows systems are the systems technologies Server costs are server 2008, LINUX, that run on a server and and hardware high. etc. manage all the networking can easily Regular updates functions. They allow upgrade the and maintenance sharing of various files, systems. are required. applications, printers, Security of the Users are security, and other system is dependent on the networking functions over managed over central location for a small network of servers. the maximum computers like LAN or any Servers can be number of other private network. In accessed operations. the network OS, all the remotely from users are aware of the different configurations of every locations and other user within the systems. network, which is why The centralized network operating servers are systems are also known as stable. tightly coupled systems. Real-Time operating It provides more Medical imaging systems serve real-time output from all System resources systems, robots, etc. systems. These operating the resources as are extremely systems are useful when there is expensive and are many events occur in a maximum not so good. short time or within certain utilization of The algorithms deadlines, such as real- systems. used are very time simulations. complex. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ It provides the Only limited tasks Types of the real-time best can run at a single operating system are: management of time. memory In such systems, Hard real-time OS allocation. we cannot set The hard real-time OS is These systems thread priority as the operating system for are always error- these systems mainly the applications in free. cannot switch tasks which the slightest delay is These operating easily. also unacceptable. The systems focus time constraints of such more on running applications are very strict. applications than Such systems are built for those in the life-saving equipment like queue. parachutes and airbags, Shifting from one which immediately need to task to another be in action if an accident takes very little happens. time. Soft real-time OS The soft real-time OS is the operating system for applications where time constraint is not very strict. In a soft real-time system, an important task is prioritized over less important tasks, and this priority remains active until the completion of the task. Furthermore, a time limit is always set for a specific job, enabling short time delays for future tasks, which is acceptable. For Example, virtual reality, reservation systems, etc. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ A mobile OS is an It provides an Android OS, ios, operating system for ease to users. Some of the mobile Symbian OS, and smartphones, tablets, and operating systems Windows mobile OS. PDAs. It is a platform on give poor battery which other applications quality to users. can run on mobile devices. Some of the mobile operating systems are not user- friendly. Examples of Operating System Advantages of Operating System There are several advantages of operating systems. We have listed some of them below: Ensuring correct and efficient use of the computer’s hardware. Allowing different applications to run concurrently. Managing files and folders. Providing a user interface. Managing security. Managing resources. Managing printing. Providing a platform for software development. Disadvantages of Operating System There are several disadvantages of operating systems. We have listed some of them below: They can be complex and difficult to use. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ They can be expensive to purchase and maintain. They can be vulnerable to attacks from malicious users. A. LESSON WRAP-UP FAQs 1. What are the examples of operating systems? Microsoft Windows - It is a series of graphical operating systems developed, marketed, and sold by Microsoft. The first version of Windows was released to work as a GUI add-on to MS-DOS. The first version of Windows sold as a standalone operating system was Windows 95. macOS- is a series of graphical operating systems developed by Apple Inc. It is the successor to Mac OS X, and it is the operating system that powers Apple’s Mac family of computers. Linux- Linux is built around the Linux kernel and is a free and open-source software operating system. It is one of the most popular operating systems for servers and embedded devices. It is also used by millions of desktop users around the world. Android -It is a mobile operating system developed by Google. It is based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets. iOS - Another example of a mobile operating system developed by Apple Inc. iOs is the successor to iPhone OS. It is an operating system that powers the iPhone, iPad, and iPod Touch products. Thinking about Learning a) Mark your place in the work tracker which is simply a visual to help you track how much work you have accomplished and how much work there is left to do. Period 1 Period 2 Period 3 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 b) Think about your learning by filling up “My Learning Tracker”. Write the learning targets, scores, and learning experience for the session and deliberately plan for the next session. Date Learning Target/Topic Scores Action Plan What’s the What module # did you do? What were What contributed to the quality of date What were the learning targets? your scores your performance today? What will today? What activities did you do? in the you do next session to maintain your activities? performance or improve it? This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #4 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ Lesson title: Processes, Threads, and Operational Materials: Student module Concepts Learning Targets: At the end of the module, students will be able to: References: 1. Describe how the OS, applications, and the https://www.geeksforgeeks.org/cpu-sc underlying architecture interact to enable the scheduling-in-operating-systems/ computer to function. https://study.com/academy/lesson/thre ads-in-an-operating-systems-definition -examples.html A. LESSON PREVIEW/REVIEW Introduction Let’s Review! In the previous module, we identify the types of Operating Systems. Recall 1 type of operating system and explain 1 advantage and disadvantage and its example. Type of OS: Advantage: Disadvantage: Example/s: In today’s lesson, we will describe how the OS, applications, and the underlying architecture interact to enable the computer to function. As we move forward, you must keep in mind the lessons you have learned in the operating system. This will help you with the next topic. B. MAIN LESSON Content notes Thread- is a single sequence stream within a process. Threads have the same properties as the process so they are called lightweight processes. Threads are executed one after another but give the illusion as if they are executed in parallel. Each thread has different states. Each thread has 1. A program counter 2. A register set This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ 3. A stack space Threads are not independent of each other as they share the code, data, OS resources, etc. The similarity between Threads and Processes Only one thread or process is active at a time Within the process both execute sequentially Both can create children Differences between Threads and Processes – Threads are not independent, processes are. Threads are designed to assist each other, processes may or may not do it Types of Threads: 1. User Level thread (ULT) – Is implemented in the user-level library, they are not created using the system calls. Thread switching does not need to call OS and causes interruptions to Kernel. The kernel doesn’t know about the user-level thread and manages them as if they were single-threaded processes. ○ Advantages of ULT – Can be implemented on an OS that doesn’t support multithreading. Simple representation since the thread has only program counter, register set, and stack space. Simple to create since no intervention of the kernel. Thread switching is fast since no OS calls need to be made. ○ Limitations of ULT – No or less coordination among the threads and Kernel. If one thread causes a page fault, the entire process blocks. 2. Kernel Level Thread (KLT) – Kernel knows and manages the threads. Instead of a thread table in each process, the kernel itself has a thread table (a master one) that keeps track of all the threads in the system. In addition, the kernel also maintains the traditional process table to keep track of the processes. The OS kernel provides system calls to create and manage threads. ○ Advantages of KLT – Since the kernel has full knowledge about the threads in the system, the scheduler may decide to give more time to processes having a large number of threads. Good for applications that frequently block. ○ Limitations of KLT – Slow and inefficient. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ It requires a thread control block so it is an overhead. Process: Processes are the programs that are dispatched from the ready state and are scheduled in the CPU for execution. PCB(Process Control Block) holds the concept of process. A process can create other processes which are known as Child Processes. The process takes more time to terminate and it is isolated, meaning it does not share the memory with any other process. The process can have the following states new, ready, running, waiting, terminated, and suspended. Thread: Thread is the segment of a process which means a process can have multiple threads and these multiple threads are contained within a process. A thread has three states: Running, Ready, and Blocked. The thread takes less time to terminate as compared to the process but unlike the process, threads do not isolate. Differents between process and threads S.NO Process Thread Process means any 1. Thread means a segment of a process. program is in execution. The process takes more 2. The thread takes less time to terminate. time to terminate. It takes more time for 3. It takes less time for creation. creation. It also takes more time for 4. It takes less time for context switching. context switching. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ The process is less efficient Thread is more efficient in terms of 5. in terms of communication. communication. We don’t need multi programs in action for Multiprogramming holds the 6. multiple threads because a single process concepts of multi-process. consists of multiple threads. 7. The process is isolated. Threads share memory. The process is called the A Thread is lightweight as each thread in a 8. heavyweight process. process shares code, data, and resources. Process switching uses an Thread switching does not require calling an 9. interface in an operating operating system and causes an interrupt to system. the kernel. If one process is blocked then it will not affect the If a user-level thread is blocked, then all 10. execution of other other user-level threads are blocked. processes The process has its own Thread has Parents’ PCB, its Thread Control 11. Process Control Block, Block, and Stack and common Address Stack, and Address Space. space. Since all threads of the same process share Changes to the parent address space and other resources, any 12. process do not affect child changes to the main thread may affect the processes. behavior of the other threads of the process. This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ Multi-Threading It might be easy to confuse multitasking with multi-threading. Multitasking is a general term for doing many tasks at the same time. On the other hand, multi-threading is the ability of a process to execute multiple threads at the same time. Again, the MS Word example is appropriate in multi-threading scenarios. The process can check spelling, auto-save, and read files from the hard drive, all while you are working on a document. Consider the following diagram. The threads share the same code, files, and data. This means that two or more threads can run at the same time (auto-save, grammar check, spell-check, word-count, etc.). Skill Building Activity Instruction: Read the questions carefully and write your answers in the space provided below. _________1. A process can execute multiple threads at the same time. _________2. It is implemented in the user-level library, they are not created using the system calls. _________3. It is a single sequence stream within a process. ________4. It is the programs that are dispatched from the ready state and are scheduled in the CPU for execution. _________5. Knows and manages the threads. Check for Understanding Write T if the statement is true or correct; else F if the statement is false or incorrect. 1. Thread means a segment of a process. 2. The process is called the shared memory. 3. The process is more efficient in terms of communication. 4. We don’t need multi programs in action for multiple threads because a single process consists of multiple threads. 5. Thread switching does require calling an operating system and causes an interrupt to the kernel. A. LESSON WRAP-UP FAQs This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ 1. What are the properties of the thread? Here are important properties of a Thread: A single system call can create more than one thread Threads share data and information. Threads shares instruction, global, and heap regions. However, it has its register and stack. Thread management consumes very few, or no system calls because of communication between threads that can be achieved using shared memory. 2. What are the properties of the process? Here are the important properties of the process: The creation of each process requires separate system calls for each process. It is an isolated execution entity and does not share data and information. Processes use the IPC(Inter-Process Communication) mechanism for communication that significantly increases the number of system calls. Process management takes more system calls. A process has its stack, heap memory with memory, and data map. Thinking about Learning a) Mark your place in the work tracker which is simply a visual to help you track how much work you have accomplished and how much work there is left to do. Period 1 Period 2 Period 3 1 2 3 4 5 6 7 8 9 1 11 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 0 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 b) Think about your learning by filling up “My Learning Tracker”. Write the learning targets, scores, and learning experience for the session and deliberately plan for the next session. Date Learning Target/Topic Scores Action Plan What’s the What module # did you do? What were What contributed to the quality of date What were the learning targets? your scores your performance today? What will today? What activities did you do? in the you do next session to maintain activities? your performance or improve it? This document is the property of PHINMA EDUCATION Course Code: ITE 366 - Introduction to Computing (Including IT Fundamentals) Module #5 STUDENT ACTIVITY SHEET Name: _____________________________________________________ Class number: _____ Section: ___________Schedule:_________________________________ Date: ____________ This document is the property of PHINMA EDUCATION

Use Quizgecko on...
Browser
Browser