Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

INFO1216 FINAL EXAM REVIEW

Winter 2022

Final Exam Format

• The exam will take place on Tuesday, April 19th from 9:00am to 12:00pm EST

• FOL Quiz, Requires Respondus Lockdown Browser and webcam for Respondus Monitor

Part A:

 45 Marks

–  15 Multiple Choice

–  15 True/False

– 3 Matching

• Topics

– Hardware, Software, Operating Systems

– Software Development and Runtime Environments

– Internet and the Web, Privacy, Security

– Networking

Part B:

 56 Marks

– 21 Short Answer

– 2 Reflection Questions (Optional Short Answer)

• Topics

– Lab Content

– Lecture Content

– Sight Reading

Content

• Hardware (Week 3 slides and lecture, zyBooks chapter 2. 1 - 2. 6)

– Parts of a CPU

– Fetch/decode/execute cycle

– Speed of a CPU

• Main Memory (Week 3 slides and lecture, zyBooks chapter 2. 1 - 2. 6)

– DRAM vs SRAM

– Cache and Primary Memory

– Secondary Storage (Hard disk drive, solid state drive, flash drive)

• Software (Week 3, week 7 slides and lectures, zyBooks chapter 3. 1 - 3. 5)

– Code vs software vs firmware

– Open-source vs closed-source software

– Categories of application software

– Programming tools

 Compilers, Debuggers, Interpreters, Linkers, etc.

– Types of code

Machine code, Assembly code, Low level code, High level code

• Operating systems (Week 3, week 5 slides  and lectures, zyBooks  chapter 3. 1 -  3. 5,  chapter

4 . 1 - 4 . 5)

– Where/Why the following operating systems are used and the benefits of them ∗ Unix, MS DOS, Linux, Windows, MacOS, iOS, Android

– System call vs kernel call

– 6 categories of system calls

UNIX and Windows system calls

– How the operating system manages resources

 Multiprogramming

Time-sharing (multitasking)

– 8 services of an operating system

– Definition of an interrupt

– Process states

Running

Ready

 Blocked

• Runtime Environment (RTE) (Week 7 slides and lecture)

– Definition of a runtime environment or runtime system

– Why do we use runtime environments? What do they provide?

– Types of runtime environments

– Development tools in relation to the runtime environment

∗ What kind of code does a web browser require to run JavaScript programs ∗ What kind of code does the JVM require to run Java programs

∗ What kind of code does Linux or Windows require to run C programs  • Memory Management (Week 8 slides and lectures, zyBooks chapter 5. 1 -  5.4)

– Address space (logical vs physical memory)

– Layout of a process in memory ∗ Text, Heap, Stack

– Address binding

– Virtual address translation

– Static relocation, segmentation

– Fragmentation (internal vs external)

– Swapping vs compacting

– Paging

• File Systems (Week 10 slides and lectures, zyBooks chapter 6. 1 -  6. 5)

– Definitions of file system, file, metadata, file extension, file attributes

– Directories

Tree structured directory hierarchy

 Root

 Absolute path vs relative path

Directory operations

· Change, create, delete, move, rename, list

– Operations on files

Create, destroy, open, read, write, seek, close

 File open table

– Disk block allocation

 Disk block

Contiguous allocation

 Linked block allocation

 Clustered allocation

File allocation table (FAT)

Indexed block allocation

• Input/Output (Week 10 slides and lecture, zyBooks chapter 7. 1 -  7.2)

– Input devices, output devices, devices that combine both IO

– Ports, buses

– Device controllers

– Device drivers

– IO Hierarchy

∗ Applications → API → IO System → Device controller → Device driver – Communication between IO, CPU, Device controller

 Port mapped IO

Memory mapped IO

 Direct memory access

– Polling vs interrupts

– Buffering vs caching

• Networking, The World Wide Web (Week  11  slides  and lecture,  zyBooks  chapter 8. 1  - 8. 12)

– What is the internet

– How does the internet work (From a high level)

– Internet Protocol (IP), Transmission Control Protocol (TCP), and TCP/IP

– IPv4 vs IPv6

– What is the web based on

– How does the web work (From a high level)

– Web technologies (ISP, domain name system, URL, hypertext, HTTP, HTML, browsers, HTTP cookies, bubble filtering)

– Web pages (HTML, CSS, JavaScript)

• Privacy, Security (Week 12,  Week 13 slides and lectures)

– Privacy vs Security

– Information sharing

– Digital footprints (Metadata, EXIF, etc.)

– Personal Information Protection and Electronic Documents Act (PIPEDA)

– Search Engines

– Cryptography (Symmetric key, asymmetric or public key, hashing)

– Types of security breaches

– Security holes (Malware, DoS attacks, Network intrusion, bad programming practices)

– Types of malware

– Access control (Identification, Authorization, Authentication)

– Firewalls

– Backing up data (Automated backups, system backups, incremental backups)

– Security measures (Firewall, antivirus software, anti-malware software, security suites)