Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


digital content processing, Schemi e mappe concettuali di Sistemi Digitali

Argomenti come il machine learning, l'hardware e il software, la rete, i dispositivi periferici, la rappresentazione dell'informazione attraverso il codice binario e le operazioni aritmetiche e logiche. Vengono inoltre spiegati concetti come la memoria, lo storage, il sistema operativo e l'architettura del computer. Viene fornita una panoramica sulle classi di numeri e sulle operazioni che possono essere eseguite dai dispositivi. utile per comprendere i fondamenti dell'informatica e della programmazione.

Tipologia: Schemi e mappe concettuali

2021/2022

In vendita dal 13/01/2023

marinella2211
marinella2211 🇮🇹

10 documenti

1 / 25

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
DIGITAL CONTENT PROCESSING
Machine learning how a system is able to learn based on
strategies
Computer a device that accepts input and output (ex. is
the projector, the simplest one, which does all
the simple tasks for the human needs), it’s the
main tasks is computing -> processing data
Hardware includes the electronic and mechanical devices
that process the data -> it's useless if it’s not
used with a logical strategy: the software, that
is necessary to exploit the hardware
Software a computer program that tells the computer
how to perform particular tasks
Network 2 or more device that are connected for sharing
informations
Peripheral devices used to expand the computer’s input, output
and storage capabilities.
But it’s optional because the computer can to
work and to be operational.
Not all the computer has inside the devices
screen, keyboard, mouse -> for interact ->
through a network -> through the use of an
ethernet cable behind -> they use it for interact
whit an external computer with keyboard,
screen, mouse and others
Input whatever is put into a computer system
Output processing results produces by a computer
(Raw) Data refers to the symbols that represent fact and the
raw data transform its in informations
Information The result of the computer storing data (as bits
and bytes). the words, numbers, sounds and
graphics
Processing manipulation of the data in many ways
Memory area of the computer that temporally takes data
waiting to -> be processed, stored or output
Storage area of the compute that takes -> data on a
permanent basis -> when it’s not immediately
needed for processing
System Software the software that allows the system to work ->
program routines which help the users in the
execution of programs (ex. assemblers,
compilers)
Operating system collection of routines -> for controlling and
coordinating -> all the activities in a computer
system (ex. Windows)
BINARY CODE: it’s a language which any info stored or retrieved by a device must be
represented.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Anteprima parziale del testo

Scarica digital content processing e più Schemi e mappe concettuali in PDF di Sistemi Digitali solo su Docsity!

DIGITAL CONTENT PROCESSING

Machine learning how a system is able to learn based on strategies Computer a device that accepts input and output (ex. is the projector, the simplest one, which does all the simple tasks for the human needs), it’s the main tasks is computing -> processing data Hardware includes the electronic and mechanical devices that process the data -> it's useless if it’s not used with a logical strategy: the software, that is necessary to exploit the hardware Software a computer program that tells the computer how to perform particular tasks Network 2 or more device that are connected for sharing informations Peripheral devices used to expand the computer’s input, output and storage capabilities. But it’s optional because the computer can to work and to be operational. Not all the computer has inside the devices screen, keyboard, mouse -> for interact -> through a network -> through the use of an ethernet cable behind -> they use it for interact whit an external computer with keyboard, screen, mouse and others Input whatever is put into a computer system Output processing results produces by a computer (Raw) Data refers to the symbols that represent fact and the raw data transform its in informations Information The result of the computer storing data (as bits and bytes). the words, numbers, sounds and graphics Processing manipulation of the data in many ways Memory area of the computer that temporally takes data waiting to -> be processed, stored or output Storage area of the compute that takes -> data on a permanent basis -> when it’s not immediately needed for processing System Software the software that allows the system to work -> program routines which help the users in the execution of programs (ex. assemblers, compilers) Operating system collection of routines -> for controlling and coordinating -> all the activities in a computer system (ex. Windows) BINARY CODE: it’s a language which any info stored or retrieved by a device must be represented.

It’s a coding system using the binary digits 0 and 1 -> for represent a letter, digit or other character in a computer or other device (ex. phone, tablets). BIT (Binary Digit): is the info unit by which a device manages all the type of info. A single BIT can have only 2 states: 0 and 1. (ex. 1= A & 0=B) Examples of “information”: A text document (e.g., DOCX file), a drawing (e.g., DXF, DWG files), a spreadsheet (e.g., XLSX file), an image (e.g., BMP, TIFF files), a video (e.g., AVI, MP4 files), an audio (e.g., MP3, WAV, files), … How many BITS are required to represent something from the real world? For example, when you adopt the Word Program, you manage (more or less) the following “elements” (in total about 220 character ): 52 uppercase and lowercase letters of the alphabet; 10 digits (0, 1, 2,..., 9); Punctuation marks (,. ; :! “? ‘ ^ \ ...); Mathematical signs (+, -, x, ±, {, [, >,...); National characters (à, è, ì, ò, ù, ç, ñ, ö,...); Other graphic symbols (©, #, §, @, €,...). Ex. with a BIT, I can represent TWO “elements”, for example: 0 = A; 1 = !. I need to represent the other 218 characters, for this reason, more BITS are needed, and we can do this through combinations to represent all the possibilities. In general, using the state (ex. 0 or 1) of each BIT combined with the state of the other BITS, a wide range of elements can be represented. Mapping method: this example says -> the dimension of our representation is the same as the possibility of representations. In particular, with N BITS, 2N^ different “elements” can be represented. In the previous example: 27 = 128 (only 128 elements can be represented, which are less for the required 220) 28 = 256 that are the elements that can be represented, which are sufficient for the required 220 → 8 BITS means 1 Byte : byte is the unique measure that we use for representing things. THE LANGUAGE OF ANY DEVICE with SET OF BINARY DIGITS

A. How to convert from binary to decimal number (from right to left) 25 24 23 22 21 20 32 16 8 4 2 1 Ex. 1 0 1 1 (4 BITS) 25 24 23 22 21 20 32 16 8 4 2 1 1 0 1 1 8 / +2 +1 = 11 B. How to convert from decimal to binary (from left to right) Ex. 27 ⇨ 16 respects rules, because 32 is too big for 27 25 24 23 22 21 20 32 16 8 4 2 1 27-16 = 11 11-8=3 / (3-4 = -1)

Ex. 33 is not possible because it’s higher than 32 (because you can’t start from 0). Ex. 15 ⇨ from 8 25 24 23 22 21 20 32 16 8 4 2 1 15-8=7 7-4=3 3-2=1 1-1= 1 1 1 1 !! RULE !! 16 is always: 16 8 4 2 1

➤If the needed number finish with an odd number , the binary code finish with a 1 (15) ➤If the needed number finish with a even number , the binary code finish with a 0 (16) ASCII: American standard code for information interchange -> representing in Europe for representing the elements but it isn’t international Inside each device the “information” is represented by a fixed set of bytes : 16 bits (2 bytes); 32 bits (4 bytes); 64 bits (8 bytes). Now, it is possible to understand that the number of bytes identifies the “power” of a device, since the greater the number of bytes, the greater is the ability of a device to : compute complex operations; manage different amount of information; understand complex instructions. Inside each device, a “number” (ex. the information) can be identified by three classes:

1. Unsigned Integers (ex. positive integers); 2. Signed Integers (ex. positive and negative integers); 3. Real (ex. positive and negative numbers with a comma). The specific class depends on different factors, including the type, complexity and features of an application / service

  1. RESERVED BITS: using by a computer for understanding if a number in negative without a symbol. When I put a 0, I mean that the number is positive. When I put a 1, I mean that the number is negative. The pro: easier and faster, because by putting a number on the left, I have a negative representation. The cons: I use a bit in the representation of number
  2. COMPLEMENTED NUMBER: the negative or positive number used to start the process. It’s a way for not losing one bit, bit requires computational costs. 1 line is + because it starts with 0 an only the last one number is 1 2 line wrote the number that you have 3 line invert the number of the second line I’M NOT SURE OVERLOW ERROR: exceeds the dimension of the calculator, you can’t continue -> so the extractions must be longer than the architectural capacity.

x Not y = if 0, is 1; if 1, is 0 (the contrary). SHIFT OPERATIONS: reproduction of arithmetical operation. ARITHMETICAL OPERATION: -> SUM → for the fact that 2 is not a binary code, it’s interpreted as the number 9, so it has the report (carry of 1) 0+1 = 1 1+1 = 2 → come se fosse 10, quindi 0 sotto e riporto di 1 1+1+1 = sarebbe sempre 0 ma siccome c’è anche +1 = 1, ma sempre con il riporto di 1 nella 4a colonna. 1+0+0= -> DIFFERENCE sarebbe -1, quindi prestito di 1 (borrow of 1) 0-0= 0-1= -1 → mettiamo 1 con riporto di 1 1-1 = 0 1-1 = 0 SHIFT OPEARTIONS: multiplication or division It consists in “sliding” the bits (in left or right direction) by entering appropriate values in the places left free. In the decimal numerical system, the shit operation is used to multiplicate (left shift) or to divide (right shift) by the base 10 In the binary numerical system, the shift operation is used to multiplicate (left shift) or to divide (right shift) by the base 2.

We have the most significant BIT on the left and the least significant BIT at the maximum right position: 1.000.001 → the last 1 is not significant in changing the value of the number. The two bits placed on the extremity of a binary string are named: How is it to implement inside a devices (ex. sum)? ADDER: Is a chip that registers a dependency. A group of integrated circuits is implemented to perform the various operations. The quality and quantity of these circuits define the "power" of the processor. Where all the BITS are stored: the system inside the CPU processor have may temporary memory RECORDS: they are register used to store data CONTROLLA -> characteristics: they must have the same dimension in order to use them and to store info into them ➤ For example if I want to perform an operation of a sum: I take 20 elements, so 1 + 1. They must be both element with at least 32 BITS, so to perform this operation in the CPU I store both the elements into 2 different temporary containers, called records, both composed of 32 BITS; then I take both to perform an addiction and the result is put into another record (the 3rd). When the computer is turned off, all bits are stored inside different massive memory devices, such as: internal hard disk, external hard disk, USB stick, and so on. When an application (and its data) is running on the computer, a given quantity of bits is loaded into memory. Registers are always empty when the system is turned off and their contents are constantly replaced because they do not store too much information. VON NEUMANN MODEL Of course, all systems are based on this model, but they are more powerful, have different modules that facilitate computer operation, and so have many more improvements. So the most human-like machine that simulates the performance of the Von Neumann Model is the LITTLE COMPUTER 2-the simplest real-life example of this abstract structure. Properties: It has 8 general purpose registers, each of which is 16 bits wide; The arithmetic and logic units operate on 16 bit words. Addresses are 16 bits wide, so the machine has 2^16 words; The instruction set contains 16 basic instructions: the operates (ADD, AND, and NOT), data movement instructions (LD, LDI, LDR, ST, STI, STR, LEA), flow control instructions (BR, JSR, JMP, JSRR, JMPR, RET), and control instructions (RTI and TRAP). A. MEMORY

  1. PROCESSING UNIT: is the part of the processor that is responsible for the effective execution (e.g., sequential execution of instructions) of a program (and its data). It performs all operations: arithmetic/logic/shift operations. It’s composed by 2 sub-modules: -> ALU: performs each and every mathematical and logical operation required by the device -> TEMP: temporary memory -> in the middle of the RAM memory and registers -> fast memory used for internal operations of the ALU -> it is a “support” memory The processing unit contains the main basic instructions that enable the device to function correctly. In our context, LC-2, a group of basic instructions is memorized inside the unit.
  2. CONTROL UNIT: is the part of the processor that is responsible for supervising every task that the CPU is performing, so it controls the Processing Unit. Is a management unit -> controlling what the Processing Unit dose -> uses 2 registers: -> PC (program Counter): contains the address of the next instruction to be performed -> IR (instruction register): contains the instruction currently processed by the device ➤That is why those 2 registers are logically drowned into the CPU because they are used for calculation. The main goal of the control unit is to manage the entire processing activity: -> it reads each instruction from the memory -> the instruction’s address in into the PC module (exactly like MAR and MDR) -> it interprets each instruction -> generates the signals -> tell the other components what to do: an instruction can take many machine cycles to complete. C. INPUT/OUTPUT: it manages the different input and output of the system This part of the architecture points that any device needs other "different devices" to get "in" and "out" data from itself. Some devices give both input and output, such as: disk, network, ,… -> DRIVER: program that controls the access to a device -> I use it to connect my system with the other device and to use it in the right way Each device has its own interface, usually a group of registers such as MAR and memory MDR: LC-2 supports keyboard (input → gives information to the machine) and console (output → gives feedback from the machine): keyboard: data register (KBDR) and status register (KBSR) console: data register (CRTDR) and status register (CRTSR) CLOCK CIRCUIT: each device has it, generates a temporal reference for all the system elements (how many operations I’m able to perform each seconds): T = clock period f = clock frequency ( = 1/T ) The faster is the clock -> the faster is the computer I have a period that I have to use as a unit measure for saying which is the frequency of the CPU and the speed of computation

CYCLE-MACHINE -> is the time required to realize an elementary operation (sum, difference, ...): it is a multiple of the clock period INSTRUCTION-MACHINE -> is obtained from a sequence of elementary operations, otherwise I can’t manage complex operations The processing speed of a processor depends on clock frequency: Processor Intel (R) = the manufacturer Core(TM) i7 = the model -4710HQ = the sub-detailed 2.50/3.50GHz (1GHz = 10s) = the speed (2 values for being dynamic: the faster it must go through the operation you’re trying to perform ->the higher is the frequency it can be output; otherwise if the operation is not so complex ->it can reduce the speed of the computation so it reduce the power of consumption → energy saving). Number of Threads (Parallel Processing) = the ALU is the performer of the operations, but what if I have multiple ALUs? I can perform multiple operations at the same time to subdivide the work Cache 6 MB = dimension of the TEMP RAM 32GB = memory Operating System Windows 64 bit FIRMWARE: simple software but really effective. The projector has no operating system that is built in the device (electronic component), so it’s part of the hardware (extremely near) Firmer provides gives the component a set of interfaces and communication protocols with which to share a common language (ex. syntax and semantic) Firmware program is integrated with the electronic component and represents a “meeting point” between the physical components (ex. the hardware) and the logical components (ex. the software). ELETRONIC COMPONENT: each “intelligent integrated circuit” -> inside each kind of device (ex. processor, graphics card, …) BIOS (basic Input Output System): is a set of software routines (ex. the firmware) that provides the basic software “structure” with which the Operating System (OS) connects itself to the hardware of a device. -> this firmware drives and supervises the start-up (avvio) phase of the computer. is an example of the motherboard of a computer -> in which inside that it have some firmwares (BIOS). In the motherboard there is a BIOS installed inside -> that I can interact with those devices installed on it -> through the firmware -> which understands which kind of hardware is there Contained in a non-volatile memory chip. Its located on FLASH or EEPROM memories that can be rewritten with an appropriate system update procedure. Device is started BEFORE that the OS is loaded -> the BIOS will perform the following tasks: a) POST (Power On Self Test): manage the hardware by performing various test routines check devices during start-up -> to verify the correct function of the various components that compose the device, including: motherboard, processor, memory, and others. b) RUN A DEVICE MANAGEMENT PROGRAM, if no serious "errors" are found in the POST process c) RUN A STARTING VIDEO SCREEN (interaction) to permit the user to set and to manage some "marginal" bootstrap operations of the BIOS itself

One of the most important tasks is to provide an abstraction of the computer to the applicative level offers with the following 4 tasks:

  1. Management of the hardware components;
  2. Execution of the applications/programs/services;
  3. Interaction with the peripheral devices;
  4. Interaction with the users. It defines 2 main aspect of the device:
  5. The operating modality of the device: mode defines the goal and scope of the device -> that is why a specific device is used
  6. The way users will use/interact with the device Some examples of Operating Systems are: Microsoft Windows, GNU Linux, Apple OS X, Sun Solaris, HP-UX, IBM AIX, IBM Z-OS, Google Android, Apple iOS, FreeBSD, and many others 1 classification based on the PROCESSING FEATURES: SCHEDULER: process of managing applications, services … which is incorporated into the CPU policy, and because of the OS, I am capable of using it according to my needs BATCH: is an OS in which you give a task that is performed and then you can interact with other following tasks in the queue. The device runs the programs in a non-interactive way These kinds of operating systems are very rare if you open more programs the speed decreases so I just focus on one program to increase the speed INTERACTIVE TIME SHARING: the device runs several programs together and shares hardware resources (e.g., CPU time, memory, etc.) between them The user can interact with the programs during their execution to provide input and to receive output during all the processings. I take the timeline and I just decide to create some slots on it and then the process 1 is inside one slot, the process 2 is inside another slot, and then I go back to process 1 and I continue it…: it’s something so fast in its changes, that it’s not able to feel: it’s a simulated parallelism, and thanks to this process it seems that I have multiple tasks at the same time. Which is the process that should be executed in 1 slot and another process 1 slot in another REAL-TIME: execution of a program must occur in real time (or in a fixed time interval) without delay, latency, or performance degradation The system must respond as quickly as possible to a specific input: based on a given input, this type of system must be as capable as possible of producing the demanded output Windows is both time sharing and real time, that’s why almost any kind of operating system nowadays is working: we can have ibrid solutions that are not mutually exclusive EMBEDDED: in this case the OS, and frequently the devices as well, are integrated within dedicated hardware (e.g., the operating system of a car or airplane), so in general these are unmodifiable, resource-limited devices. [Embedded can also be either time-sharing or real-time]

HYPERVISOR: Operating systems enable hardware resources to be divided within different virtual machines: multiple spaces can be virtualized with part of the resources I have available to create separate environments -> in this way, different OSs (programs) and different modalities can run together Everything is connected through a physical device -> exactly as if it were a computer with multiple CPUs, but -> everything is software-driven = operated through software that gives the assignments (connections) for them to use within the created space. 2 classification based on the processing features MONO-TASK OPERATING SYSTEMS: kind of OS only a program at a time can be executed. Another program can be executed only-> when the previous one is completed → similar to the BATCH but -> instead of looking at it from the scheduler, we’re looking from the task itself: the application point of view. MULTI-TASK OPERATING SYSTEMS: kind of OS -> the execution of different programs is permitted → similar to TIMESHARING MULTI-THREADING OPERATING SYSTEMS: A thread is able to execute multiple parts of a task at a time -> because it is possible to divide a task into multiple subparts -> each of which can be executed independently MONO-USER OPERATING SYSTEMS: the OS can interact and execute programs of a single user at a time -> you can’t have multiple accounts MULTI-USER OPERATING SYSTEMS: the OS can interact and execute programs of more users at the same time -> you can choose which one to use CHARACTERISTICS AND STRUCTURE link between the hardware and the OS AN OS STRUCTURE: there are no shared functions between them, because each has a specific task: [Hardware is what we use to do things].

  1. Management of the Program and User Interface: the most abstract part of the operating system.
  2. Management of the Protection and Security (ex. Linux is based on security: it needs a password to create a user).
  3. Management of the Secondary Memory: files
  4. Management of the Peripheral Units: external devices
  5. Management of the File System: is showing the hierarchical (abstract) structure of everything that helps manage the operating system.
  6. Management of the Main Memory (primary memory): RAM memory
  7. Management of the Processes (Scheduler): the way for managing processes, so how the applications are managed → is the one directly connected to the hardware The 5, 6, 7 are important because contained inside the Kernel KERNEL: is the core of the OS and it support functionalities Depending on the internal structure and kernel, there are 3 different types of operating systems:

It’s calculated through revolution x minutes = how many revolutions do x each minute. High performance disks offer 7,200 RPM or 10,000 RPM: it’s quite fast but is it enough for making it as fast as a computer usually does? A mechanical object that is turning can’t be faster than the electricity that goes into a cable, because the electricity goes at the speed of an electron; instead a mechanical device fights with a lot of physical properties such as the speed of the motor that is moving it, the air, the heads that must be moved … These problems are translated into DELAY = some problems in trying to make a hard drive as fast as the remaining parts of the computers. So how to translate it? Into a bottle neck in which the hard drive is the problem, while the other components of the PC go extremely fast. To get around this problem, SSDs (solid stand drives): permanent information storage devices that have no mechanical components and are just cells that write data permanently into them (the opposite of Ram memories-which write things temporarily); and nowadays they have almost replaced the hard disk drive [we still have hard disks instead of replacing them altogether (because they are perfect) because they are much more expensive]. CHARACTERISTICS They last longer: common hard-disks are composed of moving parts (ex. arms, heads) which are vulnerable and can be easily damaged. The SSDs do not contain mechanical parts, thus making them resistant to shocks. They are faster: in fact, the SSDs have a faster access to the data and are up to 100 times faster than common hard-disks. With the SSDs you can improve the performance of your PC during: the start- up of the system, the management of video, the photo editing, downloads, and so on. They are more reliable: in fact, the percentage of SSDs memory failures is extremely lower than common hard-disks. They need less power: in any kind of device. They do not overheat: in any kind of device. They are lighter They are extremely silent PROCESS MANAGEMENT

LIFECYCLE of the process: the start and the end of the process. INT: initial load state of the process in memory -> In other words, the program is put in an "execution state" inside the computer, the main connected process is created, and the necessary memory (RAM) is allocated. READY: the process is run by the CPU, so the program is executed RUNNING: the process is executed by the CPU, so the program is executed. WAITING: after or during execution, a wait state may occur = you block the situation because another application substitutes the prime state of the previous application (this happens in the time- sharing environment); the application you want to delete is open by another application and so you cannot do it. SWAPPED: It uses another memory to expand the RAM memory -> the only other memory we can use (other than the primary) is the secondary memory -> so I take part of the permanent memory to expand it -> so that all unused applications go from the RAM memory to the hard disk -> that I can read the RAM memory and put whatever is being used at the moment. the RAM memory is infinite, but the problem is that the secondary memory device is much slower than the RAM memory (I need it at least 100 times). ZOMBIE: an intermediate state between execution and termination -> which is usually an error state because the process has completed its execution and is consequently no longer executing, -> but is still present within RAM memory, waiting for the father to finally release it. TERMINATED: the process is terminated and the operating system deallocates the previously allocated memory (RAM): when I close the application, it terminates completely and is no longer in RAM. Situation ready after running = there can be other situations where an application that is running could have just finished the task asked: it’s just in the RAM memory but not running. MAIN MEMORY MANGMENT PRIMARY MEMORY: is composed of -> the CPU registers, the CPU cache memory, the Random Access Memory The tasks of an OS, during the primary memory management, are: -> ALLOCATION AND DEALLOCATION OF THE MEMORY required by the running processes -> SEPARATION OF THE MEMORY PORTIONS dedicated to different processes (on multi- tasking systems) avoiding conflicts in memory utilization -> Management of the connection between the logical memory addresses used by the processes and the physical memory of the machine. -> Managing both page and virtual memory by moving portions of program: from primary to secondary memory -> and loading portions of program: rom secondary to primary memory (swap state of a process) → are names given to this type of memory that is reserved in secondary memory for these primary memory operations The PRIMARY MEMORY of the machine is composed of: -> HEAP: most powerful part of a process, so it is a way to load something into memory that will not change as fast; it increases from the bottom up, to dynamically allocate portions of memory. -> STACK: related to functions, these are simply invoked and die → this is memory that is loaded into a subsection of primary memory and is a part that is extremely fast in its execution, so it will be

SECONDARY MEMORY MANAGEMENT: consisting of devices that permit information to be saved also when the machine is turned off (not inside Kernel) Secondary memory is available in much higher quantity than primary memory (at least 100 times higher than normal RAM) and is faster in access and transfer of data Typical secondary storage devices (or mass storage) are: magnetic hard drives, optical disks, solid state storage devices (SSDs), flash drives, memory cards, and so on. Typical operations performed by the operating system on this type of device are: -> allocation/deallocation of space for data (file) memory; -> Management of free space within mass memory; -> optimization, serialization, and scheduling of operations within the mass memory unit. File system management and secondary memory management are two distinct functions of the operating system (even if they are very close functionalities). Important: The operating system component that manages secondary memory makes the physical memory structure of the adopted device transparent to programs. The same system calls are used to work on files located on different devices. PROTECTION AND SECURITY MANAGEMENT: (another optional function) in a multi-task and multi-user system, the operating system takes responsibility for resource protection. The protection process is planned to protect the privacy of resources and users. The protection is based on the following elements: AUTHENTICATION: a procedure for determining the user's identity AUTHORIZATION: a procedure for determining the right to access a resource by a user or a process AUTHORIZATION PROCEDURES: to access the different processes are related to the permissions assigned to each user: each process performed inside the system is linked to a specific user each process inherits the authorizations of the linked user for the access to the system resources the processes of the OS are executed by a user with the highest level of authorization (ex. root, administrator...). Resource security policies are based on the rules that map the resource access authorizations with the system users (ex. permissions to access a file). To simplify the mapping authorizations, the OS allows users to group users into clusters, thus mapping the authorizations of the group to each member that belongs to it. MULTI-USER OS: implement login procedures for system access, which is important because: it authenticates the user on the basis of the user credentials (ex. username and password). Checks if the user is authorized or not to access the system. LOADING PROCESS: is based on a library of user credentials and the definition of user groups: the files: /etc/passwd, /etc/shadow, /etc/group, in UNIX environments; the system RAFC (resource access control facility) in Z/OS environments; the directory server LDAP to share the authentications and the authorization policies between computers of the same group/domain Other external systems of authentication and authorization.

NOTE: The password is never memorized on the system; in fact, the password on the system is memorized by a non-reversible hash version. -> AUTHENTICATION: the user enters the password "in plain text," the system produces the hashed version of the password and compares it with the one memorized in the credential repository. HCIs and APPLICATION MANAGEMENT: PART A OUTLINE

  • Management of the Information
  • Management of the Information: Binary Code (Conversion & Operations)
  • The Von Neumann Model
  • Introduction
  • The Main Components
  • An Introduction About the Instruction Processing
  • Operating Systems
  • Structure of an Operating System
  • Management of the: Processes, Main Memory, File System, Peripherical Devices, Secondary (or Mass) Memory, Protection and Security, Human Computer Interfaces and Applications
  • Human Computer Interfaces (HCIs)
  • Human-to-Human Communication
  • Uni-Modal and Multi-Modal Interaction
  • A Basic HCI Classification: Natural (or Not) User Interfaces (NUIs)
  • A Multimodal Logical Architecture
  • MATLAB
  • Why Are You Studying…Digital Content Processing
  • Summary of the main topics faced during the lecture THE MANAGEMENT OF THE INFORMATION Any “information” stored or retrieved by a device (e.g., desktop computers, laptops, smartphones) must be represented in a “language” that can be understood by it. This “language” is the Binary Code. Definition of Binary Code: a coding system using the binary digits 0 and 1 to represent a letter, digit, or other character in a computer or other electronic device (e.g., smartphones, tablets). More specifically: a BIT (BInary digiT) is the information unit by which a device manages each and every kind of information. A single BIT can have only two states: 0 and 1. Note: with a single BIT only TWO “elements” can be expressed, for example:
  • 1 = “A”
  • 0 = “B”. Examples of “information”:  A text document (e.g., DOCX file);  A Drawing (e.g., DXF, DWG files);  A Spreadsheet (e.g., XLSX file);  An Image (e.g., BMP, TIFF files);  A Video (e.g., AVI, MP4 files);