Programming & Computers

Size: px
Start display at page:

Download "Programming & Computers"

Transcription

1 Programming & Computers CS Kaminski CS1110 focus 1. Problem solving Understand problem & requirements (I P O) Design modular program Design algorithms Code solution Test & debug 2. Programming PP (Procedural Programming) OOP (Object-Oriented Programming) 3. Language: Java (basics) 4. IDE: NetBeans (basics minor focus) 2 a computer Laptop, desktop [CS1110 focus] Mainframe, supercomputer Tablet, smart phone, Tivo, Xbox, Server: print server, file server, DB server, web server, 2 parts Hardware (HW) [read chap 1 in book] 1. CPU 2. Memory (RAM, ) 3. Storage: disk, thumb drive, 4. I/O devices 5. Connectivity: network, wifi, bluetooth, ethernet, Software (SW) [CS1110 focus] application programs (vs. Systems programs) makes computer smart controls HW hides most HW from user 3 4 HW -bits, bytes, words 1 byte = 8 bits a bit is either ON (1) or OFF (0) 1 word = 4 bytes (32-bit system) = 8 bytes (64-bit system) word contain: Machine language INSTRUCTION or DATA: 1 char ( A ) stored in 1 byte (or 2 if Unicode) 1 integer ( ) stored in 4 bytes etc. 5 SW (= programs) system SW OS, utilities, device drivers, compilers, network application SW general-purpose DBMS, MS Office, browser application-specific payroll, WMU registration, most ios / Android apps 6 1

2 Program recipe detailed step-by-step set of INSTRUCTIONS tells computer EXACTLY what to do controls HW processes data an algorithm a solution to a problem, implemented in a programming language Types of Programmers Application programmer Systems Database Network Web... AI Games programmer 7 8 Software Engineer Programmer Systems Analyst - Developer - Designer SW Engineer Plan, design, code, test, document GUI (Graphical User Interface) Program modules (classes, methods) main Code (= write program) Customize pre-written package Algorithm set of well-defined steps to do a specific task steps done sequentially (unless ) algorithm translated to machine language algorithm written in pseudocode or flowchart or... developer implements algorithm in a high-level language (like Java) compiler (or ) produces machine language (all 0 s and 1 s) 9 IPO (IPSO) model Input Processing Output & Storing HUMAN see/hear IPO model [think & remember] speak/write HW mouse/kb [CPU & RAM & disk] screen, SW data [process & store] data (user/file/db) (user/file/db) ^^^^^^^^^^^^^ the PROGRAM

3 IPO -SW Data windows application PROGRAM user input [process & store] screen display mouse clicks DB data in a form a program METHOD input parameters [procedure] return value [& local variables] [& class s instance variables] text, numbers graphics, sound, images, movies,... mouse clicks (single/double, left/right), mouse hovers, smartphone shakes... web page, text message, Types of applications Batch processing Typically: file in, file/printer out Interactive simple text I/O with user (Console App) GUI (Windows App) Web App - Java can do all of these - CS1110 mainly Console Applications Windows vs. Console App Input Event-driven Windows app PUSHed into program by user Console app PULLed into program by program Controller user program (main) Interface windows/gui/ visual/web/... console (text) Mode interactive batch or simple text I/O Types of Programs Event-driven program Modular program Visual program Structured program Procedural program Object-oriented program (OOP) - overlap - Java can do all of these - CS1110: Modular/Structured/ Procedural/OOP 17 Event-driven programming IPO: event [handler module in program] effects Events: left-mouse-click on button, mouse hovers over X, user hits F5 key, sensor detects iphone shake, change made to DB,... Program: set of modules to handle ANY event that could happen 18 3

4 Modular programming Program = a collection of small modules A module is: (in Procedural Programming) an IPO procedure or function (in Object Oriented Programming) a Class (object) a IPO method (~ a procedure) in a class Programming = write modules Top-down or bottom-up Visual Programming Visual C#, Visual Basic, Java with library of classes 1) Construct GUI from pre-existing components Text box, radio button, slider bar, dropdown list,... 2) Adjust properties of these objects 3) Add procedural code (a module) specifying: WHAT to do for each EVENT that might happen to this object (Much code is auto-generated for an object) Structured Programming Program/methods made from STACKING or NESTING: 1) Sequence Structures do action1, do action2, do action3,... 2) Selection (decision condition) Structures if conditionx is true then do action1,... else do action2,... 3) Repetition (loop) Structures while conditiony is true then { do action1, do action2,... } 21 Procedural Programming (PP) older languages mainly PP a procedure = named set of statements which do a specific task program is a set of procedures procedure (function) operates on program s data Data passed in to procedure Procedure returns resulting data 22 Object-Oriented Programming (OOP) OOP focus: create objects (vs. procedures) Object = combination of BOTH 1. Data = the attributes of the object 2. Procedures that manipulate that data - methods = behaviors of the object - services that users of the object might need OOP Encapsulation - combine data & behaviors Data hiding = object X s data not visible to other parts of program Only object X s methods can directly manipulate object X s data Other objects can only access/manipulate object X s attributes VIA object X s public service methods 4

5 Programming Determine: WHAT needs to be done HOW to do it (algorithm) = problem-solving solution 1) Solve the right problem AND 2) Solve the problem right A Good Program Produces correct output Follows client/designer s specs o functionality o output Runs fast Is compact (space) Clear & easy to change Example Problems iphone/android app List Song titles in alpha order on ipod Calculate final grade in CS1110 Pay off a car loan of size: amount at interest rate %: rate over? Years: numyears Google Maps find shortest route Kalamazoo San Francisco Steps in programming 1. Requirements specification (what) o input, processing, output 2. Program design (how) o algorithm, modules, GUI 3. Coding (development) [in Java] 4. Testing & debugging o compile errors & logic errors & runtime errors o validate output results 5. Documentation (external) 6. Maintenance Algorithm ( P of IPO) EXAMPLE: find sum of 1 st 100 integers User s view: BLACK-box Programmer s view: WHITE ( clear )-box (write & test actual code) Program s processing could: Look it up in a table / file / DB Crowdsource micro-task on internet Calculate using Algorithm A: Calculate using Algorithm B: (100 * (100+1)) / 2 Construct program from pre-existing classes/methods in library only need to know method s interface classes/methods written by programmer

6 Basic Program Operations 1) Actual Work arithmetic comparison ( =, <, >, and, or, not) 2) Move/store data Assignment Memory Memory I/O (Read) keyboard /mouse/touchscreen s touch/file/ Memory I/O (Write) Memory screen/printer/file/ 3) Control the flow (what instruction executes next) default: do next line maybe do this line (if, switch) do this multiple times (loop) goto & return (call) 4) Packaging methods (procedures) classes Pr.Language Generations 1 st ) Machine Languages (ML) s programmers wrote in ML Machine-dependent - each CPU has its own ML (Mac vs. PC) 2 nd ) Assembly Languages Add 210(8,13) Machine-dependent 3 rd ) High Level Languages (HLL) Java, C, C#, C++, Python, Ruby, PHP, Visual BASIC, Not processor-dependent but usually needs machine-specific compiler average = (ex1 + ex2 + ex3) / 3; main programming paradigms Procedural (PP) o C, COBOL, Fortran, Basic,... o any OOP language can do PP Object-oriented (OOP) o Java, C#, C++, Visual Basic,... o Newer versions of COBOL, th ) Application-specific Languages e.g., SQL for DBS (describe WHAT not HOW) Select name, phone from student where major = CS and state = MI ; 5 th ) Natural Languages (English,...) If patient is age 65 or older and is disoriented and has pain in his/her left arm then patient could have had a heart attack 35 6

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented

More information

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

More information

Chapter 12 Programming Concepts and Languages

Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Paradigm Publishing, Inc. 12-1 Presentation Overview Programming Concepts Problem-Solving Techniques The Evolution

More information

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages 15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning

More information

Outline. Introduction To Computers and. Programming. Computer system. What is a computer? Basic Computer Architecture

Outline. Introduction To Computers and. Programming. Computer system. What is a computer? Basic Computer Architecture Introduction To Computers and Outline Computer and information History of computer technology 1 2 What is a computer? Computer system A computer is an information-processing machine that performs simple

More information

Introduction to Computers and Programming. Hardware Software Computer languages Compiling and running

Introduction to Computers and Programming. Hardware Software Computer languages Compiling and running Introduction to Computers and Programming Hardware Software Computer languages Compiling and running 1 Computer Basics A computer system consists of both hardware and software. Hardware - the physical

More information

OPERATING SYSTEMS, PROGRAMMING LANGUAGES, AND GAME ENGINES

OPERATING SYSTEMS, PROGRAMMING LANGUAGES, AND GAME ENGINES OPERATING SYSTEMS, PROGRAMMING LANGUAGES, AND GAME ENGINES In this lesson you will learn about Operating Systems, various programming languages, game engines, and more specifically the Construct 2 game

More information

Operating Systems. John SUM Institute of Technology Management National Chung Hsing University Taichung, ROC. December 6, 2012

Operating Systems. John SUM Institute of Technology Management National Chung Hsing University Taichung, ROC. December 6, 2012 Operating Systems John SUM Institute of Technology Management National Chung Hsing University Taichung, ROC December 6, 2012 Contents 1 Introduction 2 2 System Initialization 2 2.1 Instructions from BIOS......................

More information

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0 1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level

More information

Tutorial No. 1 - Solution (Introduction to Computers & Programming)

Tutorial No. 1 - Solution (Introduction to Computers & Programming) Tutorial No. 1 - Solution (Introduction to Computers & Programming) Computer Programming and Utilization (2110003) 1. Draw a block diagram of computer architecture. 2. List various components of a computer

More information

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Competencies (Page 1 of 2) Describe the six steps of programming Discuss design

More information

CSE 1010e: INTRODUCTION TO INFORMATION TECHNOLOGY SECTION A. Multiple Choice Questions. Answer ALL Questions

CSE 1010e: INTRODUCTION TO INFORMATION TECHNOLOGY SECTION A. Multiple Choice Questions. Answer ALL Questions CSE 1010e: INTRODUCTION TO INFORMATION TECHNOLOGY SECTION A Multiple Choice Questions Answer ALL Questions 1. allow(s) users to interactively send instructions (such as printing and closing a window) to

More information

Overview of Computers and Programming. Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus

Overview of Computers and Programming. Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus Overview of Computers and Programming Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus Lecture 01 - Course Introduction Christopher M. Bourke cbourke@cse.unl.edu Computer

More information

Lesson 06: Basics of Software Development (W02D2

Lesson 06: Basics of Software Development (W02D2 Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash

More information

Course MS10975A Introduction to Programming. Length: 5 Days

Course MS10975A Introduction to Programming. Length: 5 Days 3 Riverchase Office Plaza Hoover, Alabama 35244 Phone: 205.989.4944 Fax: 855.317.2187 E-Mail: rwhitney@discoveritt.com Web: www.discoveritt.com Course MS10975A Introduction to Programming Length: 5 Days

More information

Chapter 1: Preliminaries

Chapter 1: Preliminaries Chapter 1: Preliminaries 1 Objectives In this chapter, you will learn about: Unit analysis Exponential and scientific notations Software development Algorithms Software, hardware, and computer storage

More information

OKLAHOMA SUBJECT AREA TESTS (OSAT )

OKLAHOMA SUBJECT AREA TESTS (OSAT ) CERTIFICATION EXAMINATIONS FOR OKLAHOMA EDUCATORS (CEOE ) OKLAHOMA SUBJECT AREA TESTS (OSAT ) FIELD 081: COMPUTER SCIENCE September 2008 Subarea Range of Competencies I. Computer Use in Educational Environments

More information

Computers and. Why Program?

Computers and. Why Program? Chapter 1: Introduction to Computers and Programming 11 1.1 Why Program? Why Program? Computer programmable machine designed to follow instructions Program instructions in computer memory to make it do

More information

Example of Standard API

Example of Standard API 16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

More information

Introduction to Computers and Programming Languages (Part 1)

Introduction to Computers and Programming Languages (Part 1) Introduction to Computers and Programming Languages (Part 1) Computer Fundamentals Computer system is divided into hardware and software. Hardware refers to physical components of computer which are: o

More information

Fundamental Concepts of Operating Systems

Fundamental Concepts of Operating Systems Fundamental Concepts of Operating Systems Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr 1. OS, What and Why? 2. Dual Mode Operation 3. Reusable SW Platform

More information

An Introduc+on to Computers and Java CSC 121 Fall 2016 Howard Rosenthal

An Introduc+on to Computers and Java CSC 121 Fall 2016 Howard Rosenthal An Introduc+on to Computers and Java CSC 121 Fall 2016 Howard Rosenthal Lesson Goals Learn the basic terminology of a computer system Understand the basics of high level languages, including java Understand

More information

SIT102 Introduction to Programming

SIT102 Introduction to Programming SIT102 Introduction to Programming After working through this session you should: Understand the relationships between operating systems, their user interfaces, and programs; Understand the difference

More information

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont. Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures

More information

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11 EMC Publishing Ontario Curriculum Computer and Information Science Grade 11 Correlations for: An Introduction to Programming Using Microsoft Visual Basic 2005 Theory and Foundation Overall Expectations

More information

Review questions for Chapter 9

Review questions for Chapter 9 Answer first, then check at the end. Review questions for Chapter 9 True/False 1. A compiler translates a high-level language program into the corresponding program in machine code. 2. An interpreter is

More information

Course Description. Course Audience. Course Page - Page 1 of 8. Introduction to Programming M Length: 5 days Price: $2,795.

Course Description. Course Audience. Course Page - Page 1 of 8. Introduction to Programming M Length: 5 days Price: $2,795. Course Page - Page 1 of 8 Introduction to Programming M-10975 Length: 5 days Price: $2,795.00 Course Description In this 5-day instructor-led course, students will learn the basics of computer programming

More information

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES Subarea Educational Computing and Technology Literacy Computer Systems, Data, and Algorithms Program Design and Verification Programming Language

More information

Introduction to Java Programming

Introduction to Java Programming Introduction to Java Programming Lecture 1 CGS 3416 Spring 2016 January 7, 2016 Main Components of a computer CPU - Central Processing Unit: The brain of the computer ISA - Instruction Set Architecture:

More information

Solution Exercise 1.1

Solution Exercise 1.1 Solution Exercise 1.1 Part I Fill in the blanks with the most appropriate answers. 1. A Program is a sequence of step-by-step instructions that a computer executes in order to solve a problem or to perform

More information

IT Fundamentals of Programming. Course Structure. Why people use machines? Café Machine. Machines IT1033: Fundamentals of Programming

IT Fundamentals of Programming. Course Structure. Why people use machines? Café Machine. Machines IT1033: Fundamentals of Programming IT1033: Fundamentals of Programming IT 1033 Fundamentals of Programming Budditha Hettige Department of Computer Science Lectures 30 Hours Practicals /Tutorials 30 hours Assignment (30%) Practical Test

More information

Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages

Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages. Procedural Languages Objectives Differentiate between machine and and assembly languages Describe Describe various various ways ways to to develop develop Web Web pages pages including including HTML, HTML, scripting scripting

More information

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage Outline 1 Computer Architecture hardware components programming environments 2 Getting Started with Python installing Python executing Python code 3 Number Systems decimal and binary notations running

More information

Programming Logic and Design Seventh Edition. Chapter 1 An Overview of Computers and Programming

Programming Logic and Design Seventh Edition. Chapter 1 An Overview of Computers and Programming Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming Objectives In this chapter, you will learn about: Computer systems Simple program logic The steps involved

More information

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc.

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc. Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Eleventh Edition Technology in Action Chapter 4 System Software: The Operating System, Utility Programs, and File Management. Chapter Topics

More information

Operating Systems. Lecture2: System Calls, OS Structure

Operating Systems. Lecture2: System Calls, OS Structure Operating Systems Lecture2: System Calls, OS Structure System Calls Interface between the OS and user programs is defined by the set of system calls provided by OS Request to kernel Is like making a function

More information

CSE 380 Computer Operating Systems

CSE 380 Computer Operating Systems CSE 380 Computer Operating Systems Instructor: Insup Lee University of Pennsylvania Fall 2003 Lecture Note 1: Introduction 1 What is an Operating System? Operating systems provides an interface between

More information

Question 2. Question 3. 0 out of 1 points. The basic commands that a computer performs are, and performance of arithmetic and logical operations.

Question 2. Question 3. 0 out of 1 points. The basic commands that a computer performs are, and performance of arithmetic and logical operations. The basic commands that a computer performs are, and performance of arithmetic and logical operations. input, file Question 2 input, output, storage output, folder storage, directory Main memory is called.

More information

Chapter 1: Introducing Computer Programming

Chapter 1: Introducing Computer Programming Chapter 1: Introducing Computer Programming Intended Learning Outcomes After completing this chapter, you should be able to: Explain the difference between computers and other machines. Describe the purpose

More information

Chapter 11. Programming Languages and Program Development. What You Will Learn About. Computers Are Your Future. What You Will Learn About

Chapter 11. Programming Languages and Program Development. What You Will Learn About. Computers Are Your Future. What You Will Learn About What You Will Learn About Computers Are Your Future Chapter 11 Programming Languages and Program Development What a programming is Machine and assembly High-level programming s The shortcomings of early

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify

More information

CHAPTER 2 - SYSTEM STRUCTURES

CHAPTER 2 - SYSTEM STRUCTURES CHAPTER 2 - SYSTEM STRUCTURES 1 OBJECTIVES To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system To

More information

CHAPTER 2 PROBLEM SOLVING

CHAPTER 2 PROBLEM SOLVING CHAPTER 2 PROBLEM SOLVING This chapter will cover the following topics: Problem Solving Concepts for the Computer Pre-Programming Phase Programming Or Implementation Phase What Problem Can Be Solved By

More information

Chapter Goals. 1.1 Computer Programs. Contents 1/9/13

Chapter Goals. 1.1 Computer Programs. Contents 1/9/13 CHAPTER 1 Chapter Goals To learn about computers and programming To compile and run your first Java program To recognize compile-time and run-time errors To describe an algorithm with pseudocode In this

More information

Chapter 1: An Overview of Computers and Programming Languages

Chapter 1: An Overview of Computers and Programming Languages Chapter 1: An Overview of Computers and Programming Languages Objectives In this chapter, you will: Learn about different types of computers Explore hardware and software Learn about the language of a

More information

Objectives. Chapter 1: An Overview of Computers and Programming Languages. Introduction. Objectives (cont d.)

Objectives. Chapter 1: An Overview of Computers and Programming Languages. Introduction. Objectives (cont d.) Objectives Chapter 1: An Overview of Computers and Programming Languages In this chapter, you will: Learn about different types of computers Explore hardware and software Learn about the language of a

More information

Chapter 1: An Overview of Computers and Programming Languages. Objectives. Objectives (cont d.) Introduction 16/09/2015

Chapter 1: An Overview of Computers and Programming Languages. Objectives. Objectives (cont d.) Introduction 16/09/2015 Chapter 1: An Overview of Computers and Programming Languages Objectives Objectives (cont d.) In this chapter, you will: Learn about different types of computers Explore hardware and software Learn about

More information

OPERATING SYSTEM SERVICES

OPERATING SYSTEM SERVICES OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered

More information

learning objectives understand the role of an operating system understand the role of interpreters and compilers

learning objectives understand the role of an operating system understand the role of interpreters and compilers system software learning objectives algorithms your software system software hardware understand the role of an operating system understand the role of interpreters and compilers understand the role of

More information

ITP 101 Intro to IT. Programming

ITP 101 Intro to IT. Programming ITP 101 Intro to IT Programming Overview Programming lifecycle Program design Testing and debugging 2 Facebook? 3 Why Learn Programming? Intellectually challenging Careers in programming Entry level programmer

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove (amislove@ccs.neu.edu) Operating System Services Operating systems provide an environment for

More information

Scientific Computing. Lecture 2 Programming and Software. Parts adapted from MIT Lecture Notes, Thomas Herring

Scientific Computing. Lecture 2 Programming and Software. Parts adapted from MIT Lecture Notes, Thomas Herring ECE257 Numerical Methods and Scientific Computing Lecture 2 Programming and Software Parts adapted from MIT 12.010 Lecture Notes, Thomas Herring Packages vs. Programming Packages MATLAB Mathematica Maple

More information

Computers: Software. Computer Layers 10/19/13. Acknowledgments. Thanks to the following web site for the images used in this presentation:

Computers: Software. Computer Layers 10/19/13. Acknowledgments. Thanks to the following web site for the images used in this presentation: Computers: Patrice Koehl Computer Science UC Davis Acknowledgments Thanks to the following web site for the images used in this presentation: - Wikipedia - http://microsoft.toddverbeek.com - http://www.webopedia.com

More information

Chapter 3: The Visible Computer

Chapter 3: The Visible Computer Chapter 3: The Visible Computer Charles Babbage - The calculating engines of English mathematician Charles Babbage (1791-1871) are among the most celebrated icons in the prehistory of computing. Babbage

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures, (modified by Stewart Weiss, 2009) Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls

More information

Computational Methods of Scientific Programming

Computational Methods of Scientific Programming 12.010 Computational Methods of Scientific Programming Lecturers Thomas A Herring, Jim Elliot, Chris Hill, Today s class: Basic content of course and class expectations Overview of languages Overview of

More information

A computer that plays cards

A computer that plays cards A computer that plays cards 1. Come up with a binary encoding for a 52-card deck Operations on a pair of cards 2. We want the following operations to be easy to implement Compare two cards, which is higher

More information

Introduction to Embedded Systems. Software Update Problem

Introduction to Embedded Systems. Software Update Problem Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis logistics minor Today s topics: more software development issues 1 CS 5780 Software Update Problem Lab machines work let us know if they don t

More information

BEGIN PROGRAMMING: A-Z GLOSSARY

BEGIN PROGRAMMING: A-Z GLOSSARY Begin programming: Build your first mobile game BEGIN PROGRAMMING: A-Z GLOSSARY This glossary explains some of the words and phrases that we use in the course. It s a work in progress, so if there s anything

More information

OVERVIEW OF COMPUTER SYSTEMS. A.1 Introduction. A.2 What is a Computer?

OVERVIEW OF COMPUTER SYSTEMS. A.1 Introduction. A.2 What is a Computer? 5670appa.qxd_lbI 10/2/03 4:00 PM Page 229 S U P P L E M E N T I A OVERVIEW OF COMPUTER SYSTEMS A.1 Introduction This supplement introduces computer basics. Specifically, it discusses computer hardware

More information

Chapter 1. Introduction to Computer

Chapter 1. Introduction to Computer Chapter 1 Introduction to Computer Topic Definition of Computer Computer Basic Operations Categories of Computer Computer Parts Computer Basics Components Input Devices Output Devices Storage Devices Computer

More information

Section A Multiple Choice Questions [20 marks] NOTE: Please use the Multiple Answer Sheet for this section.

Section A Multiple Choice Questions [20 marks] NOTE: Please use the Multiple Answer Sheet for this section. Section A Multiple Choice Questions [20 marks] NOTE: Please use the Multiple Answer Sheet for this section. 1. How many bytes is 27KB? A. 11011 bytes B. 27468 bytes C. 27648 bytes D. 28311552 bytes E.

More information

In the image below, you can see the start-up screen that appears when you turn on a Windows 7 computer.

In the image below, you can see the start-up screen that appears when you turn on a Windows 7 computer. Computer Basics Understanding Operating Systems What is an operating system? Page 12 34 56 7 An operating system is the most important software that runs on a computer. It manages the computer's memory,

More information

Operating-System Structures

Operating-System Structures Operating-System Structures Source: Operating System Concepts by Silberschatz, Galvin and Gagne 2.1 OS Basics Explore What components OS has What services OS provides How they are provided: Structuring

More information

Programming and Software Development CTAG Alignments

Programming and Software Development CTAG Alignments Programming and Software Development CTAG Alignments This document contains information about four Career-Technical Articulation Numbers (CTANs) for Programming and Software Development Career-Technical

More information

8/2/ Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc.

8/2/ Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc. Technology in Action Behind the Scenes: Software Programming Topics System development life cycle Life cycle of a program Problem statement Algorithms Moving from algorithm to code Moving from code to

More information

SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2)

SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2) SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2) SOFTWARE CATEGORIES There are two main type of software categories Operating Systems Software Application Software

More information

Syllabus for CS 134 Java Programming

Syllabus for CS 134 Java Programming - Java Programming Syllabus Page 1 Syllabus for CS 134 Java Programming Computer Science Course Catalog 2000-2001: This course is an introduction to objectoriented programming using the Java language.

More information

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40 SOFTWARE DEVELOPMENT, 15.1200.40 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION TECHNOLOGY 1.1 Describe methods and considerations for prioritizing and scheduling software development

More information

Program Development and Programming Languages

Program Development and Programming Languages 1 Chapter 15 Program Development and Programming Languages 2 Chapter 15 Objectives 3 What Is a Computer Program? 1 What is a computer program? 2 Set of instructions that directs computer to perform tasks

More information

SOFTWARE CONCEPTS COMPUTER SOFTWARE. Utility Software

SOFTWARE CONCEPTS COMPUTER SOFTWARE. Utility Software SOFTWARE CONCEPTS Definition: Computer software is a collection of computer programs and related data which performs a specific task and instructs the hardware that what it has to do. Types of software:

More information

Lecture notes: Essential Computer concepts

Lecture notes: Essential Computer concepts Concepts Lecture Notes - Page 1 of 8 Lecture notes: Essential Computer concepts What is a computer? An electronic device that accepts data (input), manipulates (processes) that data to produce information

More information

Some programming experience in a high-level structured programming language is recommended.

Some programming experience in a high-level structured programming language is recommended. Python Programming Course Description This course is an introduction to the Python programming language. Programming techniques covered by this course include modularity, abstraction, top-down design,

More information

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program EKT150 Introduction to Computer Programming Wk1-Introduction to Computer and Computer Program A Brief Look At Computer Computer is a device that receives input, stores and processes data, and provides

More information

Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1)

Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1) Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1) Computer Programming A computer is a programmable machine. This means it

More information

JavaScript Model in a Nutshell

JavaScript Model in a Nutshell JavaScript Model in a Nutshell The purpose of this document is to introduce you to enough of the JavaScript language model as it is typically used in a web application like RWB. We will not cover the syntax

More information

Software: Systems and Application Software

Software: Systems and Application Software Software: Systems and Application Software Computer Software Operating System Popular Operating Systems Language Translators Utility Programs Applications Programs Types of Application Software Personal

More information

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson CS 3530 Operating Systems L02 OS Intro Part 1 Dr. Ken Hoganson Chapter 1 Basic Concepts of Operating Systems Computer Systems A computer system consists of two basic types of components: Hardware components,

More information

Introduction to Programming (in C++) Introduction. Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC

Introduction to Programming (in C++) Introduction. Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC Introduction to Programming (in C++) Introduction Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC Outline Programming examples Algorithms, programming languages and computer

More information

Operating Systems. Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet. Operating Systems

Operating Systems. Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet. Operating Systems Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet Operating Systems An operating system (OS) is a set of programs containing instructions that work together to

More information

What is an Operating System?

What is an Operating System? Computer Basics Understanding Operating Systems What is an Operating System? Page 1 An operating system is the most important software that runs on a computer. It manages the computer's memory, processes,

More information

Discovering Computers

Discovering Computers Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet Chapter 9 Operating Systems Objectives Overview Define an operating system Describe the start-up process and shutdown

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Write your own Android App

Write your own Android App Malling U3A Advanced Computer Group Write your own Android App Chris Daly 19 th January 2016 What are Apps? Apps App is short for Application Software - this can be any type of computer program. Mobile

More information

Fundamentals of Programming and Software Development Lesson Objectives

Fundamentals of Programming and Software Development Lesson Objectives Lesson Unit 1: INTRODUCTION TO COMPUTERS Computer History Create a timeline illustrating the most significant contributions to computing technology Describe the history and evolution of the computer Identify

More information

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul jellul@imperial.ac.uk Overview Brief introduction to Body Sensor Networks BSN Hardware

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

CS 2630 Computer Organization. Meeting 3: bits, and MIPS intro Brandon Myers University of Iowa

CS 2630 Computer Organization. Meeting 3: bits, and MIPS intro Brandon Myers University of Iowa CS 2630 Computer Organization Meeting 3: bits, and MIPS intro Brandon Myers University of Iowa Where we are going Compiler Instruction set architecture (e.g., MIPS) translating source code (C or Java)

More information

Computer Layers. Hardware BOOT. Operating System. Applications

Computer Layers. Hardware BOOT. Operating System. Applications Computers Software Computer Layers Hardware BOOT Operating System Applications Software Classifications System Software (operating system) Application Software Utility Software Malware Viruses and worms

More information

Overview of Operating Systems

Overview of Operating Systems Lecture Outline Overview of Operating Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. 1 2 Lecture Outline Von Neumann Architecture 3 This describes

More information

IGCSE Information Communication Technology (ICT) Syllabus code Section 1: Types and components of computer systems

IGCSE Information Communication Technology (ICT) Syllabus code Section 1: Types and components of computer systems IGCSE Information Communication Technology (ICT) Syllabus code 0417 Section 1: Types and components of computer systems Section 1 a. define hardware, giving examples; b. define software, giving examples;

More information

VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED.

VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED. VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED. Starting Vmware Workstation Go to the start menu and start the VMware Workstation program. *If you are using

More information

used) Objectives Skills Assessment Standards Key Terms Below Level Teacher Observation Projects Chapter Questions Test

used) Objectives Skills Assessment Standards Key Terms Below Level Teacher Observation Projects Chapter Questions Test Computer Programming 10th-12th Grade Curwensville Area School District 1st Lesson 1 used) Objectives Skills Assessment Standards Key Terms Below Level Objectives: Introduce students to computer and visual

More information

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40 SOFTWARE DEVELOPMENT, 15.1200.40 STANDARD 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION 1.1 Describe methods of establishing priorities 1.2 Prepare a plan of work and schedule information

More information

Intro to Programming: Basic Definitions

Intro to Programming: Basic Definitions Intro to Programming: Basic Definitions Programming: The planning, scheduling, or performing of a task or event Computer program: A sequence of instructions for a computer to execute Computer: An electronic,

More information

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C Embedded Systems A Review of ANSI C and Considerations for Embedded C Programming Dr. Jeff Jackson Lecture 2-1 Review of ANSI C Topics Basic features of C C fundamentals Basic data types Expressions Selection

More information

Multiple Category Scope and Sequence: Scope and Sequence Report For Course Standards and Objectives, Content, Skills, Vocabulary

Multiple Category Scope and Sequence: Scope and Sequence Report For Course Standards and Objectives, Content, Skills, Vocabulary Multiple Category Scope and Sequence: Scope and Sequence Report For Course Standards and Objectives, Content, Skills, Vocabulary Wednesday, August 20, 2014, 12:22PM District Intermediate Computer Programming

More information

International Engineering Journal For Research & Development

International Engineering Journal For Research & Development Evolution Of Operating System And Open Source Android Application Nilesh T.Gole 1, Amit Manikrao 2, Niraj Kanot 3,Mohan Pande 4 1,M.tech(CSE)JNTU, 2 M.tech(CSE)SGBAU, 3 M.tech(CSE),JNTU, Hyderabad 1 sheyanilu@gmail.com,

More information

C Programming Language with Applications. Lecture 2: Introduction to C Programming Language

C Programming Language with Applications. Lecture 2: Introduction to C Programming Language C Programming Language with Applications Lecture Note 2 Intro to C Programming Language Professor Paul I. Lin, lin@ipfw.edu http://www.etcs.ipfw.edu/~lin P I. Lin - Lect 2. Intro to C Language 1 Lecture

More information