Notes, summaries, assignments, exams, and problems for Computers

Sort by
Subject
Level

High-Level Data Link Control (HDLC) Protocol Fundamentals

Classified in Computers

Written on in English with a size of 4.53 KB

High-Level Data Link Control (HDLC) Protocol

HDLC is a crucial data link control protocol, specified by ISO 3009 and ISO 4335. It serves as the foundation for many other data link control protocols.

HDLC Station Types

  • Primary Station: Controls the operation of the link. Frames issued by the primary are called commands. The primary maintains a separate logical link with each secondary station on the line.
  • Secondary Station: Operates under the control of the primary station. Frames issued by a secondary are called responses.
  • Combined Station: Combines the features of both primary and secondary stations. A combined station may issue both commands and responses.

HDLC Link Configurations

  • Unbalanced Configuration: Involves one primary station and multiple
... Continue reading "High-Level Data Link Control (HDLC) Protocol Fundamentals" »

Inheritance and Method Overriding in Java: A Comprehensive Guide

Classified in Computers

Written on in English with a size of 2.3 KB

Inheritance in Java

Inheritance in Java is a mechanism where one object acquires all the properties and behaviors of another object. Inheritance represents the IS-A relationship, also known as a parent-child relationship.

Using inheritance, you can create a general class that defines common traits for a set of related items. This class can then be inherited by other classes, each adding its unique elements.

The keyword extends defines a new class from an existing class. The existing class is called the parent/base/superclass, and the new class is called the child/derived/subclass.

Here's a breakdown:

  • Child classes inherit all members of their parent class.
  • Child classes cannot access the private members of the parent class directly.
  • To access private
... Continue reading "Inheritance and Method Overriding in Java: A Comprehensive Guide" »

Understanding Maps and Double Linked Lists in Java

Classified in Computers

Written on in English with a size of 8.4 KB

Map & Diccionarios

Import Statements

import java.security.InvalidParameterException;
import java.util.*;

RedCarreteras Class

public class RedCarreteras { 
    private Map<String, Map<String, Integer>> red;

    //CONSTRUCTORES
    public RedCarreteras() {
        red = new HashMap<>();// Nuevo dicc a 0
    }

    //METODOS
    private void validarTramo(String una, String otra, int distancia) {
        if (una == null || otra == null || una.equals(otra) || distancia < 1)
            throw new InvalidParameterException();
    }

    public Set<String> ciudades() {
        return red.keySet();
    }

    public int nuevoTramo(String una, String otra, int distancia) {
        validarTramo(una, otra, distancia);
... Continue reading "Understanding Maps and Double Linked Lists in Java" »

Essential Tech Terms: A Comprehensive Glossary

Classified in Computers

Written on in English with a size of 4.83 KB

RAM (Random Access Memory)

Random Access Memory is one of two basic types of memory. Portions of programs are stored in RAM when the program is launched so that the program will run faster. Though a PC has a fixed amount of RAM, only portions of it will be accessed by the computer at any given time. Also called memory.

Scrolling

Scrolling allows lines displayed on the screen to be moved up or down by one line as a new line is added and an existing one is removed.

Shooter

A shooter is a game whose main focus is combat involving guns or other projectile weapons such as missiles.

Shopping Cart

A shopping cart is software that keeps track of what you buy on a site.

Software Engineer

A software engineer is a person that writes computer programs.

Speech Recognition

Speech

... Continue reading "Essential Tech Terms: A Comprehensive Glossary" »

CPU Scheduling: Understanding Processes and Threads

Posted by miko_rodri and classified in Computers

Written on in English with a size of 5.07 KB

1. Processes

A process is a program in execution. It is a unit of work within the system. A program is a passive entity, while a process is an active one. A process needs resources to accomplish its task (CPU, memory, I/O, files). Process termination requires the reclamation of any reusable resources. A single-threaded process has one program counter, specifying the location of the next instruction to execute. The process executes instructions sequentially, one at a time, until completion. A multithreaded process has one program counter per thread. Concurrency is achieved by multiplexing the CPUs among the processes or threads.

2. Process States

As a process executes, it changes its state:

  • New: The process is being created.
  • Running: Instructions
... Continue reading "CPU Scheduling: Understanding Processes and Threads" »

Malicious Software: Types, Threats, and Advanced Viruses

Classified in Computers

Written on in English with a size of 3.31 KB

Logic Bombs and Resource Exhaustion Attacks

Logic Bombs

A logic bomb is a program that performs an action violating the site security policy when a specific external event occurs. These are typically associated with insider threats.

Example: A program that deletes a company’s payroll records when one particular record is deleted.

  • The "particular record" is usually that of the person who created the logic bomb.
  • The idea is that if (or when) the creator is fired and their payroll record is deleted, the company loses all those records.

Rabbits and Bacteria (Resource Exhaustion)

Rabbits or Bacteria refer to programs designed to absorb all of a specific class of system resources, leading to denial of service or system instability.

Example: For a UNIX... Continue reading "Malicious Software: Types, Threats, and Advanced Viruses" »

Web Development Fundamentals

Classified in Computers

Written on in English with a size of 117.12 KB

Pseudo Classes

Pseudo classes are selectors that can be used to style elements based on their state or position in the document. For example, the :hover pseudo class can be used to style an element when the user hovers over it with the mouse.

:nth-of-type(an+b || even || a || an)

The :nth-of-type pseudo class is used to select elements based on their position in a group of siblings. It takes an argument that specifies which elements to select. The argument can be one of the following:

  • an+b: Selects every nth element, starting with the bth element. For example, 2n would select every other element, and 2n+1 would select every odd element.
  • even: Selects every even-numbered element.
  • odd: Selects every odd-numbered element.
  • a: Selects every element.

For... Continue reading "Web Development Fundamentals" »

Public vs. Private Blockchains: Understanding the Key Differences

Classified in Computers

Written on in English with a size of 2.03 KB

1. What is a Public Blockchain?

Public blockchains are open networks that allow anyone to participate. This permissionless nature means anyone can join the network and read, write, or participate in the blockchain.

Public blockchains are decentralized, meaning no single entity controls the network. Data on a public blockchain is secure because it is virtually impossible to modify or alter data once validated on the blockchain.

Features of Public Blockchains:

  • High Security: Secured by mining and the 51% rule.
  • Open Environment: Open for anyone to join.
  • Anonymous Nature: Participants can remain anonymous, enhancing privacy.
  • No Regulations: No strict regulations on platform usage.
  • Full Transparency: The ledger is publicly viewable, ensuring transparency.
... Continue reading "Public vs. Private Blockchains: Understanding the Key Differences" »

Software Engineering Core Concepts: SDLC, Architecture, VCS

Classified in Computers

Written on in English with a size of 5.66 KB

Software Engineering Fundamentals and Principles

Desired Software Attributes

  • Maintainability
  • Dependability
  • Efficiency
  • Usability

Major Challenges in Large Programming

  • Complexity
  • Change

The 5 C's (Collaboration Framework)

Key elements often cited in successful team environments:

  • Collaboration
  • Communication
  • Coordination
  • [Note: The original source implies additional C's beyond the listed three.]

Core Activities of Software Engineering (SE)

  • Defining
  • Managing
  • Describing
  • Designing
  • Implementing
  • Testing
  • Deploying
  • Maintaining

The 4 P's of Software Engineering

  • People
  • Process
  • Project
  • Product

Software Development Lifecycle Phases (SDLC)

  1. Requirements Planning
  2. High-Level Design (Architecture Design)
  3. Low-Level Design
  4. Development (Implementation)
    • Note: Unit testing is typically performed during
... Continue reading "Software Engineering Core Concepts: SDLC, Architecture, VCS" »

Introduction to PL/SQL: Features, Differences, and Advantages

Classified in Computers

Written on in English with a size of 3.98 KB

PL/SQL

PL/SQL is a procedural language designed specifically to embrace SQL statements within its syntax. PL/SQL program units are compiled by the Oracle Database server and stored inside the database. And at run-time, both PL/SQL and SQL run within the same server process, bringing optimal efficiency. PL/SQL includes procedural language elements like conditions and loops. It allows declaration of constants and variables, procedures and functions, types and variable of those types and triggers. It can support Array and handle exceptions (runtime errors).

Differences between SQL and PL/SQL

  • SQL is a single query that is used to perform DML and DDL operations.
  • PL/SQL is a block of codes that used to write the entire program blocks/ procedure/ function,
... Continue reading "Introduction to PL/SQL: Features, Differences, and Advantages" »