ArticleslgStudy

computer science

System resource

System resource is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand System resource rather than just read about it. In short: A computer system resource is any hardware or software aspect of limited availability that is accessible to a computer system. Like any resource, computer system resources can be exhausted, and issues arise due to scarcity.

Key takeaways

  • System resource belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect System resource to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of System resource from memory before moving on to harder problems.

Reference excerpt

A computer system resource is any hardware or software aspect of limited availability that is accessible to a computer system. Like any resource, computer system resources can be exhausted, and issues arise due to scarcity. Resource management, a key aspect of designing hardware and software, includes preventing resource leaks (not releasing a resource done with it) and handling resource contention (when multiple processes want to access the same resource). Computing resources are used in cloud computing to provide services through networks.

Fragmentation A linearly addressable resource, such as memory and storage, can be used for an allocation that is either contiguous or non-contiguous. For example, dynamic memory is generally allocated as a contiguous block that consists of a portion of memory from a starting address and running for a certain length. On the other hand, storage space is typically allocated by a file system as non-contiguous blocks throughout the storage device even though consumers of a file can treat it as a linear sequence; logically contiguous. The resource has an overall capacity as well as the capacity to support an allocation of a certain size. For example, RAM might have enough free space to support allocating 1024 1MB blocks although not enough contiguous free space to support allocating a single 1GB block even though the sum of the smaller blocks equals the size of the large block. Fragmentation describes the amount to which linear resources are stored non-contiguously, and a highly fragmented resource may degrade performance.

Compression One can also distinguish compressible from incompressible resources. Compressible resources, such as CPU and network bandwidth, can be throttled benignly. The user will be slowed proportionally to the throttling, but will otherwise proceed normally. Other resources, such as memory, cannot be throttled without either causing failure (inability to allocate memory typically causes failure) or performance degradation, such as due to thrashing (paging slows processing throughput). The distinction is not always clear. For example, a paging system can allow main memory (primary storage) to be compressed (by paging to secondary storage), and some systems allow discardable memory for caches, which is compressible without disastrous performance impact. Electrical power may be compressible. Without sufficient power an electrical device cannot run, and will stop or crash. But, some devices, such as mobile phones, support degraded operation at reduced power. Some devices allow for suspending operations (without loss of data) until power is restored.

Examples The types of resources and issues that arise due to their scarcity is vast. For example, memory is a resource since a computer has a fixed amount. For many applications, the amount is so large compared to its needs that the resource is essentially unlimited. But, if many application with modest requirements are running concurrently, or if an application does require large amounts of memory, then runtime issues occur as the amount of free memory approaches zero. Applications are no longer able to allocate memory and will probably fail. Another well-known resource is the processor. It differs from memory in that it is not reserved. Nonetheless, as the processor becomes more loaded with work, the time waiting for the processor increases, and processing throughput degrades. This often leads to inferior user experience or in a time-critical application, loss of critical system functionality. Resources can be layered and intertwined. For example, a file is a resource since each file is unique. A file consumes storage space which has a fixed size. When a file is opened, generally memory is allocated for the purpose of accessing the file. This file object is both a unique resource and consumes memory (a resource). Some resources are accessed via a handle such as a lookup table key or pointer. Although the handle may consume memory, the handle itself is not considered a resource since it can be duplicated at little cost. On the boot process of the modern operating systems, the ACPI protocol or the Devicetree protocol is often used to deliver hardware resources information. Notable resources include:

Cache space, including CPU cache and MMU cache (translation lookaside buffer) CPU, both time on a single CPU and use of multiple CPUs – see multitasking Direct memory access (DMA) channels Electrical power Input/output throughput Interrupt request lines Locks Memory, including physical RAM and virtual memory – see memory management Memory-mapped I/O Network throughput Objects, such as memory managed in native code, from Java; or objects in the Document Object Model (DOM), from JavaScript Peripherals Port-mapped I/O Randomness Storage, including overall space as well as contiguous space

See also Computational resource – Aspect of computational complexity theory Linear scheduling method – Project scheduling method for repetitive activities Sequence step algorithm – Computer Algorithm System monitor – Component that monitors resources in a computer system Resource (disambiguation)

References

Worked examples

Example 1 — a first encounter with System resource

Start with the simplest possible case. Write down what System resource claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to System resource before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about System resource ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of System resource

In research
System resource appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses System resource in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
System resource is common in secondary-school and first-year university syllabi. It links to neighbouring topics Computing terminology, Resources, so understanding it makes those chapters shorter.
In everyday life
Look for System resource outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study System resource in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what System resource means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain System resource out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is System resource in simple terms?

A computer system resource is any hardware or software aspect of limited availability that is accessible to a computer system. Like any resource, computer system resources can be exhausted, and issues arise due to scarcity.

Why does System resource matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study System resource?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on System resource.

Tags

  • Computing terminology
  • Resources

Keep exploring