Computer Science - Chapters 4 to 6
Computer Science - Chapters 4 to 6
Examples of application software - word processor, spreadsheet, database, apps, photo editing software,
video editing software, graphics manipulation software, control and measurement software.
System softwares -
● Memory management - management of the primary storage(RAM) and the data being moved
between RAM and HDD/SSD. It keeps track of all memory locations.
● Security management - ensure the integrity, confidentiality and availability of data by overseeing
software updates, maintaining access rights for all users, and carrying out data recovery and
system restore.
● Hardware peripheral management - Hardware management uses device drivers to allow input
and output to take place. It manages the queues and buffers to ensure data is being handled
correctly and that the CPU performs to its maximum.
● File management - File management maintains file directories and file naming conventions. It can
perform file maintenance tasks such as open, close, delete, rename, copy and so on. File
management also ensures access rights are maintained as part of security and correct memory
allocation of the data when it is read from the HDD/SSD and saved temporarily in RAM.
● Multitasking - Multitasking allows a computer to carry out more than one task simultaneously. To
do this, the OS constantly monitors that all the resources are allocated specific processor time,
they can all be interrupted as and when needed, and priorities are used to achieve the most
efficient working.
● Management of user accounts - User account management allows more than one user to log into
the computer by ensuring each user’s data is stored in a separate part of memory. Each user
logging onto a computer is given a user account area, which is protected by a username and a
password. Each user can customise their screen layout and manage their own files and folders.
An administrator oversees the management of user accounts. Multi-access hierarchy levels are
used to ensure access to certain data stored on the computer system is only allowed if a user has
the correct hierarchy clearance level.
When a computer starts up, part of the operating system is loaded into RAM (this is called booting up the
computer). This routine is handled by the Basic Input Output System (BIOS) which is a type of firmware –
a program that provides low-level control of devices. The BIOS is stored on a flash memory chip called an
EEPROM (electrically erasable programmable ROM) and its task is to tell the CPU where the operating
system can be found.
Interrupts - a signal sent from a device or software to the microprocessor that causes the microprocessor
to temporarily stop its current operation to service the interrupt. Causes of interrupts can be - timing
signal(time not matching the system clock), input/output process(when a printer asks for more data to be
sent), hardware fault(a printer asking for more pages or ink), user interaction(a mouse click) or a software
error(a file cannot be found).
Types of programming language, translators and integrated development
environments
A computer program is a list of instructions that enable a computer to perform a specific task.
Programmers use many different programming languages to communicate with computers. Computer
programs can be written in high-level languages (HLLs) and low-level languages (LLLs).
High-level languages are often used by programmers. They include visual basic, python and java.
Low-level languages are used by programmers who need to develop special routines that make best use
of the computer’s resources. They are normally written in assembly language which is translated into
machine code.
Web browsers are software that allow users to access and display web pages or play multimedia from
websites on their devices. Uniform resource locator(URL) are text addresses used to access the
websites.
Hypertext transfer protocol(http) is a set of rules that must be obeyed when transferring files across the
internet. If some form of security is employed, it becomes https (s=secure) along with a green padlock in
the browser address.
Web browsers interpret hypertext mark-up language(HTML) from websites and show the results of the
translation as a website page or play multimedia.
To get a page from a website, a browser needs to know the IP address, a domain name server(DNS) is
used for the same.
Cookies are small files or code stored on a user’s computer(permanently or temporarily). A cookie
behaves like a small look-up table which allows the cookie to track data about the user’s internet activity.
There are two types of cookies - session cookies and persistent cookies.
Digital currencies
Digital currency exists purely in a digital format and has no physical form unlike fiat currency (eg:€,$).
Cryptocurrency is a type of digital currency that overcomes security and confidentiality issues. It uses
cryptography to track transactions.
Blockchaining is a decentralised database that is used for cryptocurrency. When a new transaction takes
place, a new block is created which contains data, a new hash value and a previous hash value to the
preceding block. The hash value is unique to each block and has a timestamp which identifies when the
block was created. The first block in blockchaining is called the genesis block. If a block is used illegally,
its hash value changes, disrupting its link to the subsequent blocks.
Cyber security
Cyber security are systems put in place to defend electronic devices and their associated data from an
attack by a cybercriminal. Such threats can be:
● Brute force attacks - a method where all combinations of letters, numbers and other characters
are tried to generate passwords. It relies on high speed of computer processing and the process
can become longer with longer, more complex passwords.
● Data interception - a method where data is stolen by tapping into a network. This can be done by
packet sniffers which examine and read all data being moved across the network.
● Distributed denial of service (DDoS) attacks - an attempt to prevent anyone accessing part of a
network, like a specific browser.
● Hacking - gaining illegal access to a computer without the user’s permission. It can lead to
identity theft and loss of personal/key data. It can be mitigated against using firewalls.
● Malware - There are multiple types of malware:
○ Viruses - programs that can replicate themselves with the intention of deleting or
corrupting files or causing the computer to malfunction. They require active participation
of the recipient(like clicking on a link sent through gmail).
○ Worms - a stand-alone virus that can replicate itself with the intention of spreading to
other computers. They often work throughout networks, without any action from the
recipient.
○ Trojan horses - malicious programs, often disguised as legitimate software, that replace
all or part of the legitimate software with the intent of carrying out some harm to the
user’s computer. It needs action by the recipient.
○ Spyware - a software that gathers information by monitoring the activity on a user’s
computer and captures personal information, which is sent back to the person who sent
the software.
○ Adware - a software that floods a user’s computer with unwanted advertising usually in
the form of pop-ups. It can redirect users onto fake websites that contain promotional
adverts. They may not necessarily be harmful but they can help highlight weaknesses in
pre-existing security for a network.
○ Ransomware - a program that encrypts data on the user’s computer, the key is only sent
after a ransom is paid. It is often sent through a trojan horse or by social engineering.
● Phishing - sending of legitimate-looking emails to users which contain links or attachments to fake
websites. It requires a user to initiate. Once a link is established, the user’s browser is taken to a
fake website where personal information can be stolen.
● Pharming - a malicious code installed on a user’s computer or web server without their
knowledge. It doesn’t require the user to initiate. It is initiated automatically through the stored
code. The creator of the malicious code can gain access to personal information of the user
through sending them to a fake website without their knowledge.
● Social engineering - a situation when a cybercriminal creates a social situation that can lead to
the potential victim ‘dropping their guard’. It involves the manipulation of people into breaking their
normal security procedures. 5 such threats and the 3 strongest emotions exploited are:
Access levels are levels of security placed based on the severity of the data, it can be opened on the
basis of clearance, which would be provided by the company or website based on its hierarchy.
Anti-malwares are antiviruses and anti-spyware which detect and remove any spyware and other
malwares.
Authentication refers to the ability of a user to prove who they are. The most common forms of
authentication are passwords, two-step verifications and biometrics(fingerprints, voice scan, eye scan and
face scans). Advantages and disadvantages of all biometric authentications are given below.
Automatic software updates can help keep a device secure as it will contain patches of updates virus
checkers, firewalls and bug fixes.
Firewalls can be software and hardware that sits between the user’s computer and the network. They
examine all incoming and outgoing traffic, blocking any suspicious activity and can also help prevent
undesired websites and viruses and hackers. They can also maintain a log of daily activity.
Proxy servers are an intermediate between a user and a web server. They filter internet traffic, keep
user’s IP addresses secret, and block requests from certain IP addresses. If a cyberattack is launched,
the proxy server will be affected instead of the web server.
Secure sockets layer(SSL) is a type of protocol computers used to communicate securely with each other
across a network. When a user logs onto a website, the SSL encrypts the data. Additionally, SSL
certificates are a form of digital certificates that authenticate a website.
Chapter 6 - Automated and emerging technologies
Automated systems
An automated sensor is a combination of hardware and software that is designed and programmed to
work automatically without the need for any human intervention.
Robotics
A robot is a machine capable of performing tasks in place of humans. A machine can be termed a robot if
- It can sense its surroundings.
- It has a degree of movement.
- It is programmable.
Many robots don’t have artificial intelligence because they are often used for repetitive tasks rather than
adaptive human tasks.
All of the above refer to physical robots, however there are also software bots like chatbots. Although
such software bots are not robots in their true sense since they don’t meet the three characteristics
required for them to be classified as robots.
Artificial intelligence
Artificial intelligence (AI) is a branch of computer science dealing with the simulation of intelligent human
behavior by a computer. This is often referred to as cognitive functions of the human brain. There are
three categories of AI:
- Narrow AI: a machine has superior performance to a human in one specific task.
- General AI: a machine is similar, but not superior, in its performance in doing one specific task.
- Strong AI: a machine has superior performance to humans in many tasks.
Expert systems are a form of AI developed to mimic human knowledge and experience. It works using the
components shown below.
Machine learning is a subset of AI where algorithms are ‘trained’ and learn from their past mistakes. It can
make predictions or make decisions based on previous scenarios. They have very powerful processing
capabilities.
Difference between artificial intelligence and machine learning