Uploaded by Sidharth

Computer System Resources & OS Management

advertisement
6.1.1 Identify the resources that need to be managed within a computer system
The resources that a system needs is the:
- Software
- Hardware
- Trained personnel
- Infrastructure
The operating system is used to manage all these.
RAM (Primary Memory) is where all data and programs that are being processed are
kept, without it the system will need to use secondary storage through virtual memory,
which is much slower. If virtual memory is insufficient, the program/data just will not be
loaded. Typically 1-16 GB, powers of 2.
Secondary Storage (HDD/SDD/Optical) is where data can be stored if power is lost,
without it there is no place to 'save' work as the RAM is volatile and data might be lost.
Without it, the OS can't use virtual memory if the RAM fills up. It limits how much data
could be kept. Typically HDD is 500 GB, 1TB or 2 TB. SDD is 256 or 512 GB. Optical is
650MB.
Processor (Processor Speed) does all the calculations in a computer system, it is
measured by processing speed (how many calculations can be done per second). 1
GHz is 1 billion calculations per second. With a limitation of this the processor will take
longer to perform tasks. Usually 1 to 3.2 GHz.
The Processor (core), every processor has at least 1 ALU or core. 2 ALUs can do 2
operations at once. With only one core, less calculations can be done at the same time,
it affects how many tasks a system can cope with simultaneously.
Cache contains the instruction/data that the CPU is likely to need next from RAM, it
massively speeds up processing. Without it the CPU will have to wait for instructions or
data to be fetched from RAM and the system will be slower. Typically 1 to 128 MB.
Bandwidth (Network Transmission) is a measurement of how much data can be sent at
the same time in a certain time frame. Less bandwidth means data will take longer to
move between two points and it affects how long a data can be processed in its entirety.
Bps is bits per second, Broadband usually 16-100 Mbps, LAN is up to 1 Gbps. Memory
bandwidth is the rate at which data can travel from RAM to the processor and vice
versa.
Screen Resolution is the measurement of number of pixels in height x width of display,
without a good resolution, the display is pixelated and unclear, the file size is smaller but
the quality is poorer. Typically 1024 x 768, 1366 x 768, 1920 x 1080, 4096 x 2304.
Sound processor is the processor that performs sound reproduction, allowing the CPU
to do other calculations. Can contain a bank of sampled sounds to perform better quality
audio. Without this, CPU is taxed with having to process sounds, slowing down the
overall system. Overall quality is lower in the system. It is usually done by Sound Cards.
Graphics Processor does complex graphic processing, without it the CPU will have to
do it, slowing down the system. This is commonly found through Nvidia or ATI graphics
cards.
6.1.2 Evaluate the resources available in a variety of computer systems
Mainframes are thousands of cores, they have vast amounts of primary and secondary
memory, they have very powerful CPU power with an array of disks that can handle
tasks concurrently. They are usually used for large-scale transaction processing, largescale statistics processing.
Servers/Server farms are many PCs running in parallel, they are used to 'serve'
networks.
PCs are a single processor, with multiple cores. Used by schools and companies where
portability is not needed.
Tablets and cell phones are also a single processor with multiple cores, primary
memory is usually 1-3 GB they use micro SD cards for secondary memory and are
much cheaper.
Supercomputers are one large processor that is extremely fast and expensive and they
focus on mathematical calculations, they are used for weather forecasting, molecular
modelling etc. They are suitable for one huge task.
Mainframes have very powerful CPU power, situated AC rooms, with vast amounts of
RAM, arrays of disks, they can run a lot of input and generate a lot of output, they deal
with more bulk data than supercomputers, good for handling a large amount of small
tasks.
6.1.3 Identify the limitations of a range of resources in a specified computer system
Batch processing takes tasks together as a group and then run them one at a time in a
queue without any user intervention (Queueing downloads before sleeping). Multi
programming results from this.
Multi-programming is where two or more programs are loaded into main memory to be
executed. If the current program is performing something that doesn't need the CPU
(waiting for input for e.g), the next process is loaded to minimize idle time.
Multi-tasking is where each process is given a set amount of time, and each process
regardless of its size will be given the same amount of processing time. The time
intervals are fixed in this case.
Two or more processes are loaded into main memory -> it runs one at a time -> BUT if
current program is performing something that doesn’t require the CPU (waiting for input)
it gives control to the next program -> this minimizes time that the CPU waits and does
nothing
6.1.4 Describe possible problems resulting from limitations in the resources in a
computer system
User time is wasted if processor speed is slow or primary memory is too small. Multiuser systems could be slow if too many users try to access it on the same machine or
the same network.
A processor is a circuit that can perform operations on input and input whilst a core is
the part of the processor that reads and executes functions.
Multi-core systems contain one CPU with multiple cores, the one CPU can execute
multiple operations at the same time, which increases overall speed of program
execution. However, the speed depends on the program that allows the cores to work in
parallel.
Adv: Faster, More energy-efficient
Disadv: Not proportionally more speed, not every OS supports multi-core
Multi-processor systems mean that there is more than one processor in the same
system will allow it to be faster. Different executions can be given to different
processors.
Adv: If one processor is not working there are backups, more battery efficient, faster
Disadv: Coordination of processors is complex, idle time for some processors waiting
for others, need large main memory so more expensive
6.1.5 Explain the role of the operating system in managing memory, peripherals and
hardware interfaces
The OS uses 'drivers' and 'translation programs' so that the other programs can control
and use peripheral devices.
The OS does file management, transferring files between main memory and secondary
storage to manage the space.
Memory management is where the OS allocates the use of RAM to processes that
request it. Virtual memory is a feature of the operating system that allows a computer to
compensate for shortages of physical memory by temporarily transferring pages of data
from RAM to disk storage. The OS manages secondary storage by providing access
methods to these structures.
The OS also provides a user interface, either a CLI of a GUI.
The OS does time-slicing, where a time-slice is a set amount of time that each program
(or user in a multi-user system) is allocated.
The OS also functions as an interrupt handler
6.1.7 Outline OS resource management techniques
Nearly all operating systems have an application called a task scheduler, which caries
out specific tasks at specific times like back ups or virus scans. The process scheduler
is part of the OS and it decides which task should be admitted to the CPU next (the next
process to run). There can be short, medium and long term schedulers. Common
scheduling systems of the CPU include:
- First come first served
- Shortest job first
- Priority scheduling
- Round robin
Policies are ways to choose which activities to perform, they are what is to be done
while the mechanism determines how it will be done. When more than one user has
access to a personal computer and so the OS has to create each user account to
access the computer, this can also be applied to large networks. The user account
defines the privileges and rights of the user.
Virtual memory of an OS allows for a computer to compensate losses of physical
memory by temporarily transferring pages of data from RAM to disk storage. Only vital
data should be kept in the RAM and the rest in secondary memory.
Swapping is where a processor block of a program can be swapped out of RAM into
secondary memory and then later back into RAM to continue their execution.
Paging is a key component of virtual memory implementation and it allows the computer
to use secondary storage as if it were RAM. It can split the program into processes that
can be put into RAM separately and not in order and then reassembled after it is
executed (this takes time). The OS copies as much data as it can into RAM and leaves
the rest on the hard disk. Each program is assigned a 'logical memory' which causes
them to think they have all the space in RAM, when in reality a lot of processes are in
the hard disk. When data from the hard disk is needed by the RAM, it exchanges some
data in ram (a page) for it. It works well but doing this a lot can make the computer
slower and is known as 'thrashing'.
An Interrupt is a signal from a device or program that causes the OS to stop what it is
doing and tells it what to do next instead.
Polling is a periodic check of a device by the central device to sample its status. Easier
to implement but is less efficient for the CPU.
Polling is like when you stare at your phone waiting for a message but an interrupt is
when your phone sends you a notification when the message arrives.
6.1.8 Discuss the advantages of producing a dedicated operating system for a device
There are two methods of developing a custom OS:
- Taking an existing system and adapting it (End user will be more familiar with it,
but it may not be optimized for its full potential purpose)
- Design the OS to fit the device exactly (The OS will be optimized and efficient,
but it can't be used on other devices and is more expensive)
An optimized OS will have:
- Good security
- Customizability
- Modifiable priorities (better suited to the audience, A custom OS can cut out
some aspects of the OS that are not needed for that device, also reducing the size of
the OS)
- Faster on the device
6.1.9 Outline how an operating system hides the complexity of the hardware from users
and applications
Users and applications don’t see the hardware directly, only viewing it through the OS.
The OS hides unnecessary complex detail from them, this is called abstraction. Using
GUIs, clickable folder icons, changing virtual memory using a slider etc. are examples of
abstraction. This abstraction doesn't let users see changes in hardware and makes
related devices (like hard and floppy disks) seem the same.
Download