Resource limitations: Difference between revisions

From Computer Science Wiki
 
(9 intermediate revisions by the same user not shown)
Line 9: Line 9:
! Resource  !!  Description !! Consequence of limiting...
! Resource  !!  Description !! Consequence of limiting...
|-
|-
| Primary memory || Please read this article about [[Primary memory]].
| Primary memory || Please read this article about [[Primary memory]].|| If an operating system does not have enough primary memory it will employ virtual memory in an attempt to provide adequate primary memory for each process. If this doesn't work, the operating system will not be able to process instructions and processes will not be able to execute.  
|-
|-
| Persistent storage || Please read this article about [[Persistent storage]]
| Persistent storage || Please read this article about [[Persistent storage]]|| As persistent storage is commonly used a swap area fro primary memory AND used to save data when a process has completed, inadequate secondary memory would moer quickly lead to a system failure.
|-
|-
| CPU || When the OS runs a piece of software it has to find the program files on the storage drive, load them into main memory, and instruct the CPU to start executing the program from the beginning.
| CPU || When the OS runs a piece of software it has to find the program files on the storage drive, load them into main memory, and instruct the CPU to start executing the program from the beginning.
Line 23: Line 23:


<ref>https://www.bbc.co.uk/bitesize/guides/ztcdtfr/revision/3</ref>
<ref>https://www.bbc.co.uk/bitesize/guides/ztcdtfr/revision/3</ref>
   || foo
 
[https://www.makeuseof.com/tag/compare-different-cpus-right-way/ Please click this link for a good article describing how to compare CPU's]
   || A CPU executes instructions. If it cannot process instructions quickly enough, there would be a experience of latency, lag, or failure. This would result in cascading failure, as one process may not be able to execute instructions, which may impact a different process.
|-
|-
| Network || Bandwidth, which is the amount of data that can be transmitted in a fixed amount of time, is expressed in multiples of bits per second in digital devices. In analog devices, it is expressed in hertz. A "bus" with low bandwidth can hamper a fast hard drive. The operating system allocates bandwidth to each program, input or output method.|| foo
| Network || Bandwidth, which is the amount of data that can be transmitted in a fixed amount of time, is expressed in multiples of bits per second in digital devices. In analog devices, it is expressed in hertz. The operating system allocates bandwidth to each program, input or output method.|| The most common consequence of limited bandwidth is latency (or lag). The problem with networks is we never really have a guarantee of throughput. If a process is depending on a certain amount of data in a certain amount of time, buffering strategies are employed. Buffering is Preloading data into a reserved area of memory (the buffer). In streaming audio or video from the Internet, buffering refers to downloading a certain amount of data before starting to play the music or movie. Having an advance supply of audio samples or video frames in RAM at all times prevents disruption if there are momentary delays in transmission while the material is being played<ref>https://www.pcmag.com/encyclopedia/term/buffering</ref>
|-
|-
| Display server || A display server or window server is a program whose primary task is to coordinate the input and output of its clients to and from the rest of the operating system, the hardware, and each other<ref>https://en.wikipedia.org/wiki/Display_server</ref>. The IB might call this screen resolution.  
| Display server || A display server or window server is a program whose primary task is to coordinate the input and output of its clients to and from the rest of the operating system, the hardware, and each other<ref>https://en.wikipedia.org/wiki/Display_server</ref>. The IB might call this screen resolution.  
Line 31: Line 33:
* The OS X operating system uses Quartz Compositor as a display server and of a window manager in the windowing system.
* The OS X operating system uses Quartz Compositor as a display server and of a window manager in the windowing system.
* The Windows operating system uses the Desktop Window Manager to render the graphical user interface
* The Windows operating system uses the Desktop Window Manager to render the graphical user interface
* The Linux operating system might use X11, wayland, mir or other display server and windows manager. || foo
* The Linux operating system might use X11, wayland, mir or other display server and windows manager.  
|-
|| If there is inadequate resources to process video, we would see choppy, distorted or corrupted graphics. Video cards are often used to render complex graphics and off-load the job of rendering graphics from the CPU. A CPU can only process a limited number of instructions per second. A dedicated video card only processes video rendering processes and can thus process more instructions per clock cycle.  
| File system || In computing, a file system or filesystem (often abbreviated to fs), controls how data is stored and retrieved. Without a file system, data placed in a storage medium would be one large body of data with no way to tell where one piece of data stops and the next begins. By separating the data into pieces and giving each piece a name, the data is easily isolated and identified. Taking its name from the way paper-based data management system is named, each group of data is called a "file". The structure and logic rules used to manage the groups of data and their names is called a "file system".<ref>https://en.wikipedia.org/wiki/File_system</ref>|| foo
|-
|-
| Sound server || A sound server is software that manages the use of and access to audio devices (usually a sound card). It commonly runs as a background process.<ref>https://en.wikipedia.org/wiki/Sound_server</ref>
| Sound server || A sound server is software that manages the use of and access to audio devices (usually a sound card). It commonly runs as a background process.<ref>https://en.wikipedia.org/wiki/Sound_server</ref>
Line 41: Line 42:
* The Windows operating system uses Audio Processing Object Architecture
* The Windows operating system uses Audio Processing Object Architecture
* The Linux operating system might use PulseAudio
* The Linux operating system might use PulseAudio
|| foo
|| The operating system must translate the [https://en.wikipedia.org/wiki/Sampling_(signal_processing) bit rate] into sound. A common bit rate is 48,000 samples per second. Blue-ray has an audio sample rate of 192,000 samples per second. Without the resources to translate sound (at the target bitrate) we won't hear sound at the quality intended.
|-  
|-  
|}
|}

Latest revision as of 20:56, 18 March 2020

Resource Management[1]

A system resource is any usable part of a computer that can be controlled and assigned by the operating system so all of the hardware and software on the computer can work together as designed. System resources can be used by users, like you, when you open programs and apps, as well as by services which are usually started automatically your operating system. Note: A system resource is sometimes called hardware resource, computer resource, or just resource.[2]

What would the consequences be if we limited...[edit]

Resource Description Consequence of limiting...
Primary memory Please read this article about Primary memory. If an operating system does not have enough primary memory it will employ virtual memory in an attempt to provide adequate primary memory for each process. If this doesn't work, the operating system will not be able to process instructions and processes will not be able to execute.
Persistent storage Please read this article about Persistent storage As persistent storage is commonly used a swap area fro primary memory AND used to save data when a process has completed, inadequate secondary memory would moer quickly lead to a system failure.
CPU When the OS runs a piece of software it has to find the program files on the storage drive, load them into main memory, and instruct the CPU to start executing the program from the beginning.


In each case, the OS performs the same sequence of steps:

  1. the program code is found on the storage drive
  2. a section of RAM is reserved for the program and space is allocated for the program's data
  3. the program code is copied from storage into the reserved space in the memory
  4. the CPU program counter is set to the memory location of the first instruction in the program, and execution begins

[3]

Please click this link for a good article describing how to compare CPU's

A CPU executes instructions. If it cannot process instructions quickly enough, there would be a experience of latency, lag, or failure. This would result in cascading failure, as one process may not be able to execute instructions, which may impact a different process.
Network Bandwidth, which is the amount of data that can be transmitted in a fixed amount of time, is expressed in multiples of bits per second in digital devices. In analog devices, it is expressed in hertz. The operating system allocates bandwidth to each program, input or output method. The most common consequence of limited bandwidth is latency (or lag). The problem with networks is we never really have a guarantee of throughput. If a process is depending on a certain amount of data in a certain amount of time, buffering strategies are employed. Buffering is Preloading data into a reserved area of memory (the buffer). In streaming audio or video from the Internet, buffering refers to downloading a certain amount of data before starting to play the music or movie. Having an advance supply of audio samples or video frames in RAM at all times prevents disruption if there are momentary delays in transmission while the material is being played[4]
Display server A display server or window server is a program whose primary task is to coordinate the input and output of its clients to and from the rest of the operating system, the hardware, and each other[5]. The IB might call this screen resolution.
  • The OS X operating system uses Quartz Compositor as a display server and of a window manager in the windowing system.
  • The Windows operating system uses the Desktop Window Manager to render the graphical user interface
  • The Linux operating system might use X11, wayland, mir or other display server and windows manager.
If there is inadequate resources to process video, we would see choppy, distorted or corrupted graphics. Video cards are often used to render complex graphics and off-load the job of rendering graphics from the CPU. A CPU can only process a limited number of instructions per second. A dedicated video card only processes video rendering processes and can thus process more instructions per clock cycle.
Sound server A sound server is software that manages the use of and access to audio devices (usually a sound card). It commonly runs as a background process.[6]


  • The OS X operating system uses CoreAudio process to manage sound
  • The Windows operating system uses Audio Processing Object Architecture
  • The Linux operating system might use PulseAudio
The operating system must translate the bit rate into sound. A common bit rate is 48,000 samples per second. Blue-ray has an audio sample rate of 192,000 samples per second. Without the resources to translate sound (at the target bitrate) we won't hear sound at the quality intended.

Standards[edit]

  • Identify the limitations of a range of resources in a specified computer system.
  • Describe the possible problems resulting from the limitations in the resources in a computer system.

References[edit]