Unit 1 - From simple to complex Flashcards
a) Definition of Concurrent systems?
b) Example of a Concurrent system?
a) Concurrent computer systems can, in some sense, do several things at once. At least, they appear to be doing several things at once. Some systems really can carry out several activities at the same time. However, other systems may just be juggling several activities very quickly, attending to each one in turn, whilst only doing one thing at a time.
b) A web server is a common example of a concurrent system
a) Definition of Distributed systems?
b) Example of a Distributed system?
a) have a number of component parts located in distinct places. The component parts are usually computer systems in their own right. These distinct places could be separate rooms or floors of the same building, or separate buildings.
b) The Internet is a common example of a distributed system.
What is an Embedded system?
computer systems which form part of a larger system, such as a car, a printer, medical equipment, a spacecraft. Typically they have to monitor and control many devices at once, some of which may need to be given attention at well-defined time intervals in order for the larger system to function properly.
Describe a Sequential system
In a sequential system one activity must finish before the next activity can start
Describe a Sequential system
A parallel computer system requires more than one processor, each one carrying out one of the activities at a given time
Describe a pseudo-parallel system
meaning ‘not-quite-real’ parallelism. In this case, the processor is allocated to each activity in turn for a short period of time, so that each activity can make some progress without waiting for any of the others to complete.
What’s the difference between a uniprocessor and a multiprocessor
A number of activities share a single processor
– a uniprocessor system.
Each activity has its own processor on a centralised system
– a multiprocessor system.
Which of the following system configurations are capable of being concurrent, parallel, or neither?
- *(a)** One processor, three activities
- *(b)** Three processors, two activities
- *(c)** Three processors, five activities
- *(d)** Two processors, one activity
- *(a)** Concurrent, but not parallel – the activities can share one processor in a pseudoparallel fashion.
- *(b)** Parallel and therefore concurrent – each activity can progress simultaneously on one processor, with one idle.
- *(c)** A mixture of parallel and pseudo-parallel activity is possible here – some processes must share one or more processors.
- *(d)** No concurrency or parallelism is possible as there is only one activity – this can run on one of the processors while the other remains idle. If the activity could be split up into two or more subactivities then some concurrency and even parallelism would be possible.
a) What are low level connections?
b) What are higher level protocols?
a)
At the lowest level of computer communication we are dealing with streams of bits. In order to send and receive these bits, there are a number of different technologies that cover a wide range of possible communication speeds.
Examples: LAN,WAN
b)
The internet is a vast network of networks, interconnecting millions of host computers and networks. The hosts and their software are heterogeneous – that is, they are of many different types and combinations: a variety of hosts, such as mainframes, PCs, Apple Macs or mobile phones, run a range of software, such as Windows, Linux, and other, vendor-specific, operating systems. The internet depends heavily on universally agreed communication protocols and other standards. For example, most communication across the internet uses the TCP/IP protocol which specifies the detailed format of messages that can be exchanged between hosts.
Sequential Systems
Pros an Cons?
Pros
- Simplicity of design and use.
- no need to think about how a number of concurrent activities can be organised to share the computer without interfering with each other.
- If something goes wrong with a sequential program it is relatively easy to trace through the instructions one at a time, to find the cause of the problem.
- The operating system for a sequential system can also be relatively simple.
Cons
- A system that only does one thing at a time will always have bottlenecks in performance where it has to wait for its slower components.
- not efficient in terms of processing power
Concurrent (but not distributed) systems
Pros an Cons?
Pros
- Allows more efficient use of expensive hardware
- possible for many users to interact with one large system
- Run multple tasks at once
Cons
- Requires more complex operating system
- Requires more complex/expensive hardware to run
- System can suffer deadlock (systems stops because 2 or more processes are waiting for each other to proceed)
Distributed systems
Pros an Cons?
Pros
- Greater efficiency due to spread of resources
- Increased fault tolerance ( if one component fails, the system can still function albeit less efficiently).
- Easily scalable, extra components can be added
Cons
- Greater potential for bottlenecks, slowing of system in the event of a failure
- Security is potentially more difficult in a distributed system – there are more points of access
Mobile systems
Pros an Cons?
Pros
- Not geographically tied to a single location
- No requirement for fixed wiring
- Many more users can access the system
- Location awareness allows geographically relevant data to be sent to user
Cons
- Less reliable than fixed systems
- Security issues, radio signals can be intercepted.
Enterprise systems
Pros an Cons?
Availability – being accessible from many locations at all times.
Scalability – the capability to deal with highly fluctuating loads on the system.
Reliability – maintaining correctness of operations and data even when faults occur.
Security – controlling access to the system and its data to prevent possible attacks