IB Computer science Flashcards
Hardware
Physical parts of a computer. Includes both internal(RAM+motherboard) and external(keyboards+monitors etc.) Internal-components External-peripherals
Peripherals
External device providing input/outputCommunicate with system via device drivers
Network
Multiple devices that can communicate and share resources with one another via a transmission medium2 main networks-LANs and WANs
Software
Computer programs or sets of instructions. Consists of lines of codes that have been compiled into a program
Human resources
Describes both people who work for a company/organisation+dept that manages resources for employeesKnown as end-users and stakeholders
Client(in networks)
Accesses services+resources provided by a server
Server
Provides data to other computers and fulfils a client’s request, Software is specific to type of server,but hardware is not important
Client server model
Each client is connected to a single serverClients request connections to the serversCan be accepted/rejected
Client server model +ves
Centralised management of resources Backups and network security controlled centrally
Client server model -ves
High set up and maintenance costs Single point of failure
DNS server
Translates domain names into IP addresses, so they can be accessed by the userSends corresponding IP address of the needed web server back to the user’s browser
Router
Routes data from a LAN to another network, Receives+forwards data packets, Determines most efficient path for packet
Firewall
Acts as a filter protecting a network from incoming and outgoing traffic. Monitors incoming+outgoing traffic,following set rulesHardware/software
Social issue
Problem that influences a considerable number of individuals Includes crime, health,education,media+propaganda etc.
Ethical issue
Problem or situation that needs person/organization to choose between options which are considered right/wrongExamples include: -Computer crime -Privacy
Social issues in networks
Cyberbullying. Less face-face interaction. Addiction. Hacking
Ethical issues in networks
Cybercrime, Identity theft, Data privacy, Malware attacks
Stakeholder
Person, group or organisation that has an interest/concern in an organisation
Ask yourself… when identifying stakeholders
Who will be affected by new system?Who will new system affect?Who will the end-users be?What are their needs?
Methods of obtaining a client’s requirements
Surveys, Interviews, Direct observation, Collecting documents
Observation
Walk around organisation-watching how things are done
Observation +ves
Information gathered is first-hand + unbiased
Observation -ves
People may act differently than normal when being observed
Interviews
Interview key members within a system-find out how it works
Interviews +ves
Lots of detailed info can be gathered Suggestions for improvements to the system can be heard
Interviews -ves
Takes a long time
Questionnaires/surveys
People are given questionnaires to fill out
Surveys +ves
Large amount of data from large group can be gathered. Simple / Little time needed to analyse(if done electronically)
Surveys -ves
Bias possible-info is limited by survey qs. Quality of responses may be poor/not usefulHard to ask the ‘right question’
Collecting documents
Look at documents currently being used in the system-find how system works
Collecting documents +ves
Detailed info about current system can be gatheredCan be seen where old system has problems
Collecting documents -ves
Time consumingDocuments may be hard to understand(forms/outputs etc.)
4 methods before making a new system
Examine current systemsLook at competing products Literature searchOrganisational capabilities
Examine current system steps
Who does what? How do they do that?
Organisational abilities steps
Determine what organisation can manage+doCan they afford new equipment? Can the staff use new system(do they need training?)? Can they have any ‘downtime’ to upgrade?
Competing products
Observe competitors See what is being done/is possible
Intellectual property
Something unique that you physically create
Literature search
Consult literature to see other products
Types of diagrams to represent system requirements
System flow chart. Data flow diagramStructure chart
Flowcharts
Represent algorithms,workflow or processesUsed to show how processes should work+help figure out how to create a system
How do flowcharts help developers?
Inform decisions that need to be made+ the necessary steps that must be takenEstimate development time framesIdentify who should be involved at each stepIdentify bottlenecks+other problems
Input/Output
Processing
Disk storage (symbol)
Online storage (symbol)
Document
Communication link
Data flow
Tape
Data flow diagram
Shows flow of data in an information system
Entity symbol(data flow)
Process symbol(data flow)
Data store symbol(data flow)
Data flow symbol
Entity definition
source and destination of information data.
Process(data flow)
Activities and action taken on the data.
Data storage(data flow)
When, but not how, data is stored.
Structure chart
Represent organisation of a system,showing different parts in a hierachy
Prototype
Abstract representations of a system,only focusing on one/two aspectsImportant in testing-each component can be tested+idea of system can be illustrated to client
Purposes of a prototype
Fail early and inexpensivelyGather more accurate requirements-demonstrate functionality of product+help end-users decide what they want in the productTechnically understand the problem-can see any possible challenges of the designFile patent
Iteration(in design process)
procedure in which repetition of a sequence of operations yields results successively closer to a desired result
Importance of iteration in design process
Helps you be sure on what needs to be improvedImprovements in one iteration only possible due to improvements in last iterationNew technology/techniques can be usedUser’s needs can changeStability and reliability improves
Consequences of not involving end user for the user
Software is not suitable for intended use-decrease user productivityUser may be unsatisfiedUnhappy customers-reduced user productivity
Consequences for developer of not consulting end user
Legal action could be taken against developersDecreased reputationLoss of market share/breakdown of companyHarder to get feedback+help from users
Why should we listen to the end-user in the design process?
Understand own needs+situation far betterSoftware developer has limited domain knowledge-can’t appreciate end users’ needs
Topics concerning the introduction of new IT systems
Robots replacing humansAI algorithms replacing humansNew systems are addictive/less efficientNew systems lead to new markets
Usability
How simple and self-explanatory the use of a system is for inexperienced end-users
Ergonomics
How well the form fits the function Discipline concerned with optimising human well being and system performance through the application of theory,principles,data and methods
Accessibility
Ability of the device to meet the needs of as many people as possible
Problems with devices
Difficult to handle hardwareComplex user interfaceSpecialist support needed to use deviceShort battery lifeSmall screen sizeLimited storage/portabilitySmall text
Types of disabilities
VisualAuditoryMobility and dexterityCognitive
Methods of improving accessibility
Touch screensVoice recognitionText-speechBraille keyboard
Usability issues within a system
What happens if they can’t access system/only certain parts?Can’t access output?Glitches+crashesIncompatibility-time formats,currenciesInterface language problems
Moral issue
Issue with potential to help or harm anyone
Economic issue
Issue concerned with organisation of money,industry and trade etc.
Environmental issue
Problem concerned with protection of the natural world
Context definition
the background, environment, framework, setting or situation surrounding a system
What are 2 considerations when considering a new system’s context
The extent of the new systemThe limitations of the new system
What are some organisational issues when installing a new system? (1.1.1)
Software/hardware incompatibilityUser roles / the organisation restructure their workflow
Problems with changing a system (1.1.2)
Users may not like changeNew systems may omit old features ExpensiveOld systems may be faster in certain situationsData loss during migration
Change management steps (1.1.2)
PlanCommunicateIntegrateEvaluate
Plan (1.1.2)
Business must first need a clear and valid reason for the change process
Communicate (1.1.2)
Communicating the change to the key stakeholders
Integrate (1.1.2)
Consult the stakeholders before enacting the change process
Evaluate (1.1.2)
Examining the stakeholders’ and end-users’ response to the change
Legacy system definition (1.1.3)
An old method, technology, computer system or app that is no longer supported or available for purchase anymore
Risks with legacy systems (1.1.3)
More susceptible to security vulnerabilities and malwareIncreased maintenance costs-less hardware and software for the system, lack of IT staff with the skills for that specific systemIntegrating with other systems can be difficultCompliance risks-data protection and privacy laws etc.Inefficient operations-decreased productivity
Merger definition (1.1.3)
A combination of 2 entities or more, into one
Issues with mergers (1.1.3)
Software incompatibilityLanguage differencesTime zone differencesWorkforce cultural differences
Local software definition (1.1.4)
Where the software is installed on a particular computer or set of computers
Remote software (1.1.4)
Software that is installed on a server or computer somewhere on the internet to be used via a browser or specific local application
SaaS (1.1.4)
Software distribution model where a third-party provider hosts applications and makes them available to clients over the internet
Benefits of SaaS (1.1.4)
Minimises IT responsibilities and costsUseful for small businesses- subscription can be adjusted easily for their specific needsReduction in staff workload-IT workers don’t need to perform tasks associated with onsite hardware+software
Drawbacks of SaaS
Companies using multiple SaaS applications or trying to connect them with on site software may experience some integration issuesRelying on a third party to store your data and business processesBusinesses must be mindful of compliance regulations regarding storing data in a remote data centre
4 methods of implementing/installing a new system (1.1.5)
Direct changeoverParallel runningPilot runningPhased conversion
Direct changeover (1.1.5)
Old system is stopped and new one is started
+ves of direct changeover (1.1.5)
Minimal time and effortNew system is available immediately
-ves of direct changeover (1.1.5)
No backup if new system fails
Parallel running (1.1.5)
New system is initialised but old system is kept running alongside it
+ves of parallel running (1.1.5)
Backup if new system failsOutputs from both can be compared-ensure new one is functioning properly
-ves of parallel running (1.1.5)
Expensive to run 2 systems
Pilot running (1.1.5)
New system is tested using a small part of the organisationOnce it is running properly and all bugs have been fixed, it is implemented everywhere
+ves of pilot running (1.1.5)
All features are fully tested-any bugs can be foundIf the new system fails only a small part of the organisation suffersStaff part of the pilot can train others
-ves of pilot running (1.1.5)
No backup for subset of the organisation in the pilot group if new system fails
Phased conversion (1.1.5)
New system is introduced in phases
+ves of phased conversion (1.1.5)
People can get used to new systemStaff training can be split into stages
-ves of phased conversion (1.1.5)
No backup for new system
Problems arising from data migration (1.1.6)
Incompatible file formats Data structure differences Validation rules Incomplete data transfers International conventions on dates, currencies & character sets
Incompatible file formats (1.1.6)
Same piece of software may have different versions-data from one version may not be compatible with another
Data structure differences (1.1.6)
Data being moved from an array to a linked list etc. can cause problems
Validation rules (1.1.6)
Rules applied to inputsIf different at destination than at source-data can be rejected and lost
Incomplete data transfers (1.1.6)
Only part of data will be at destination-data loss
Differences in data/currency/character set (1.1.6)
In the UK, 3/5/18 means 3 May 2018, but it means 5 March in the USA The $ might mean US dollars, but could be taken to mean Zimbabwe dollars which use the same symbol but is worth significantly less. A set of character used in one country, e.g. ﷼ in Saudi-Arabia, might be copied as ?? on Russian computer.
Consequences of not running tests (1.1.7)
System that doesn’t work as expected-reduces productivity and end-user satisfactionSoftware may not be appropiate for intended purposeUndiscovered bugs in systemDecrease in organisation’s reliability and reputation
Static testing (1.1.7)
Involves verification Can include reviews, walkthroughs or inspectionsNo execution of code
Dynamic testing (1.1.7)
Involves validationProgram is executed Can be done to test specific parts of the code
Alpha testing (1.1.7)
Performed by internal employees of the organisationDone on the developer’s site
Beta testing (1.1.7)
Performed by clients/end-users not part of the organisationDone at client location
Black-box testing (1.1.7)
Testing software without knowing its internalsUses software interfaces
White-box testing (1.1.7)
Looks inside the softwareUses that knowledge to help with the testing process
User acceptance testing (1.1.7)
Testing any new/updated system with its end usersChecks if it meets their expectations
Automated testing (1.1.7)
Method in software testing using machines to automatically execute tests and compare the results with the expected ones Usually done on large amounts of code
User documentation definition (1.1.8)
Any document that explains how to use the features and functions of a system to its end-users
Importance of user documentation (1.1.8)
Makes users aware of particular features that may not be obviousIf the documentation is simple-less training needed for users so system implementation is faster
Types of user documentation (1.1.9)
Help filesOnline supportPrinted manuals
Help files (1.1.9)
Files supplied together with the system
+ves of help files (1.1.9)
Accessible any time when using programProvide general instructions on how to use systemGeneral instructions on solving common errors
-ves of help files (1.1.9)
Only can be used after system installationOnly deal with general errorsLack a search capability-have to look through the file for your specific solution
Online support (1.1.9)
Web service hosted by the system’s developer to provide user documentation
+ves of online support (1.1.9)
More extensive than help filesConstantly updated by developers with FAQsOften have live support-can talk to a real human operatorSearch capabilities
-ves of online support (1.1.9)
Reliant on internet connectionLive support can be ineffective with users unfamiliar with computers
Printed manuals (1.1.9)
Manuals printed on paper and supplied with the system
+ves of printed manuals (1.1.9)
Always availableHelp with system installationCan be read by users before they work with the system
-ves of printed manuals (1.1.9)
Can be lost/destroyedUsually only provides help on system installationRarely updated
Importance of user training (1.1.10)
Productivity is dependent on familiarity with the system
Methods of delivering user training (1.1.10)
Self-instructionFormal classesRemote training
Self instruction (1.1.10)
Users learn how to use the system on their ownUsually use a manual or watch a tutorial etc.
+ves of self instruction (1.1.10)
Lowest costFlexible timelineTraining is specific to exactly what the user wants to learn
-ves of self instruction (1.1.10)
Certain key features may be missed-learning is unstructuredUser may feel overwhelmed without guidance
Formal classes (1.1.10)
Users sit in a classroom listening to an instructor
+ves of formal classes (1.1.10)
Structured learning environmentExpert on hand to answer questionsCurriculum covers all aspects
-ves of formal classes (1.1.10)
ExpensiveRigid schedule+curriculumHardly any personalisation
Remote training (1.1.10)
Instructor training a user or a group of users via a form of remote connection
+ves of remote training (1.1.10)
Structured learning environmentExpert on hand for questionsCurriculum covers all aspectsFlexible locations
-ves of remote training (1.1.10)
ExpensiveComputer based-need basic knowledge to be able to join the meetings etc.
Causes of data loss (1.1.11)
Hardware/system malfunctionsHuman errorSoftware corruptionMalwareNatural disastersMalicious activity of employees or intruders
Things to think about when discussing consequences of data loss (1.1.12)
Can the data be replaced? How easy is the data to replace? Who will be affected by the data loss? Are there financial implications to the data loss? Are there ‘life-and-death’ consequences to the loss? Who is responsible for data recovery?
Methods for data loss prevention (1.1.13)
Failover systemRedundancyRemovable mediaOffsite/online storage
Failover system (1.1.13)
Failover-constant capability to automatically and effortlessly switch to a backup system
Redundancy (1.1.13)
Condition in a database or another data storage technology where data is stored in 2 separate places at once
Removable media (1.1.13)
Use of any storage device that can be removed from a computer while the system is still running
Offsite storage (1.1.13)
Where data or applications are stored in a facility offsite to the organisation or core IT environment
Online storage (1.1.13)
Where cloud storage is used to store data from backupsCloud resources and infrastructure can be used to create, edit, manage and restore data along with perform backups
Release (1.1.14)
Process of launching a new product for a specific market or user base
Update (1.1.14)
Software file that contains fixes for problems found by users or developersAlmost always free
Patches (1.1.14)
Software update where code is inserted into the code of the programMay: -Fix a software bug -Install new drivers -Address security vulnerabilities
How to get updates: (1.1.14)
Manually Automatically
+ves and -ves of manual updates (1.1.14)
Full controlTime consuming
+ves and -ves of auto updates (1.1.14)
No need to worry about updatesNo control
Types of release management (1.1.14)
Continuous deliveryAgile software developmentDevOps
Continuous delivery (1.1.14)
Teams produce software in short cyclesAllows more incremental updates to the application
Agile development (1.1.14)
Requirements of the software evolve through collaboration between end users and cross functional teams within the organisationDone in iterations (sprints)
DevOps (1.1.14)
Aims to unify software development and operationUtilises lots of automation Monitors each step of the software construction
Network definition
Group of computer systems and nodes linked together via transmission media to allow for communication and resource sharing
LAN characteristics
Local Area NetworkUses MAC addresses and switchesPrivate infrastructureUsually almost always use Ethernet protocol
WAN characteristics
Wide Area NetworkIP addresses and routersPublic infrastructureCollection of other networks
VLAN characteristics
Virtual Local Area NetworkGroup of nodes that appear to be on the same LAN despite not being geographically in the same areaSoftware implementedAble to quickly adapt to changes in the network requirements
SAN
Storage Area NetworkSecure high speed data transfer networkAllows access to a centralised storage systemAllows multiple servers to access a network of storage devices
WLAN
Wireless Local Area NetworkNetwork that uses radio-waves and usually an access point to the internetAllows the users to have mobility
Internet
Uses TCP/IP protocols for data transmissionnetwork of networksGlobal communication systemBoth hardware and infrastructure
Intranet
Private LAN that cannot be accessed remotely(only can be accessed via VPN or on the organisation’s premises)
Extranet
Intranet that can only be accessed remotely via authenticationUtilised to allow 3rd parties to gain information without granting access to the entire network
VPN
Virtual Private NetworkUses the internetAllows people to access a network remotely but encrypts the connectionData is transmitted through a secure pathway known as a tunnel-tunnelling
PAN
Personal Area NetworkA network covering a very small areaBluetooth etc.
P2P
Peer to Peer networkNetwork model where nodes are connected directly to one anotherDirectly exchange files and resources etc.
Network standards definition
Rules followed by manufacturers of network hardware to ensure interoperability between devices
Importance of standards
Allows devices to be compatible and communicate with each otherHelps ensure data transmission is secure-minimum latency and good integrity of dataAllows manufacturers to have a framework on which to build their system
2 types of network layer models
OSI Network layer-7 layersTCP/IP Network layer-4 layers
+ves of layers
New protocols can be added to each layer easilyChange to one layer doesn’t affect functionality of another layerSimilar protocols can be grouped into layers with a specific function in data transmission
OSI Model layers
7 -Application6-Presentation5-Session4-Transport3-Network2-Data link1-Physical
TCP/IP model layers
ApplicationTransportNetworkLink
Function of application layer in TCP/IP model
Collects data to be transmitted
Function of transport layer in TCP/IP model
Breaks up data into packetsAdds packet sequence numberAdds checksum
Function of network layer in TCP/IP model
Adds IP addresses of the sender and receiver node
Function of the link layer in TCP/IP model
Adds MAC addresses of sender+receiver nodePhysically transmits data as bits
Comparison of TCP/IP and OSI model layers
What 2 main technologies does a VPN use?
EncryptionTunnelling
VPN encryption
Converting plaintext to ciphertext via a private keyNeed a decryption key to understand the dataComputers at each end of the tunnel encrypt incoming data and decrypt it at the other end
VPN tunnelling
Tunnel-secure pathway through the public networkOn this connection packets are constructed via the specific VPN protocol format and sent privately over public networks via encapsulation
VPN components
Client VPN softwareVPN infrastructureVPN server
VPN infrastructure characteristics
Need to use specific VPN-routers and firewalls which allow legitimate VPN traffic to pass through
VPN server characteristics
Handles and manages incoming VPN trafficEstablishes and manages VPN sessions and their access to network resources
+ves of telecommuting
Improved productivityReduced costs for businesses and employeesFlexibility for the employeesNo need to commute to workLess environmental impact
-ves of telecommuting
Social isolationLack of expertise or support on certain issuesNeed specific hardware and a network connection etc.May be more distractions in a home environment
+ves of VPN
Allow for telecommutingImproves data security-encryption and tunnellingBypass geo restricted content via masking IP addresses
-ves of VPN
Reliability of VPN is controlled by ISPNot all VPNs are compatible with products May lead to increased latency on the user’s connection if the nearest VPN server is very far
Protocol definition
Set of rules for data communication over a network
Data packet definition
Small unit of data that is used in network communication
3 components of a data packet?
HeaderPayloadTrailer
What is contained in the packet header?
IP address of sender and receiverMAC address of sender and receiverSequence number
What is contained in the packet payload?
Actual data block
What is contained in the packet trailer?
Check SumParity Bit
Key functions of protocols
Maintain data integrityManage flow controlPrevent deadlockManage congestionError checking
Data integrity definition
The overall completeness,accuracy and consistency of the data
Flow control
Mechanism which ensures the rate at which data is being transmitted is in proportion with the receiver’s receiving capabilitiesEnsures receiving node is not overwhelmed with data
Congestion control
Congestion-where a node or link carries so much data network service quality deterioratesThis leads to queuing delay,frame or data packet loss and new connections unable to be made
Error checking
Techniques used to detect noise or other impairments introduced to data during transmissionUtilises parity bits and checksums
Deadlock
Where 2 nodes/processes are trying to access the same node at once-neither is able to proceedRelevant protocol needs to stop and re-queue them
Primary factors affecting speed of data transmission
TrafficNumber of users
Secondary causes affecting speed of data transmission
Time of dayDistanceInfrastructureType of cabling
Tertiary factors affecting speed of data transmission
Environmental issues(temperature etc.)Infrastructure limitations due to financial reasonsType of data being transmitted
Compression definition
Encoding data to use fewer bits than the original version
Lossless v lossy compression
Uses of compression
Backups/archivingFile transferMedia file transfer over the webEncryption/protection
Backups/archiving (compression)
Compressed data is smaller in size than original file-saves storage space
File transfering (compression)
Fewer bits transferred per second-faster transmission ratesLower bandwidth needed for uploads and downloads
Encryption/protection (compression)
Compressing files scrambles their data adding an extra layer of protection against any hackers etcReduces amount of data needing to be encrypted
4 characteristics of transmission media
Security ReliabilityCostSpeed
UTP-Unshielded Twisted Pair cables characteristics
Security-moderate if encryptedSusceptible to EMIRelatively cheapRelatively fast(faster than radiowaves)
Fibre optic cables
Security-very secureGenerally quite fragile(glass)Very expensiveFastest transmission media
Radio waves
Security-insecure unless encryption is usedSusceptible to interferenceTechnically freeQuite slow speeds
Packet switching definition
Routing data packets through a network depending on the destination address contained in each packet
Packet switching steps
Data is broken up into packetsRouted from source to destination using switches and routersThe most efficient routes for the packets are found via the MAC and IP addresses in the headerReassembled at destination using sequence numberChecked for errors using checksumIf any packets are missing data is retransmitted
+ves of wireless networks
Radiowaves are technically freeNo need for cablingGlobal standardsMinimal set up costsAllows for user mobility
-ves of wireless networks
InterferenceLimited rangeWAPs can be used to steal dataTransfer speeds are slower than wired networksEach WAP only has a finite amount of bandwidth
Hardware components in a wireless network
NodesWireless NICRadio wavesConnection point(WAP etc)
Software components of a wireless network
Network Operating System (with drivers)Protocol stackApplications
Types of wireless networks
WiFiWimax3GLTE
Wi-Fi (Wireless Fidelity)
Also known as WLANMost commonly used for home networksBackwards compatible with most older Wi-Fi standardsRelatively slow to quick data transmission
WiMAX
Worldwide Interoperability for Microwave AccessLarge distance internet connectionsRelatively cheap
3G (Third Generation)
Primary way mobile phones access the internet todayAllows tunnelling of phone linesRelatively fast
Key factors concerning security
ConfidentialityIntegrityAvailability
Why is system security difficult ?
Users’Arms race’-constantly evolving malware etc.Systems may have a weak point which can cause it to collapse
One factor authentication
Something you know-password etc.
2 factor authentication
Something you haveOTP etc.
3 factor authentication
Something you areBiometrics etc.
Firewalls
Hardware or software or combo of bothAnalyses data packets based on predetermined rulesActs as a filter monitoring incoming and outgoing network traffic
MAC Address filtering
Hard-coded into devices by manufacturersCan be used to identify specific pieces of hardwareRouters can keep track of allowed and banned MAC addresses
Physical security examples
Locks on doorsSecurity personnelReinforced roomsBarbed wire fences
Encryption in wireless networks
Using algorithms to convert plaintext into ciphertext, so that it cannot be understood by any hackers3 main standards-WEP,WPA,WPA2
WEP
Wireless Equivalent PrivacyVery quickly broken and replaced by WPA
WPA and WPA2
WPA-intrusions could still occur from outside the networkWPA2-intrusion can only occur by those who have accessed the network previously
+ves of userID
Access rights can be set for each userUser groups can be created-manage access rights in batches
-ves of userID
userIDs can be stolenSystem can be bypassedNo protection against interception
+ves of encryption
Strong encryption is very difficult to breakMaintains confidentiality of dataData is encrypted so even if transmission media is insecure, data is still secure
-ves of encryption
Hard to encode-need specialistsComputationally expensiveSome encryption methods may have built in backdoors
+ves of MAC filtering
Another layer of security
-ves of MAC filtering
Danger of whitelist being discovered, so MAC addresses can then be spoofedDifficult to manage whitelistDoesn’t help against data interception
+ves of firewalls
Effectively prevents unauthorised access to a network
-ves of firewalls
May slow the networkIssues with censorship on a software firewall
What does RAM do? (6.1.1)
Memory which stores currently running programs and data being used.
Effect on system if RAM is too limited (6.1.1)
Part of secondary storage needs to be used as virtual memory (much slower than RAM)Less processes can be executed simultaneouslyIf virtual memory is not available, programs or data won’t load
What does secondary storage do (6.1.1.)
Permanent storage of data and programs including vital programs such as OSNon-volatile
Effect on system if secondary storage is too limited (6.1.1)
May not be enough space to permanently store programs and data-data loss occursNot enough space available to use virtual memoryLess data can be stored on the system in general
What does the processor speed do (6.1.1)
Processor performs all calculations and instructions in a systemSpeed - measurement of how many instructions executed per second
Effect on system if processor speed is too limited (6.1.1)
Processor takes longer to perform tasks
What cores do (6.1.1)
Each processor has at least one core (ALU) which performs arithmetic and logic operations
Effect on system if cores are limited (6.1.1)
Without multiple cores, tasks cannot be executed simultaneously More cores=more tasks executed simultaneously
What is screen resolution (6.1.1)
Measurement of the number of pixels in the height x width of a display
Effect on system if resolution is too limited (6.1.1)
Number of pixels displayed is lower-pixelated displayPoorer quality images but also smaller file size
What does a sound processor do? (6.1.1)
Helps the system with sound reproduction and processing-frees up CPUAlso may contain bank of sampled sounds-helps to produce better quality audio
Effect on system if sound processor is too limited (6.1.1)
CPU has to help with processing sounds-reduces system performanceOverall quality of audio is not as high without use of sound processor
What does a graphics processor do (6.1.1)
Complex graphics processing-3D rendering etc.
Effect on system if graphics processor is too limited (6.1.1)
CPU is less efficient at graphics processing-lower quality or slower
What does cache do ? (6.1.1)
Stores instructions and data most likely to be requested next by the CPU from the RAMCPU doesn’t need to wait for instruction or data to arrive all the way from RAM
Effect on system is cache is too limited (6.1.1)
CPU will have to wait longer for instructions/data to be fetched from RAM, decreasing performanceLess cache hitsSlower processing of common tasks on the system
What is bandwidth (6.1.1)
Measurement of the amount of data able to be sent at the same time in a certain time frame
Effect on system if bandwidth is too limited (6.1.1)
Lower data transmission speeds from one point to another-slower network performanceTakes longer to process data in its entirety
What is network connectivity (6.1.1)
The type of network connection being used within a network
Effect on system if network connectivity is limited (6.1.1)
Reduced data transmission speeds, and higher latencyPossibly more interference and transmission errors depending on the type of connection Lower download and upload speeds
Mainframes:Processor, primary and second memory
Contains thousands of coresVast amounts of primary and secondary memory
Common uses of mainframes
Virtualise smaller computersWeather/financial models and predictions
Servers and server farms:Processor,primary and secondary memory
Many high spec PCs running in parallelVast amounts of primary memory (less than mainframes, more than PCs) along with secondary memory
Common uses of servers and server farms
Serve networksData centres for cloud storageOnline data backups
Desktop PCs: Processor,memory
Single processor, but multiple coresQuite a lot of primary ( less than servers) and secondary memory (much less than servers)Upgradeable
Common uses of desktop PCs
Companies and schools with no need for portabilityGaming
Sub-laptop (netbooks): processor and memory
Single or low multi-coreLimited RAMQuite little secondary storage,usually a SSD
Common uses of sub-laptops
Personal computing devices
Cell phones/mobiles: processor, memory
Single or multi-coreModerate RAMQuite limited secondary storageConstrained by screen size along with input options
Common uses of cell phones
Personal computing devices
Tablets: processor,memory
Single or multi-coreNot much RAMModerate secondary storage(less than PC)Very portable
Common uses of tablets
Media consumptionPersonal computing device
PDAs:processor,memory
Single coreVery limited RAM and secondary storage
Common uses of PDAs
Not used that much anymoreCalendars/emailsDelivery drivers
Digital camera:processor,memory
Single coreLimited secondary and primary memory,however secondary storage is expandable
Common uses of digital camera
Higher end photography
Think about consequences on a system of limiting which 5 things ?
Primary memorySecondary storageCPU speedCPU coresConnectivity
Questions to think about and their consequence to the user (6.1.4)
If the processor is too slow? If the processor has only one core? If the amount of primary memory is limited? If the amount of cache is limited? If network connectivity is limited? If user access is limited to a single user per device?
Multi-user system definition
Many users on the same machine or many users connected to the same network
Multi-programming system definition
System that can have different programs installed
Single programming system
Can only run one program/set of programs
4 main functions of the OS (6.1.5)
Device configurationFile managementMemory managementInterface platform
How does device configuration work with the OS? (6.1.5)
OS uses device drivers (software program that acts as a translator) to allow the system to communicate with peripherals
How does managing primary memory work with the OS (6.1.5)
OS ensures each process runs in its own allocated memory spaceTherefore OS allocates and deallocates memoryPrevents overwritingEnsures a program has sufficient memory to run
Virtual memory management with the OS (6.1.5)
Virtual memory is part of the secondary storage that is used as RAM when RAM is fullVirtual memory is transferred in the form of pagesData from RAM is temporarily transferred to secondary storage
Managing secondary storage with the OS (6.1.5)
Provides structure and access methods for the storageKnown as folder-structureOS manages security access of these folders and files also
Providing an interface with the OS (6.1.5)
User gives commands to computer and enters dataOS translates I/O and sends it to correct memory or folder address to be processedProvides link between user and computer hardware
Time slicing
Multi-user system-time slice is set amount of processing time each user getsSingle user system-time slice is set amount of processing time each program getsAllocating a fixed period of time to each process for which they are allowed to runCPU time is allocated dependent on time and priority
Interrupt handling (6.1.5)
Function of the OS which is executed when an interrupt is detectedInterrupt-signal to processor emitted by hardware/software indicated an event needs immediate attention
Security management with the OS
Utilises authentication and access rightsIn multi user systems OS also isolates each users tasks, data and programs along with controlling access rights to specific parts of memory and secondary storage
Parallel processing with the OS (6.1.5)
Multi-core systemsUtilises prioritising where highest priority tasks are executed until a higher priority task appearsScheduler sorts tasks into order of priority
Main resource management techniques (6.1.7)
SchedulingPolicies and mechanismsMultitaskingVirtual memoryInterruptPolling
Scheduling (6.1.7)
Action of deciding which processes can occur when and for how longAllocating CPU time amongst running programs and tasks
Policies (6.1.7)
Policies-what is to be doneMechanism-how it is to be donePolicies are rules followed by the system in order for it to run as effectively and safely as possible
Multi-tasking (6.1.7)
The OS allows more than one program or task to be executed simultaneously on a systemOS keeps track of the progress of each of these tasks and allows you to move from one to another without any loss of information
Virtual memory + paging (6.1.7)
Feature of the OS where secondary storage is used as an extension to RAMInvolves transferring pages from RAM to VM when you are running many programs or large onesOS is constantly swapping data between the 2 locationsOS will transfer back pages they need from VM and then send other pages to the VM so there is space for these needed pagesMemory manager determines this by sending the least-used page usually to VM
Interrupt (6.1.7)
Signal emitted by hardware or software indicating an event needs immediate attentionOS responds first suspending its current activities,saving these tasks then execute an interrupt handlerAfter interrupt handler is finished the system resumes its previous activities
Polling (6.1.7)
Process of where OS regularly checks another device or peripheral in order to see its status(ready or not)Often done with low-level hardware
Dedicated OS definition (6.1.8)
OS designed for a specific device or purpose
+ves of a dedicated OS (6.1.8)
Higher level of security-developers can restrict possible entry methods for malware etc.Can be customised for maximum speed and efficiency for whatever specific device or purpose it is being used forSince you know the purpose and hardware for the OS, developers can eliminate elements of a typical OS which may not be needed in this scenario(less resource usage)
Abstraction (6.1.9)
In general, it is omitting the unnecessary and complex info in a systemIn OSs certain hardware details may be hidden and higher-level functions may be provided
Drive letters (6.1.9)
Single A-Z letter assigned to a physical drive or drive partition in a systemExample of abstraction
Virtual memory (example of abstraction) (6.1.9)
OS handles paging in the optimal manner to maximise performance, we can just alter settings of virtual memory
Java virtual machine (6.1.9)
Interprets compiled Java binary code for a computer’s processor Each platform has its own JVM
Control system definition
Device/set of devices that manages,commands or regulates the behaviour of other devices or systems
2 main types of control systems
Open-loop control systemsClosed-loop control systems
Key features of an open-loop control system
Non-feedback system(output has no impact on control action of input)No self correction of errors
Examples of open loop control systems
ToasterElectric hand dryerAutomatic washing machine
Key features of a closed loop system
Utilises feedback-output can influence control action of inputOutput is measured to be compared with inputSelf correction can then occur based on the output
Examples of closed loop systems
Air conditionerCentralised heating system
Main steps in control systems operation cycle
- Analogue inputs taken from the sensors 2.Analogue data converted to digital using ADC 3.Digital data is processed by the microprocessor and digital output generated 4.Digital data converted to analogue using DAC 5.Output executed using actuators
Automated doors features (example of control system)
Heating system (example of control system)
Microprocessor definition
Computer system that contains all the functions of a CPU
Sensor definition
A device that converts a physical stimulus into a readable output
Actuators function
Part of a device or machine that helps it with physical movementConverts energy into mechanical force
Accessibility input devices examples
Adapted keyboardBigger keysErgonomic(help with Carpal Tunnel Syndrome)Adapted mouse,trackball and joystickErgonomic mouseXbox Adaptive Controller(large buttons+is affordable)USB mouse with a large trackball
Assistive technology examples
Screen readersScreen magnification softwareAlternative input devicesMotion/eye trackingHead pointersSpeech input software
Medical sensors examples
Airflow sensorBody temp sensorAccelerometerElectrocardiogram sensor
Transducers definition
A device which converts signals from analogue to digital and vice versa
+ves of transducers
Compatible with microprocessors and computersEase of convertibility between analogue and digitalRemote controllability
What is feedback?
Modification or control of a process or system by its results or effects
Examples of processes that use feedback
Missile tracking moving targetA heating system in a houseAuto-pilot
Embedded system definition
A computer system within another mechanical or electrical device with a specific purpose
Tagging prisoners-arguments for:
Allows non-dangerous criminals to moveReduces number of people needed to be in prisonAllows for tracking at all times
Tagging prisoners-against
Could be hacked to track innocent peopleTracking data could be sold to make moneyLoss of freedom of movement
Surveillance
Monitoring/observation from a distance using electrical equipment
Arguments for surveillance
Greater securityCan be used as evidence in court casesFewer people need to monitor others-physical security replaced by cameras etc.
Arguments against surveillance
Loss of privacyCould be hacked and used for malicious purposesUtilised to spy on people
CCTV-how it works
Video surveillance techniqueWorks independently to monitor a certain area
Arguments for CCTV
Reduces crime-deterrentCost effective solution to criminal damagePeople may feel safer
Arguments against CCTV
Doesn’t stop crimeExpensive to install and maintainMay be used for illegal spying
What is a centralised control system?
Control system where all processing occurs at a single, central location such as a microprocessorMicroprocessor controls numerous terminals (sensors/actuators)
What is a distributed control system?
Control system where multiple decentralised microprocessors control multiple sensors and actuatorsThese terminals all communicate with one another via a network
+ves of centrally controlled systems
Easier to maintain-everything is managed centrallyMore controlCheaper-just need one microprocessor
+ves of distributed systems
Quicker accessSharing of tasks and resourcesNo single point of failureResponse will be more specific to environment
-ves of centrally controlled systems
Single point of failureSlower processing-single processor has to manage all terminals and respond to all sensors etcActuators will be less responsive to their environments
-ves of distributed systems
Much more expensive-multiple microprocessors and sensorsMuch more complex-harder to maintain Harder to fix any potential errors
What is an autonomous agent?
Software entity that carries out a set of operations on behalf of a user or another program with some degree of independence
4 key features of an autonomous agent
A-autonomyB-reactive behaviourC-concurrency/socialityD-persistence
Autonomy key features
Self activation-agents don’t need to be triggered to perform a taskNo human intervention-agents can select task themselves without human intervention
Reactive behaviour key features
Agent senses environment it is in (use of sensors) and decides what to do
Concurrency/sociality key features
Agents able to interact with other agents through communication in various modesInclude coordination,cooperation and competition
Persistence key features
Code describing an agent runs continuously like a processNot executed on demand