Fox chap 1 + chap 4 (includes review questions) , why an informatics degree article, what are socio-tech systems article, and history from the socio tech system design article
What is Informatics as a discipline?
Informatics is a discipline that solves problems through the application of computing or computation, in the context of the domain of the problem.
What is Information Technology?
The technology used in creating, maintaining, and making information accessible. In other words, IT combines people with computing resources, software, data, and computer networks.
3 IT personnel?
Computer scientists(write software for computers)
Administrators (provide IT infrastructure)
Computer engineers (design and build computer chips)
What is System Administration
The process of maintaining the operating system of a computer system.
What is the role of a system administrator?
Administer the computers in an organization; install software; modify/update
What is the role of a network administrator?
Purchase, configure, and connect computer networks, maintain computer networks, troubleshoot network security from intrusion
What is the role of a database administrator?
Install, configure, and maintain database and database management system; back up the database, create an account; train users
What is the role of a Web administrator?
Install, configure, and maintain a website through a web server; secure website, work with developers.
What is the role of a Web Developer?
Design and create web pages and scripts for web pages; maintain websites
What is the role of a Security Administrator?
Install, configure, and administer firewalls, create security policies, troubleshoot computer systems (including network), and work proactively against intrusions.
Why do we write shell scripts?
The goal of writing shell scripts is to automate processes so that, once written, the administrator can call upon the scripts to perform tasks that otherwise would be tedious.
Which Administrator within IT has these tasks listed below:
Account management: creating new user accounts
Password management: making sure all users have passwords that agree with the security policy
File protection management: Making sure that files are appropriately protected -like it’s not writable from outside the organization
Installing and configuring new software including updating operating system patches + troubleshooting
Installing and configuring new hardware
Provide documentation/support/training to computer users
System-level programming through scripting
Security: Installing and maintaining a firewall
System Administrator
Which Administrator within IT has these tasks listed below:
Physically laying down cable, making connections, working with network hardware
Configure individual machines
Configure files and install software (related to the network)
Troubleshooting the network both physically and software
Network Administrator
IT personnel provide support either in ______ or _____
training , help desk
Which IT skill corresponds with these duties: Detect a problem; Diagnose its cause and find a solution
Ex) Needed for poor processor performance, Virus or Trojan horse infections
Troubleshooting
Which IT skill corresponds with these duties: Operating system/Application software installation, user account creation, system monitoring.
Ex) Versions of Linux, Unix, Windows, macOS
Knowledge of operating systems
Which IT skill corresponds with these duties: Shell scripts to automate processes, manipulating configuration files for system services
Ex) Bash, Csh scripts, DOS scripts
System level programming
Which IT skill corresponds with these duties: Ensuring proper system security is in place, following or drafting policies for users, monitoring for threats
Ex) Configuring a system firewall, installing antiviral software, examining log files for intrusion/security holes
System security
Which IT skill corresponds with these duties: Installing and configuring new hardware, troubleshooting, replacing or repairing defective hardware
Ex) Replacing CPUs and disk drives, connecting network cables to network hubs, switches, and routers.
Hardware
Computer definition
A piece of electronic equipment that is capable of running programs, interacting with a user, and storing data.
What is IPOS?
input, processing, output, storage
What does a device need to run a program?
Needs a processor (Central processing unit-CPU), Memory to store the program and data, and input and output capabilities.
What is the processor’s role?
To process and execute the programs we run on the computer.
Compilation
A language translation process that converts a program from a more readable form into a computer’s machine language
2 types of storage
long-term and short-term
Short-term storage is most commonly _______
Random access memory (RAM)
What is the difference between long term and short term storage?
Short-term storage: limited in capacity, but faster, volatile memory (when off contents are lost)
Long-term storage: almost unlimited capacity, slower, nonvolatile (retains its content)
Peripheral devices
devices outside the computer or the system unit, usually input/output devices
MODEM
A communication device lets a computer communicate with other computers
Program
Also known as software is a list of instructions that detail to the computer what to do. These instructions are written in programming languages, such as Java or Python.
User
It is the user who initiates the processes on the computer
What does training mean in reference to IT?
By training, the IT person is responsible for teaching new and current users how to use IT infrastructure( logging in, setting up printers, accessing shared files, training employees for work-related software)
How does the study of IT differ from a 2-year technical degree in computers?
Those colleges geared more toward covering concepts such as PC repair and troubleshooting rather than system and network administration. Today, we expect to see IT people who understand all aspects of IT infrastructure.
To what extent should an IT specialist be able to write computer programs?
IT requires writing small sell scripts like writing a script to automate user account creation.
Should a cell phone be considered a computer?
Yes because according to the definition, the cell phone can run programs even with limited storage like a music app, it can interact with users through the graphical user interface and store data through cache.
How does a computer system differ from a computer?
Our computer system includes components of the computer, the software that directs the computer on what to do, and the people that tell the computer what programs to run and what data.
What are 2 general forms of software?
System software (the operating system) and Application software( programs that we run to accomplish our tasks).
Operating System
A program that allows a computer user to easily access the hardware and software of a computer system. (is required to maintain the computer’s environment)
2 ways to issue commands
Through the GUI and typing in commands at a command line prompt
Who initiates the processes on the computer?
User
Type of short-term storage that has fast access + large storage capacity
Dynamic RAM/DRAM
Type of short-term storage that has cache memory and registers
Static RAM
Storage that once written cannot be changed, is essential to the OS
ROM
Goal of Socio-technical Systems
Seeks to merge people and technology, this approach helps design strategies that consider human needs and technological capabilities.
User-Centric Design in regards to Socio-Technical Systems
Designers focus on designing systems based on how people interact with technology. They are adaptable (adapt to changes in social or technical environments), they are complex with interactions between people tech environment, they are goal-oriented, they are collaborative, they have evolutionary development and an interdisciplinary approach.
Example of Socio -Technical System
Social Media
Hardware - computer component
The physical components of a computer which are either internal components or peripheral devices.
CPU
the processor and what executes a program performs the fetch-execute cycle, fetching each program instruction, one at a time from memory and executing it in the ___
Bus
connects devices together and allows information to move from one component to another.
Important peripheral devices
The hard disk drive, keyboard, mouse, and monitor.
Software
The programs the computer runs
Linux programs executed when issued the commands at the command line. These programs are also called by some of the GUI tools such as file manager
ls, rm, cd,
Examples of Application Software
word processors, spreadsheets, internet browsers, and computer games
Source Code
The program written by a human
What does compiler do with the source code?
The compiler takes the source code and translates it into machine language
What language allows an executable program?
Machine language
How is the intrepreter different from the compiler?
The interpreter is different in that it combines the translation of the code with the execution of the code, so it takes more time. Utilized in smaller programs like shell scripts, and web browser scripts.
Computer System
A collection of computer hardware, software, users, and networks.
Kernel
The core of the OS; we differentiate this portion from other parts that are added on by the users like the shells, device drivers, and utilities.
What type of programs does the kernel include?
Includes the programs that perform the primary OS tasks: process management, resource management, memory management, file management, protection, and security.
Device Drivers
Programs that are specific interfaces between the OS running your computer and a piece of hardware.
What does the shell do?
Provides access to the kernel
Shell
An interface for the user, often personalized for that given user
Describe what is bash, ksh, and csh
Command-line shells that include line editing commands; popular text-based shell
Utility Programs
Software that helps manage and fine-tune the hardware, OS, and applications software
Software Emulator
A program that emulates another OS, that is, it allows your computer to act like it is a different computer so it allows running software that is not native to or compiled for his/her computer.
A Virtual Machine (VM)
Software that pretends to be hardware so by installing a different OS within the VM, a user can run software for that other OS platform in their computer.
Other Uses of VM
Have an environment where you can be assured that downloaded software does not influence or impact your physical computer, or explore different platforms if you want to purchase different computer hardware.
You can issue administrator commands without harm to your computer, or have an environment where multiple users could access it to support collaboration.
Have an environment you can use remotely.
What is the OS in charge of?
It is in charge of the user interface, process and resource management, memory management, file management, protection, and security.
Graphical User Interface
Allows a user to control the computer by using the mouse and pointing and clicking at objects on the screen (icons, menus, buttons, etc)
Cellphones and tablets, based on the touch screen, have a _____interface where movements include swipe, tap, pinch and reverse pink.
gesture-based
Relationship between shell and the OS
The shell is merely a part of the OS that permits users to enter information through which the user can command the OS kernel. Contains text interpreter
A program being executed by the computer is called a
Process
Program is a ____entity whereas process is an ____ entity
static ; active
OS and Processing
The OS is in charge of starting a process, watching as it executes, handling interrupting situations and input/output operations, handling multiple process interactions, and terminating processes.
Interrupt
Is a situation where the CPU is interrupted from its fetch-execute cycle.
An interrupt signal can come from hardware or software.
After saving what it was doing to memory (taking the values of the various registers) and identifying the interrupt, the CPU begins executing an interrupt handler (a set of code for each type of interrupt).
What does concurrency mean? Examples?
Processes are executed in some overlapped fashion like multiprogramming, multitasking, multithreading, and multiprocessing ( OS permits multiple processes to be in some state of execution)
Round-robin scheduling
Placed in a queue until timer elapses, the CPU is constantly swtiching from the current process to another
Every program (along with its data) is divided into fixed-sized blocks called
Pages
What is an “image”?
The executable program code along with the memory space that makes up the data the program will access
What is Swap Space?
A reserved area of the hard disk.
What does the OS do with the “image” and swap space?
OS copies the program’s “image” into swap space and loads some of its pages into memory.
Why is it efficient to use swap space? What is this called?
The use of swap space to back up memory gives the user an illusion that there is more main memory than there is- virtual memory.
Unmapped pages
Not yet loaded into memory
Swapped out pages
Pages that once were in memory but were removed for accommodation.
What does it mean when a resource is accessed in a mutually exclusive way?
Once a process starts using a resource no other process can until the first frees it
What does Synchronization require?
Requires that the process or thread is not interrupted while accessing a datum, or that the datum is not accessible once one process or thread has begun accessing it until it has been freed.
How is a file’s address created ( both the memory and logical one?)
CPU generates memory address, translates it with the page table to its logical/virtual address
How does the system ensure protection and security?
A common mechanism for protection and security is to provide user accounts with authentication, for accessing files shared across users, every user is placed into a group.
What is this an example of in processing: The OS is ready to execute a process but both running processes P0 and P1 are in waiting queues for the resource, furthermore, neither P0 nor P1 can start running until they get that resource, but since each process is holding onto the resource the other needs, there will never be a time the resource is available
Deadlock
Single-tasking (form of process management)
Executes one program until it concludes then switches back to OS for the user to request another program
Batch processing ( form of process management)
More than a single user, has a queue for processes, users submit programs for execution at any time, with no interactivity with the user, so all input must be submitted on time.
Multiprogramming (forms of process management)
Is similar to a batch system except that if the current process requires I/O, then that process is moved to another queue, so lengthy I/O doesn’t cause the CPU to remain idle. Does context switch.
Context Switch
CPU switching from one process to another
Multi-tasking (form of process management)
A timer is used to count the number of clock cycles that have elapsed since the last context switch started the process, and it decrements so that when it reaches 0 it interrupts the CPU and forces it to switch to another process.
Multithreaded (form of process management)
Basically multitasking that switches off between processes and between threads of the same process
Multiple running parts in a process, share the same resource but different data, think a Firefox window with different tabs.
Multiprocessing (form of process management)
More than one CPU to execute processes
Which type of process management is this example: p1 is executed until it completes, and then p2 is run and then p3→ not satisfying for the user bc you can’t do multiple tasks.
Single- Tasking
Which type of process management is this example: p1 executed then p2 except now you are in a queue and input is provided beforehand.
Batch Processing
Which type of process management is this example: The computer would run p1 until either p1 termination or p1 needed to perform I/O then it would move p1 to a waiting queue and start p2 then continue until it terminates, need I/O or p1 is ready to resume.
Multiprogramming