Sisteme de operare | Operating Systems

           Do not forget to be creative! This is an option and a way to happiness.           

 

Course: OPERATING SYSTEMS | Bachelor of Science (Computer Science)
Software: Windows, Unix, Linux, Java Platform

 

MOTTO: I'm a bit like an operating system really... "multitasking" between these two OHPs, "interrupting" you, ... "sending you to sleep"... (John Bates)
The Java Platform: It is important to understand what is meant by the term platform. To a computer programmer, a platform is defined by the APIs he or she can rely on when writing programs. These APIs are usually defined by the operating system of the target computer. Thus, a programmer writing a program to run under Microsoft Windows must use a different set of APIs than a programmer writing the same program for the Macintosh or for a Unix-based system. In this respect, Windows, Macintosh, and Unix are three distinct platforms.
Dacă în deceniul 70 (secolul XX) la nivel universitar, erau câteva discipline proprii informaticii, astăzi există domenii complexe ale Informaticii: Sisteme de operare, Arhitectura calculatoarelor, Programare şi Software Engineering, Reţele de calculatoare şi Computing, Baze de date şi sisteme informatice, Programare şi dezvoltare Web, Grafică pe calculator şi realitate virtuală, Geometria computaţională, Modelare şi simulare, Calcul paralel şi distribuit, Inteligenţă artificială şi sisteme expert, Ingineria cunoaşterii.

 

Comentariu introductiv

Complexitatea aplicaţiilor de utilizare a calculatorului în diverse domenii de activitate (inclusiv in educatie), a determinat perfecţionarea, atât a sistemelor de operare şi limbajelor de programare, cât şi a tehnologiilor şi platformelor.  Au fost concepute şi elaborate noi sisteme de operare, noi limbaje de programare, noi tehnologii. Dacă în anii ’70 inventarea şi utilizarea microprocesorului au însemnat o revoluţie  în domeniul arhitecturii calculatoarelor, în anii ’90 a fost o adevărată revoluţie, atât în domeniul reţelelor de calculatoare, cât şi în domeniile limbajelor de programare (Java şi JavaScript) şi sistemelor de operare (Linux, Windows). Astfel, au apărut tehnologiile Web. Trebuie menţionate dezvoltarea şi evoluţia limbajului C++ care în anii ’80 a implementat şi dezvoltat modelul orientat spre obiecte (modelul programării obiectuale are rădăcini în limbajele SmallTalk, Lisp etc.) şi programarea orientată spre obiecte (OOP-Object Oriented Programming).

Definition. Operating System: the collection of software that directs a computer's operations, controlling and scheduling the execution of other programs, and managing storage, input/output, and communication resources.

OBIECTIVE

  •    Însusirea conceptelor teoretice ale sistemelor de operare. Cunoasterea si utilizarea sistemelor de operare Windows, Unix, Linux
  •  Competente privind dezvoltarea deprinderile practice pentru înțelegerea modului de proiectare a aplicațiilor de sistem ce folosesc intensiv serviciile oferite de sistemele de operare studiate.

 

Descriptori

Memoria fizică, memoria virtuală, alocarea dinamică a memoriei, algoritmi de paginare, algoritmi de inlocuire a paginii; gestiunea memoriei in Unix si Windows, sincronizarea proceselor, Apeluri Sistem (System Calls),  Maşini Virtuale.

 

Obiectivele disciplinei

Obiectivele cursului

Obiectivele activităţilor aplicative

(seminar, laborator, proiect)

  • intelegerea si asimilarea principalelor cunostinte privind conceperea si functiile unui SO
  • operare si comenzi in  Windows, Unix, Linux

 

  • consolidarea cunostintelor de la curs prin aplicatii, testari; elaborarea de aplicatii ce folosesc comenzi ale unui SO
  • aplicatii si proiecte folosind programare C++,  Java

CONTINUT

1. STRUCTURA SISTEMELOR DE OPERARE: Evolutia sistemelor de operare; Structura si functiile generale ale sistemului de operare; Serviciile Sistemului de Operare; Apeluri Sistem (System Calls); Maşini Virtuale;

2. ADMINISTRAREA UNITATILOR: Organizarea sistemului de I/O, Administrarea directă a I/O cu testare periodică (polling), Administrarea operaţiilor de I/O orientată pe întreruperi, Proiecţia în memorie a I/O, Accesul direct la memorie, Utilizarea zonelor tampon (“buffering”)

3. GESTIUNEA MEMORIEI: Memoria fizică, memoria virtuală, alocarea statică a memoriei, alocarea dinamică a memoriei, alocarea paginată a memoriei, alocarea segmentată a memoriei, algoritmi de paginare; algoritmi de inlocuire a paginii; gestiunea memoriei in Unix si Windows;

4. SISTEMUL DE FISIERE: Conceptul de fişier, Organizarea fişierelor, conceptual de director, alocarea spaţiului pentru fişiere pe disc, evidenţa spaţiului liber de pe disc, operaţii cu fişiere, implementarea sistemului de fişiere,  performanţele sitemului de fişiere, fiabilitatea sistemului de fişiere, gestiunea blocurilor libere, Protectia si securitatea datelor (sistem de autentificare, sistem de autorizare, protectia resurselor, protectia memoriei);  

5. GESTIUNEA PROCESELOR: Stările unui proces, paralelismul proceselor, sincronizarea proceselor, comunicarea intre procese, probleme clasice de coordonare a proceselor, Planificarea proceselor, interblocarea proceselor, fire de executie, schema generală de planificare; criterii de performanţa (algoritmi de planificare, algoritmul Round Robin), diagrama stărilor unui proces (procese si threaduri, comutarea proceselor, procese Unix si Windows).

 

LABORATOR/SEMINAR ÎN SISTEM TUTORIAL

1. STRUCTURA SISTEMELOR DE OPERARE: Evolutia sistemelor de operare; Structura si functiile generale ale sistemului de operare; Serviciile Sistemului de Operare; Apeluri Sistem (System Calls); Maşini;

2. GESTIUNEA MEMORIEI: Memoria fizică, memoria virtuală, alocarea statică a memoriei, alocarea dinamică a memoriei, alocarea paginată a memoriei, alocarea segmentată a memoriei, algoritmi de paginare; algoritmi de inlocuire a paginii; gestiunea memoriei in Unix si Windows;

3. SISTEMUL DE FISIERE: Organizarea fişierelor, conceptual de director, alocarea spaţiului pentru fişiere pe disc, evidenţa spaţiului liber de pe disc;

4. PROTECTIA DATELOR:  Protectia si securitatea datelor (sistem de autentificare, sistem de autorizare, protectia resurselor, protectia memoriei);

5. GESTIUNEA PROCESELOR: Stările unui proces, paralelismul proceselor, sincronizarea proceselor, comunicarea intre procese, probleme clasice de coordonare a proceselor;

6. GESTIUNEA PROCESELOR: Planificarea proceselor, interblocarea proceselor, fire de executie, schema generală de planificare; criterii de performanţa (algoritmi de planificare, algoritmul Round Robin)

Teme si subiecte pentru PROIECTE

NOTA. Evaluarea cunostintelor/competenţelor: prezentarea (face-to-face) unui proiect (teme A si B, intrebari/subiecte). Proiectul este un fisier format .doc ce descrie o tema privind studiul, analiza, testarea facilitatilor, comenzilor, etc., folosind explicatii, comparatii, scheme, capturi de imagini, etc. si este reprezentat pe suport CD si suport hartie..Relevante sunt: argumentele demonstrative, analizele si testarile, aplicatiile executate. Nu se accepta suport Stick/Flash Memory.
- Teme si subiecte pentru PROIECTE:Fisier de tip .pdf ! TEME-PROIECTE

- Exemple: Fisier de tip .doc ! Proiect-1 SO Fisier de tip .rar ! Proiect-2 SO  Fisier de tip .pdf ! Proiect-3 SO Fisier de tip .rar ! Proiecte-4 SO

 

 

Tutoriale

- Studiu de caz: Total Commander 7.02 (Univ. of Amsterdam) si 7.55 (pentru Android) - Fisier de tip .pdf ! TotalCMD

- Mendel Cooper, Advanced Bash-Scripting Guide, An in-depth exploration of the art of shell scripting (Examples) - http://tldp.org/LDP/abs/html/

- Linux Script Programming - http://www.comptechdoc.org/os/linux/

- Linux Script Examples - http://www.comptechdoc.org/

- Operating Systems -  http://www.comptechdoc.org/os/ : Linux  | Windows  | Unix

 

Bibliografie

  1. Silberschatz A., Galvin P.B. and Gagne G., Operating Systems Concepts, 8th edn. John Wiley & Sons, 2009
  2. A. Tanenbaum, Sistemede operare moderne, Ed.Teora, 2004
  3. A. Tanenbaum, Goodman, J. R., Organizarea structurata a calculatoarelor, Ed. Byblos, 2004
  4. Deitel H., Operating Systems 3/e, Ed. Prentice Hall, 2004
  5. Silberschatz A. Operating Systems Concepts.Seventh Edition, Wesley Publishing Company, 2006
  6. Tanenbaum A. Modern Operating Systems, Pretince Hall, 2002
  7. Gh. Dodescu, A. Vasilescu, B. Oancea- Sisteme de operare, Editura Economica, 2003
  8. Sorin Adrian Ciureanu- Sisteme de Operare -Editura Printech.2004
  9. D. Acostachioaie, Administrarea si configurarea sistemelor Linux, Ed. Polirom,2003
  10. S. Burada, G. Ciobanu, Atelier de programare in retele de calculatoare, Ed. Polirom, 2001
  11. L. Peterson, B. Davie, Retele de calculatoare: o abordare sistemica, ALL/Teora, Ed. Morgan Kaufmann, 2001/2004
  12. M. Vlada, Sisteme de operare, Universitatea din Bucuresti, tutorial, curs On line - http://ebooks.unibuc.ro/informatica/Seiso/
  13. M. Vlada, Informatica, Ed. Ars Docendi, 1999 (exista la Biblioteca FMI si BCU) - sect. 4.8 si 5.1-5.5

Notes:

- List of Operating Systems: http://www.operating-system.org/

- Liste of Operatimg Systems: http://en.wikipedia.org/

- GNU Operating Systems: http://www.gnu.org/

- Operating Systems: http://www.google.com/

- Operating Systems Articles: http://www.articlesbase.com/

 

Virtual Memory

Peter J. Denning is best known for pioneering work in virtual memory. He was a pioneer in the development of principles for operating systems and contributed the memory management methods used in all operating systems.

read more: http://mvlada.blogspot.com/2011

 

TextBook vs. Tablet PC

The "Smart education" Project: 2015

S. Korea to digitise school books  | Coreea de Sud schimbă manualele cu Tablete PC

The South Korean government has said it plans to digitise all textbooks for elementary, middle and high school students by 2015. This plan for "smart education" is aimed at helping students create their own study pattern, and lighten their backpacks. Source: http://www.channelnewsasia.com/

"Ministerul Educaţiei, Ştiinţei şi Tehnologiei din Corea de Sud a anunţat un plan pentru migrarea de la manualele şcolare clasice, pe suport de hârtie, la manuale în format electronic. Ministerul a alocat proiectului suma de aproximativ două miliarde de dolari, iar tranziţia urmează să se finalizeze în 2015, când se estimează că toţi elevii din învăţământul primar vor beneficia de noile manuale, precum şi de dispozitive hardware corespunzătoare, tablet PC-uri sau telefoane smart. În următorii ani autorităţile trebuie să se asigure că toate materialele didactice vor fi digitalizate. Toţi elevii sud coreeni vor primi gratuit tabletele digitale, iar manualele vor fi disponibile pentru descărcare de pe serverele ministerului, prin intermediul reţelelor WiFi locale." Sursa: http://portal.edu.ro/index.php/articles/11512

Tablet PC – calculator portabil al cărui ecran (de regulă cu o diagonală de 12 inchi) îndeplineşte o funcţie dublă: cea de afişare a informaţiei şi interfaţă de manipulare a calculatorului (de obicei prin intermediul unui stylus -unealtă de scris sub forma unei mini-baghete din material plastic sau metal având la vârf o bobiţă din plastic, folosită pentru interacţiunea cu ecranele tactile rezistive, sau folosind degetele - touch). Primul tablet a fost lansat în 2001 de către Microsoft şi folosea Windows XP Tablet PC Edition.

 

Tipuri de Tablet PC: a) tip broşură ; b) tip placă; c) tip decapotabil; d) tip hibrid.

  Tablet-slate-form  Booklet form  Medical tablet  convertible laptop tablet pc  hybrid tablet pc

Sursa: http://www.it4fans.ro/ 

 

Mobile Technology and Communications

 

Topics: Mobile Learning (m-Learning), Mobile Network Technology, Mobile software, Mobile Internet, Mobile dating, Health impact, Mobile phone features

"M-learning’ is the follow up of E-learning and which originates from D-learning (distance learning). M-learning is the delivery of education to the students who are not having fixed location or who prefer to use mobile phone technology for learning. The rapid growth in the mobile and communication sector make it possible to develop new forms of education. M-learning means delivery of education by means of the mobile phone devices, PDAs and audio players. M-learners seek the lessons in the small format." Ref.: http://www.networktutorials.info/

Mobile Technologies

HARDWARE:iPad, iPhone, Smartphone, Tablet PC

SOFTWARE: Operating Systems - iOS, Android, Windows Phone 7, BlackBerry, Chrome OS tablet, WebOS, MeeGo

Companies (Manufacturers): Apple, Google, Microsoft, Research in Motion (RIM) Mobile Services and Apps (Apple, Google, Microsoft): iOS, Android, BlackBerry, Windows Phone7

Ref.: www.agora.ro/conferinta/programatica-2011-mobile-services-and-apps

Tehnologia secolului 21

IBM PureSystems - sistemele de calcul noi de tip „sisteme expert integrate”.

- Design „Scale-In”: Integrează servere, sisteme de stocare şi reţele de calculatoare.
- Modele de expertiză: IBM încorporează expertiză tehnologică şi industrială prin intermediul aplicaţiilor software.
- Integrare cu mediul „Cloud”: Sistemele din familia PureSystems sunt create pentru mediul „Cloud Computing”.
Detalii:
http://www.agora.ro/stire/ibm-lanseaza-o-noua-era-a-sistemelor-de-calcul
http://www-03.ibm.com/press/us/en/presskit/37378.wss

Cloud computing Microsoft Azure Platform

The Windows Azure Platform is a Microsoft cloud platform used to build, host and scale web applications through Microsoft datacenters. Windows Azure Platform is thus classified as platform as a service and forms part of Microsoft's cloud computing strategy, along with their software as a service offering, Microsoft Online Services.

The Windows Azure Platform provides an API built on REST, HTTP and XML that allows a developer to interact with the services provided by Windows Azure. Microsoft also provides a client-side managed class library which encapsulates the functions of interacting with the services. It also integrates with Microsoft Visual Studio so that it can be used as the IDE to develop and publish Azure-hosted applications. Windows Azure became commercially available on 1 Feb 2010.

"Running applications on machines in an Internet-accessible data center can bring plenty of advantages. Yet wherever they run, applications are built on some kind of platform. For on-premises applications, this platform usually includes an operating system, some way to store data, and perhaps more. Applications running in the cloud need a similar foundation. The goal of Microsoft's Windows Azure is to provide this."

Sharding with SQL Azure

Database sharding is a technique of horizontal partitioning data across multiple physical servers to provide application scale-out. SQL Azure is a cloud database service from Microsoft that provides database functionality as a utility service, offering many benefits including rapid provisioning, cost-effective scalability, high availability and reduced management overhead. SQL Azure combined with database sharding techniques provides for virtually unlimited scalability of data for an application.

Source: http://www.microsoft.com/windowsazure/whitepapers/

Case Studies: http://www.microsoft.com/windowsazure/evidence/

Premieră în 2011 pentru România:

Modulul de publicare a informaţiilor pe Internet (Sistemul informatic pentru examenele naţionale - realizat de Siveco Romania) a folosit platforma de Cloud computing Microsoft Azure, ceea ce asigură disponibilitate permanentă, capacitate de calcul practic infinită, redundanţă şi securitate a informaţiilor. Acest modul a fost conceput special pentru a face faţă atât unui număr foarte mare de accesări simultane, cât şi posibilelor atacuri menite să întrerupă disponibilitatea serviciilor furnizate.

Conform www.trafic.ro, pe 12 iulie 2011 s-a înregistrat un nou record de vizitatori unici pentru http://portal.edu.ro, cu 828.935 într-o singură zi şi peste 24 de milioane de afişări.  Cele mai accesate site-uri ale portalului au fost http://admitere.edu.ro, http://bacalaureat.edu.ro şi http://titularizare.edu.ro.

Sursa: http://portal.edu.ro/index.php/articles/news/11492

 

 

Pagină actualizată la 09 Ianuarie 2013.