Software Technical Interview

Pataasin ang iyong marka sa homework at exams ngayon gamit ang Quizwiz!

API

- Application Programming Interface - collection of communication protocols and subroutines used by various programs to communicate

BIOS

- Basic Input/Output System - older standard, 16-bit processor, old text UI

microprocessor layout

- CPU -- ALU (Arithmetic Logic Unit), CU (Control Unit), registers (hold data temporarily during processing) - Cache -- L1, L2, L3 (storage in the CPU to store frequently accessed data or instructions) (L1 to L3, fastest to slowest) - Bus interface -- connects CPU to other components like memory and I/O devices - Memory controller -- data flow to and from system's RAM - I/O interface -- manages communication with peripheral devices, can include interfaces USB, SATA, PCIe, - clock and timing circuitry - power management

ACID for database

A - Atomicity C - Consistency I - Isolation D - Durability

sudo command

Super Users DO - run with elevated privileges, allowing a user with the proper permissions to run a command as another user

inheritance

ability of a class to derive features and traits from another class

long term scheduler

aka job scheduler; determines which programs are accepted for processing into the system. It chooses processes from the ready queue and loads them into memory so they can be executed

union

allows for storage of many data types in the same memory space - can have numerous values, but only one can have a value at any given time

process

any program currently being executed

BIOS and UEFI

both firmware interfaces that initialize hardware during boot process and provide runtime services for O

global variable

can be accessed from any point of the program

encapsulation

class's variables or data are hidden from other classes and can only be accessed through member functions of the class in which they are declared

primary memory

computer memory directly accessible by CPU, made of DRAM and keeps track of data and instructions being processed - temporary

schedulers

computer programs that manage process scheduling in a variety of ways, responsibility is to choose which jobs to submit into the system and which processes to run - responsible to run processes from the CPU

secondary memory

contents first need to be transferred to primary memory before the processor can access it - permanent

relational algebra

define operators that transform one or more input relations into output

clock distribution network

distributes the clock signals throughout a chip to synchronize operations in sequential circuits - focus on minimizing skew (difference in arrival time of the clock signal) and ensuring low latency and power consumption

binary search

divide the search interval in half

deque

double-ended queue - can add and remove elements from both ends

atomicity

either the complete transaction occurs at once or it does not occur at all

polymorphism

existence of numerous versions of anything

variable scope

extent of the program code within which the variable can be accessed or declared or worked with

abstraction

gives only the most important elements while keeping the rest hidden

deadlock

group of processes is halted because each process is holding a resource and waiting for another process to obtain it

wild pointer

has not been initialized to anything

tuple

immutable, consume less memory

semaphore

integer, uses signaling mechanism (signaling mechanism)

consistency

integrity constraints must be fulfilled before and after the transaction to ensure that the database is consistent

queue

linear data structure - can remove elements from the front of the queue or add to the end of the queue

function overloading

modifying the signature, i.e., the number of parameters, the data type of the parameters, and the return type, allows for multiple definitions of the function

list

mutable, consume more memory

mutex

object, locking mechanic (lock or unlock)

durability

once a transaction has completed execution, the database updates and modifications are saved and written to memory and that they survive even if the system fails

sequential logic

output depends on current inputs and the previous state à memory (flip-flops or latches), driven by clock signal ... flip flops, counters, registers, FSM, memory units

combinational logic

output is determined only by the current inputs à no memory, instantaneous response, deterministic behavior

function overriding

overriding a base class function in a derived class with the same signature

dangling pointer

pointer pointing to a memory location that has been deleted

null pointer

pointer that points to nothing

void pointer

points to some data location in storage, which doesn't have any specific type

page fault in OS

program attempts to access data or code in its address space

procedural programming

program is divided down into little modules called functions - invokes procedures

OOP

program is divided into separate components called objects

thread

segment of a process, which means that a process can have multiple threads that are all contained within it - three states: running, ready and blocked

isolation

several transactions can take place at the same time without causing database state inconsistencies

virtual memory

storage allocation system that allows secondary memory to be addressed as if it were the main memory

medium term scheduler

swapping processes in the main memory. It clears the memory occupied by the processes

struct

user-defined data type that allows to combine data items of different types

declaration

variable or function can be declared an unlimited number of times, memory is not allocated during declaration

definition

variable or function can only be defined once, memory is allocated during definition

local variable

variables defined within a function or block

semaphores

variables used to coordinate the activities of multiple processes in a computer system

RAM

- Random Access Memory - volatile memory, whipped during power cycle

ROM

- Read-Only Memory - non-volatile, retains content even when power is turned off

UEFI

- Unified Extensible Firmware Interface - modern replacement for BIOS, developed in 2000s, uses 32-bit or 64-bit processor, supports GUI with mouse so easier to navigate

VLSI

- Very Large Scale Integration - process of creating ICs by combining thousands of transistors into a single chip

process synchronization

- coordinate of execution of multiple processes to ensure they access shared resources in a controlled and predictable manner - resolves race conditions and other synchronization issues in a concurrent

flip flop

- edge-sensitive device that changes its output state only on rising or falling edges of a clock signal - samples input data only during transition of the clock signal

major concepts of OOP

- inheritance - encapsulation - polymorphism - abstraction

latch

- level sensitive device that can change its output based on the input levels as long as the enable signal is active - retains its state until the input changes

types of schedulers

- long term scheduler - medium term scheduler - short term scheduler

full architecture of an out-of-order pipeline in simple terms

- out-of-order pipeline -- CPU architecture that allows instructions to be executed in an order different from how they appear in the program · Instruction Fetch (IF) Stage · Instruction Decode (ID) Stage · Instruction Issue Stage · Execution (EX) Stage · Write Back (WB) Stage · Retirement (Commit) Stage

how to regulate natural frequency to reduce risks?

- to avoid risks associated with resonant vibrations - risk assessment -- evaluate potential impact - finite element analysis -- simulations to predict how changes in design or materials will affect natural frequency - material selection -- select materials with better damping properties or adjust the stiffness of components to achieve the desired natural frequency - regular monitoring -- continuously assess and indicate potential issues

functions that an operating system performs

- user interface - maintains system functionality - security - error detection - memory management - device management - file management

short term scheduler

CPU scheduler. Its primary goal is to improve system performance in accordance with the set of criteria established


Kaugnay na mga set ng pag-aaral

Business Foundations Chapters 1-5

View Set

Ch. 7- The Vitamins: A Functional Approach

View Set

Corporate Finance Chapter 3: Working with Financial Statements

View Set

Personal Fitness & Wellness (Exam 1)

View Set

The Greatest Muhammad Ali by Walter Dean Myers

View Set