Notes, abstracts, papers, exams and problems of Computers

Sort by
Subject
Level

Operating Systems: Functions, Components, and Network Basics

Classified in Computers

Written at on English with a size of 3.51 KB.

Functions of Operating Systems

Processor Management

The Operating System distributes the processor between different programs.

Random Access Memory Management

The Operating System coordinates the memory space that each application has. When physical memory is insufficient, the Operating System can create a "virtual memory" on the hard disk.

Input/Output Management

The Operating System allows the unification of program access to material resources through controllers.

Execution of Application Administration

The Operating System is responsible for ensuring that applications run smoothly.

Authorization Management

Guarantees that resources are only used by programs and users with the corresponding authorizations.

File Management

The Operating System manages... Continue reading "Operating Systems: Functions, Components, and Network Basics" »

Flowcharts, Programming Languages, and the C Language

Classified in Computers

Written at on English with a size of 5.56 KB.

Understanding Flowcharts

The pictorial or graphical representation of the flow of a program is known as a flowchart. If algorithms or programs are displayed in the form of a picture, then it will be more noticeable and recognizable. We only need to know some specific shapes to represent each process or action. The fundamental shapes and descriptions used in flowcharts are as follows:

  • Rhombus: For decision-making and branching the flow of execution.
  • Rectangle: For processing and assigning variables.
  • Parallelogram: Accessing inputs and printing outputs.
  • Rectangle with Curved Edges: Start/Begin or Stop/End of the program execution.
  • Circle: Connectors to continue the flow of execution.
  • Arrow: Represents the direction of the flow of execution.

j9uY63M2wBnveRcyLNUIT34Tu4aWeSqdlhox9JkprjEzmiyBmtmP8KZOE9ItyPleqb820RulOWNBK3GMhvqLvE3HpnmwwrHzb7DE88UBI3YtVUPP5F33nd5VQA0aF_e2ICZ6AW7YV-ajFuT7HcyJt-c4Xh9Iektloljd0DiRGjXFpHgP_xKeDfpPLZEH2Q


Programming

... Continue reading "Flowcharts, Programming Languages, and the C Language" »

Multi-Threaded TCP Game Server Implementation

Classified in Computers

Written at on English with a size of 1.34 KB.

Clientes ligam-se a servidor por TCP para jogarem. Pode ter entre 20 a 30 jogadores, de preferência 30, mas se jogador esperar mais de 1 minuto a partida começa com pelo menos 20. O jogador envia o nome ao servidor e fica à espera que o jogo comece e nessa altura é informado dos nomes dos outros.
1. Apresentar uma classe que implementa a interface em que os métodos têm que ser invocados em multi-thread.
Interface Jogo { List inscrever(String nome);}
public class Cliente {
public Cliente(Socket s) throws Exception {
PrintWriter pw = new PrintWriter(s.getOutputStream(), true);
BufferedReader bf = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedReader terminal = new BufferedReader(new InputStreamReader(System.in))
... Continue reading "Multi-Threaded TCP Game Server Implementation" »

How Cell Phones Work: From Analog to Digital

Classified in Computers

Written at on English with a size of 2.15 KB.

The Evolution of Mobile Phones

Mobile phones, also known as cell phones, emerged in the 1980s as bulky, analog devices relying on unencoded radio wave transmissions. These early models quickly evolved, shrinking in size and transitioning to digital technology, ushering in the second generation (2G) era. This shift enabled faster transmission speeds and paved the way for features like images, messaging, and sound.

Advancements in Technology: 3G and 4G

The early 2000s witnessed remarkable technological leaps with the introduction of 3G in 2001, followed by 3G+ and 4G. These advancements significantly boosted speed and capacity, transforming mobile phones into versatile multimedia devices capable of much more than just making calls.

How Cell Phones

... Continue reading "How Cell Phones Work: From Analog to Digital" »

Understanding Operating Systems: Traps, Interrupts, System Calls, and Threads

Classified in Computers

Written at on English with a size of 3.94 KB.

What is the Key Difference Between a Trap and an Interrupt?

A trap is caused by the program and is synchronous with it. If the program is run again and again, the trap will always occur at exactly the same position in the instruction stream. An interrupt is caused by an external event and its timing is not reproducible.

Why is the Process Table Needed in a Timesharing System?

The process table is needed to store the state of a process that is currently suspended, either ready or blocked. It is not needed in a single-process system because the single process is never suspended.

Is the Process Table Needed in Personal Computer Systems With Only One Process?

No, it is not needed in a single-process system because the single process is never suspended.... Continue reading "Understanding Operating Systems: Traps, Interrupts, System Calls, and Threads" »

Thread Synchronization, Priority Inversion, and CPU Efficiency

Classified in Computers

Written at on English with a size of 2.18 KB.

Can the Priority Inversion Problem Happen with User-Level Threads?

The priority inversion problem occurs when a low-priority process is in its critical region and suddenly a high-priority process becomes ready and is scheduled. With user-level threads, it cannot happen that a low-priority thread is suddenly preempted to allow a high-priority thread to run. There is no preemption. With kernel-level threads, this problem can arise.

Does Round-Robin Scheduling Resolve Priority Inversion?

Round-robin scheduling can resolve the issue. Sooner or later, the low-priority process will run and eventually leave its critical region. With priority scheduling, the low-priority process never gets to run at all; with round-robin, it gets a normal time slice periodically,... Continue reading "Thread Synchronization, Priority Inversion, and CPU Efficiency" »

MPEG Audio Compression: Understanding the Fundamentals

Classified in Computers

Written at on English with a size of 2.71 KB.

Introduction

The principle of MPEG audio compression is quantization. However, the values being quantized are not the audio samples themselves, but rather numbers (called signals) taken from the frequency domain of the sound.

Encoding Process

  1. Bit Allocation: The encoder knows the compression ratio (or bit rate), allowing it to determine how many bits to allocate to the quantized signals. The adaptive bit allocation algorithm uses the bitrate and frequency spectrum of recent audio samples to minimize audible quantization noise (the difference between the original and quantized signal).
  2. Discrete Fourier Transform: Psychoacoustic models, which determine the quantization coarseness, rely on sound frequency. Since the input is audio samples, the first
... Continue reading "MPEG Audio Compression: Understanding the Fundamentals" »

The Importance of File Management: Types, Systems, and Media

Classified in Computers

Written at on English with a size of 5.44 KB.

THE FILE: A file is a set of ordered documents that are related by some circumstance or event. It is essential for a company to have a file that is to sort and classify documentation in a particular way.

Why: It allows to keep, store and safeguard information, It can be easily and quickly found, To comply with the law, It can help in the decision-making process

Types of files:

1) Active: documents that are currently being used and queried

2) Semi-active: documents no longer effective but kept for legal reasons

3) Inactive: documents not valid but with a historical or documentary value

The File system: is the criterion used for ordering information.

  • Alphabetical: Information classified in the order of the alphabet *

  • Numerical: information in which each

... Continue reading "The Importance of File Management: Types, Systems, and Media" »

Software Development Principles and Design Patterns

Classified in Computers

Written at on English with a size of 697.56 KB.

Key Concepts in Software Development

Complexity: Involves abstraction and decomposition into smaller, manageable problems.

Changeability: Requires effective management and a well-defined Software Development Life Cycle (SDLC).

Testing Before Implementation: Identifies defects early, saving time and resources.

Microsoft SDL: Emphasizes security considerations throughout all phases of the development cycle, including security and privacy risk assessment.

Understanding UML Diagrams

Sequence Diagram: Provides a time-based view of object interactions through function calls, illustrating the interaction among objects.

State Chart: Depicts the sequence of states an object goes through in response to external events, focusing on the state changes of a single

... Continue reading "Software Development Principles and Design Patterns" »

I is correct ii is correct

Classified in Computers

Written at on English with a size of 1.03 KB.

People often relate to and interact with other people through social networks, but I don't think it's the best way to relate.
Firstly, social networks allow us to communicate at all times regardless of the separation distance. In addition it facilitates socialization to shy people.

Secondly, social networks in their correct use allow us to be informed at the moment of everything that happens in our environment. Further by means of social networks we can meet many new people even find love.

It is clear that social networks are very present in today's society and give us great advantages.
However, in some cases they can take us away from the closest people (family), so we never have to stop communicating orally with the closest people.