CS Core Notes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

CS Notes (full of memes)

1 System Fundamentals

1.1 – Basically ITGS


• System implementation:
o Technical feasibility: is the existing technology sufficient?
o Economic feasibility: is the proposed system cost effective?
o Legal feasibility: oh seriously, do I have to explain this?
o Operational feasibility: will it work?
o Schedule feasibility: will we get it done soon enough?
• A legacy system is an old, deprecated hardware or software (rip windows xp, you’ll always
have a place in my heart)
• Mergers and takeovers yadda yadda
• Software as a Service: buying, renting, or simply using software in a remote location but
accessing it locally. A third-party provider hosts the software and makes it available via
the internet.
o Examples: Office 365, Google Docs, Dropbox, etc.
o Advantages: minimizes capital costs, good for small businesses, less staff on-site
o Disadvantages: security and identity management, risk of data loss
• System installation:
o Direct change-over: literally changing the system straight up, saves time and effort
but if it fails…
o Parallel running: the new system is started and run in parallel with the old one, a
backup can be run if things go wrong but running two systems is costly
o Pilot running: the new system is tested with a small group of people, if it fails then
not everyone bears the consequences but a fail is still a fail
o Phased conversion: everything is rolled out in phases, and this allows users to
gradually familiarize themselves with the new system

1.2 – Data Migration


• Problems with data migration include: incompatible file formats, data structure
differences, incomplete transfers, difference in date reading or symbols, unreadable
Unicode characters

1.3 – Testing
• Static testing: scanning, implicit changes, syntax, proofreading
• Dynamic testing: actually running it and testing it in action
• Alpha testing: performed by internal employees
• Beta testing: performed by external clients or end users
• Black-box testing: testing when you know about the internals
• White-box testing: the exact opposite
• Automated testing: when a robot replaces a human a premade software tests everything
1.4 – User Focus
• User documentation can be: PDFs, books, CDs, video tutorials, manuals, etc.
• Helps the user to understand how hardware or software works
• Explains the features and functions of a system

1.5 – System Backup


• Causes of data loss: human error, hardware malfunction, software corruption, viruses
• Preventing data loss:
o Failover system – the capability to automatically switch to a backup system
o Redundancy – a condition where the same pieces of data is stored in two places
o Removable media (USB, CD, DVD, HDD, SD, ABCDEFGetc.)
o Cloud storage/SaaS

1.6 – Software Deployment


• Release: launching a new product for a specific market.
• Update: a software file that contains fixes to problems or new features.
• Patch: a temporary fix between releases that may fix bugs, upgrade the software, install
new drivers, etc.

1.7 – System Design Basics


• Hardware: The physical components of a computer.
• Software: Programs or sets of instructions.
• Peripheral: Any device not directly built into the computer such as a mouse, keyboard,
USB, or printer.
• Network: Multiple devices that communicate with each other.
• Human resources: do I have to define this?
• Server: Provides data to other computers.
• Client: Collects the data.
o Client/Server model: you must get data from the server.
o Peer-to-Peer model: you can get data from any computer as well as the server.
• Router: A device that routes data (NOOOO I DIDN’T KNOW THAT!!!!!!!)
o It sends data from a local area network (LAN) to some other connection.
o Basically, a halfway point between two devices.
• Mail server/Mail transport agent: receives mail from people in the same domain and
delivers the mail. A virtual mailman, if you will.
• DNS server (Domain Name System): replaces the IP address with a recognizable domain
name.
o However, computers access devices by their IP addresses.

1.8 – Usability
• Ergonomics: an applied science concerned with designing things that people use in a way
that humans can interact efficiently with them
• Accessibility: the ability to cater for disabled or physically challenged people
• User experience (UX): depends on the usability and the pleasure of using the product
• User interface (UI): everything designed in a way that the person can interact easily
• Design is not necessarily the same as usability
• You can put all the similar functions into a group (File > New, Open, Save, Save As, etc.)

1.9 – Accessibility
• The main parts of a computer are a keyboard, mouse, and screen.
• Ways to improve accessibility: touch screens, voice recognition, text-to-speech, braille
keyboards, fewer buttons

1.10 – Usability
• Usability problems:
o Complexity/Simplicity: Amount of effort to find a solution.
o Effectiveness: Comparison of user performance against a predefined level.
o Efficiency: Task completion time after the initial adjusting period.
o Error: Number of errors, type of errors, and time to recover from errors.
o Learnability: Time used to accomplish tasks at first use.
o Easy to remember: Time, number of clicks, pages, and steps used by users when
they return to the device after a period of not using it.
o People get confused and it takes some time to remember the required procedure.
o Readability/Comprehensibility: Reading speed.
o Satisfaction: Attitude and satisfaction of users after using the application.

1.11 – System Design Illustrations


• System flowchart: a diagram that represents how different parts of the system are linked.
• Data flow diagram: shows the flow of data (NO DUH), indicates the external entities,
processes, and data stores

2 Computer Organization

2.1 – The CPU


• The CPU (Central Processing Unit) is a key component in a computer system that fetches,
decodes, and executes instructions to and from RAM.
• The CPU contains an Arithmetic Logic Unit (ALU) that carries out mathematical and logical
operations. Multiple ALUs allow for faster processing.
• The CPU also contains a Control Unit (CU) that handles the loading of new commands and
dictates the flow of the ALU.
• Registers are small, fast circuits that store intermediate values or instructions inside the
CPU. *an accumulator is also a register, can’t forget that*
• The Memory Address Register (MAR) locates the address of a piece of memory and sends
it to the CPU via the address bus.
• The Memory Data Register (MDR) holds the data itself and sends it to the CPU via the
data bus.

2.2 – RAM and ROM


• Random Access Memory (RAM) is memory in a computer system that contains the
instructions necessary to run programs and applications.
• RAM is volatile – it will be lost if power is lost.
• Read-Only Memory (ROM) is similar to RAM but it cannot be written to. Therefore, it only
contains instructions for essential system software such as startup and the BIOS (Basic
Input/Output System).

2.3 – Cache memory


• Cache memory is a smaller and faster type of RAM that stores temporary instructions. It
holds the most frequently used information from RAM, and will allow the computer
system to run faster because the main RAM will be accessed less frequently. This is due
to the fact that when the processor is looking for data, it first checks if the data exists in
the cache. This will save time that would have been used searching the main memory.

2.4 – Machine instruction cycle


• The machine instruction cycle is the main sequence of operations carried out by a CPU.
• Firstly, an instruction is fetched from primary memory. Its address is sent via the address
bus and the instruction itself is sent via the data bus.
• Then, the instruction is decoded by the CU. Next, the CPU executes the instruction using
the required data.
• Finally, the result of the instruction is stored in primary memory. The CPU specifies the
address of this result using the address bus and sends the data using the data bus.

2.5 – Secondary memory


• Since RAM is volatile and loses its contents upon power loss, there is a need to store
important data in a form of persistent storage. This is known as secondary memory.
• Forms of secondary memory: hard disk, CD drive, USB drive, SD card

2.6 – Functions of an OS
• The operating system is the software that supports the computer’s basic tasks.
• Main functions of the OS: To provide a user interface between the user and the hardware,
memory management, peripheral management, multitasking, priority scheduling,
security
• Memory management: keeping track of which application has access to which area of
RAM at any given time, sorting where data is installed on a disk drive
• Peripheral management: Refer to 1.7
• Security aspects: firewall, antivirus, password
• Priority scheduling: the OS gives priority to certain tasks (although this can be done
manually on some systems)
• Types of interface: GUI, Command line, natural language, menu-based

3 Networks

3.1 – Network Types


• We can talk about networks through different topologies (shapes) – examples include a
ring, a star, and a bus/line
• PAN – Personal Area Network:
o A network used on a personal level – for connecting devices using wireless or
wired technologies
o Generally used for transferring small files
• LAN – Local Area Network:
o A network generally for devices located in the same building/in close proximity to
each other
o Tends to use private connections
o There’s also a WLAN (Wireless LAN) – uses devices with wireless communications
and no cables
o There’s also a VLAN (Virtual LAN) – not a physical concept but a logical concept,
where computers are grouped together to mimic a LAN but are not geographically
near to each other
• CAN – Campus Area Network:
o A network that joins multiple LANs together within a limited area
• MAN – Metropolitan Area Network:
o We’re literally playing Bigger and Better here
o Spans over several buildings in a city/town
o Typically uses high-speed connections such as fiber optics
• WAN – Wide Area Network:
o Ffs I think you get the idea by now
• GAN – Global Area Network:
o FFS I THINK YOU GET THE IDEA BY NOW
• SAN – Storage Area Network:
o A special high-speed network specific for transferring data
o Not affected by network traffic that can happen in a LAN, since they aren’t part of
a LAN and are partitioned

3.2 – Standards
• Devices need standards to communicate with each other (shared language) – without
standards, communication will be difficult if not impossible
• Protocols are an agreed set of rules based on the standards (HTTP, IP, IMAP, TCP, etc.)

3.3 – Virtual Private Networks


• What is a VPN?
o Something illegal
o Extends a private network across a public network
o You create a VPN connection/tunnel from your computer to the private network
o Private networks try to remain private, so VPN connections are encrypted

• What do you need for a VPN?


o Two endpoints (a client and a server)
o A LAN that is connected to the internet
o Another computer outside of that LAN that is also connected to the internet
o Authentication protocol – verifying the identity at each endpoint
o Connection protocol to connect the two endpoints and create the tunnel
o Encryption protocol to secure the tunnel

• Site-to-site VPN – different branches connecting to one network


• Remote access VPN – individual connection
• VPN clients and servers must match
o It is possible for workers to connect to a company’s internal network from almost
anywhere in the world (home offices – telecommuting)

3.3 – The Internet


• The Internet is a network of networks
• Every computer connected has a unique IP address
• The World Wide Web is just a way of accessing information over the medium of the
internet – uses the HTTP protocol
• A proxy server is a server that acts as a midpoint for requests from clients seeking
resources from other servers
o Provides the ability to hide your IP address to others
o But most proxies don’t support basic encryption
• A VPN secures everything that you do over the internet but a proxy only secures the
internet browser
• VPNs work on more devices than proxies, and can be “installed” on to the router

3.4 – Setting up a Network


• Network cards are special devices on a computer that lets it connect to a network
• Hubs are centralized devices that connect multiple computers – does not filter any data
(so basically, he’s retarded)
• Switches are the same thing except they can assign a MAC (media access control) address
to each device
o When a switch gets data, it is directed only to its destination port – they reduce
any unnecessary traffic and allow for security
• Hubs and switches are used to exchange data within a LAN
• Routers route packets of data to the appropriate destination based on their IP address
o They can send data to another network if needed
o A packet contains a header (instructions about the data carried by the packet),
payload (the actual data), and trailer (to let the other device know that the end is
reached, may contain error checking)
• A MAC address is a physical address of a computer, and an IP address is concerned with
a device connecting to the internet (found in the read-only memory)

3.5 – Data Compression


• Compression is defined as encoding information using fewer bits than the original
representation. Examples are ZIP, JPEG, MP3, H.264 (video)
• Lossless compression – size doesn’t reduce that much when compressed, quality is
restored when uncompressed (PNG, FLAC, ZIP)
• Lossy compression – size reduces a lot when compressed, quality is not restored when
uncompressed (MP3, JPEG)
• Hierarchy of Needs (Characteristics of Media) – Speed, Cost, Reliability, Security

3.6 – Wireless Networking


• Easy access, you can move without being connected to a cable (mobility)
• Scalability (can be scaled/combined with less cost)
• Cost effectiveness
• Disadvantages: lesser range (extra cost), security issues, reliability, less speed, less control
(difficult to manage), health concerns due to radiation
• Hardware requirement: network interface card, radio waves (Bluetooth/Wi-Fi) with a
strong signal, wireless access point/router
• Software network: network OS with drivers, protocol stack (TCP/IP), application like a
browser or file explorer
• Wi-Fi is backwards compatible with most older standards
• Small transmitting radius makes it suitable for homes
• WiMAX is designed for large distance high speed access
o Cheap for providing internet access over a large area – suited for poorer countries
o Rivaled by Long Term Evolution (LTE)

3.7 – Network Security


• Authentication: verifying that someone is the person they claim to be
o One-factor: username and password
o Two-factor: something you all should be using on Discord you log in and then are
required to enter a security code/OTP (one-time password)
o Three-factor: biometrics
o A nice way to remember it: something you know, something you have, something
you are.
• Firewall: a virtual barrier that can block incoming traffic depending on predetermined
security rules
• Physical security
• Disrupted denial of service (DDoS) is when someone hacks your Minecraft server
3.8 – Layers of the OSI (Open System Interconnection) Model
• Describes two computers connecting with each other
• Sending from bottom to top, receiving from top to bottom
1. Physical – network cables, power plugs, radio waves, basically anything you can see – this
is where most people start when troubleshooting
2. Data Link – sets up links across the physical network, checks for transmission errors, uses
MAC addresses
3. Network – handles the routing of data (knowing the origin and/or destination via the IP
addresses)
4. Transport – responsible for the transmission of data across network connections (TCP –
Transmission Control Protocol, UDP – User Datagram Protocol)
5. Session – connections are established (sessions started/ended), responsible for
authentication and reconnection
6. Presentation – performs syntax processing or converting data from one format to
another, including encryption/decryption and data compression (SSL – Secure Sockets
Layer, responsible for encryption)
7. Application – provides services to the end user (HTTP and SMTP are protocols used in the
application later)
• Nice ways to remember the order:
o All People Seem To Need Domino’s Pizza
o All People Seem To Need D**k Pics
o All People Send Their N*des Directly Please
• The IP address is logical, the MAC address is physical

6 Resource Management

6.1 – Resources and their limitations


• A resource is anything that can be managed by a computer system, such as:
• Primary memory is a place where all data currently being processed is kept – if low,
system will need to use secondary storage
• Secondary storage is a place where data can be stored if power is lost – if low, work cannot
be saved
• Processor speed is measured in calculations/second – if low, the CPU will take longer to
perform tasks
• Cores/ALUs (each CPU has at least one) – the more there are, the more calculations can
be done simultaneously
• Bandwidth is the measure of how much data can be sent at the same time – if low, data
will take longer to transfer
• Screen resolution is the number of pixels in height x width of display – if low, images and
graphics may appear at a lower quality or pixelated
• Sound processor handles reproducing sound and is done on a separate processor to free
up CPU space – if limited, the CPU has to process sounds which slows it down
• GPU – does complex graphic processing – if limited, the CPU has to handle it which slows
it down
• Cache – contains the instructions that the CPU is likely to use soon – speeds up processing
so the CPU doesn’t need to wait for RAM to send the instructions
• Modern computers have to run many programs simultaneously which can be costly to the
limited amount of resources available

6.2 – Role of the OS


• The OS uses drivers, which are programs that allow devices to be used.
• The OS has to ensure that each process runs in its own allocated memory space.
• If programs interfere with each other’s memory space, then it could lead to corruption
and security issues.
• The OS chooses specific files to be run according to the user’s desire.
• Virtual memory allows a computer to compensate for a shortage of physical memory by
temporarily using some disk storage as if it was primary memory. This allows the
computer to run a process that is larger than the available RAM.

6.3 – Resource management strategies


• The life cycle of a process: start, ready state, waiting state, running state, ended
o Ready state: process has all of its required resources ready but needs to be
allocated to a processor.
o Waiting state: process is missing a resource, a user input, or a file to become
available.
o Running state: process has the resources ready, it’s been allocated to a processor,
and the OS can safely execute its instructions.
• Policies/schemes: used to determine the scheduling of processes (manual priority, first-
come first-serve, shortest job first, etc.)
• Interrupt: a signal that stops the current task and decides to do something else. For
example, a printer running out of paper or ink would be a hardware interrupt.
• Polling: the continuous checking of processes to check their state and if they are
responding. Polling is used to identify when a device is ready to transmit data.

6.4 – More OS stuff


• Advantages of a dedicated OS: higher level of security, greater customizability
• Users and applications do not see the hardware directly, but view it through the OS. This
is used to hide certain hardware details from users and applications (called abstraction).
o Due to this abstraction, users cannot see changes in the hardware. For example,
hard disks, floppy disks, CD-ROMs, and USB keys are all very different media, but
in many OSes, they appear the same to the user.

7 Control

7.1 – Control Systems


• A control system is a device or set of devices that manages or commands the behavior of
other devices.
• Process control: keeping a process’s output within a desired range and consistent (quality
control)
• Device drivers are also a type of control system (to an extent)
• GPS works by communicating with satellites – the device knows the position of the
satellites and averages out distances from multiple satellites

7.2 – Devices
• A microprocessor is an integrated circuit that contains all of the functions of a CPU
o The microprocessor can produce digital output
• Sensors are devices that measure and detect their surroundings (convert analog to digital)
• Transducers turn the digital data into analog signals to power devices – compatibility with
microprocessors

7.3 – Even more ITGS, everyone’s favorite!


• Tracking prisoners:
o Allows non-dangerous criminals to move, allows for tracking at all times
o Loss of freedom of movement, could be hacked to track innocent people
• Surveillance:
o Allows for greater security, could be used as evidence in court cases, helps to
reduce crime rate
o Loss of privacy, could be hacked for unintended purposes, could spy on people

7.4 – Types of Control Systems


• Centralized control system – done at a central location, using terminals that are attached
to a central computer. The computer itself may contain the peripherals directly or via one
of the terminals.
• Distributed control system – components are located on networked computers which
communicate their actions by passing messages to each other.
• Advantages of a centralized system: easier to administrate, more control
• Disadvantages of a centralized system: if the main sensor fails, the whole system fails
• Advantages of a distributed system: shared load, response more specific to environment
• Disadvantages of a distributed system: more complex and more expensive to maintain

7.5 – Autonomous Agents


• An autonomous agent is a software that carries out some set of operations on behalf of
a human, with some degree of independence
o Autonomy: self-government
o Reactive behavior: sensing the environment and reacting based on perception
(totally not related to sense perception as a WOK)
o Concurrency: interacting with other agents
o Persistence: running continuously

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy