Utilizarea Platformei Linux In Invatamantul Preuniversitar
CUPRINS
Argument …………………………………………………………………………………………………
I NOȚIUNI GENERALE DESPRE SISTEMELE DE OPERARE…………………………………
Structura sistemelor de calcul
Structura sistemelor de calcul……………………………… ……………………………………….
*Istoric Unix,Linux……………………………… ……………………………………….
Încărcarea sistemelor de operare……………….. ……………………………………….
Procese în sistemele de operare……………….. ……………………………………….
*Stările unui proces……………….. …………………………………..
* Operații cu procese……………….. …………………………………..
Conceptul de open source ……………………………………………………………………….
II Sistemul Linux …………………………………………….
Pregătirea instalării…………………………………………………………………..
Selectarea opțiunilor referitoare la managerul de boot………………………….
Selectarea pachetelor………………………….
Operații de bază
*Console virtuale
*Documentație si manual
*Sintaxa comenzilor
*Lansarea in executie a unui program
III – PROPUNEREA UNUI CURS OPȚIONAL de Linux……….
Cercul de infornatică MyLinux.
Metodica active de predare informaticii…………
Învățarea centrată pe elev și alte metode moderne de învățare………………………
Propunerea unei programe pentru un curs opțional (ca disciplină nouă) la TIC ………….
Modele de planuri de lecție ………………………………………………………………………………..
Concluzii ………………………………………………………………………………………………..
Bibliografie …………………………………………………………………………………………….
=== linux ===
CUPRINS
Argument …………………………………………………………………………………………………
I NOȚIUNI GENERALE DESPRE SISTEMELE DE OPERARE…………………………………
Structura sistemelor de calcul
Structura sistemelor de calcul……………………………… ……………………………………….
*Istoric Unix,Linux……………………………… ……………………………………….
Încărcarea sistemelor de operare……………….. ……………………………………….
Procese în sistemele de operare……………….. ……………………………………….
*Stările unui proces……………….. …………………………………..
* Operații cu procese……………….. …………………………………..
Conceptul de open source ……………………………………………………………………….
II Sistemul Linux …………………………………………….
Pregătirea instalării…………………………………………………………………..
Selectarea opțiunilor referitoare la managerul de boot………………………….
Selectarea pachetelor………………………….
Operații de bază
*Console virtuale
*Documentație si manual
*Sintaxa comenzilor
*Lansarea in executie a unui program
III – PROPUNEREA UNUI CURS OPȚIONAL de Linux……….
Cercul de infornatică MyLinux.
Metodica active de predare informaticii…………
Învățarea centrată pe elev și alte metode moderne de învățare………………………
Propunerea unei programe pentru un curs opțional (ca disciplină nouă) la TIC ………….
Modele de planuri de lecție ………………………………………………………………………………..
Concluzii ………………………………………………………………………………………………..
Bibliografie …………………………………………………………………………………………….
ARGUMENT
Motto:
“Dacă vrei să faci înconjurul lumii și să fii invitat să vorbești în o grămadă de locuri doar scrie un sistem de operare Unix.”
Lnus Torvalds
În era în care trăim tehnologiile informației și comunicațiilor sunt instrumente ce pot produce importante schimbări în educație întrucât aduc oportunități deosebite de predare și învățare. Ele pot fi unelte de investigare, de rezolvare de probleme specifice unor domenii de activitate și mijloace de învățământ. Abilitatea de a utiliza aceste tehnologii, de a folosi calculatorul în procesul de învățare, va influența toate formele de educație.
Linux este extrem de popular, multe discipline folosindu-l ca platformă de referință (Sisteme de operare, Programarea calculatoarelor, Rețele de calculatoare și altele). Cei mai mulți furnizori de servicii Internet folosesc Linux datorită capabilităților sale excelente de rețea, flexibilității în configurare și stabilității sale. De asemenea, profesioniștii științei calculatoarelor îl utilizează pentru instrumentele puternice de programare, procesare de texte etc. de care dispune. Numarul distributiilor de Linux este foarte mare si diversitatea acestora este pe masura. Majoritatea distributiilor consacrate s-au impus de-a lungul anilor prin includerea a cat mai multor facilitati care sa acopere o gama cat mai larga de necesitati, dar, ca si in alte domenii, distributiile de Linux au un segment specializat pe un subiect particular, fiind astfel dedicate unui grup restrans de utilizatori.
Alegerea temei „Utilizarea platformei Linux în învățământul preuniversitar” are un suport metodic foarte important. Astfel, dincolo de pregătirea, formarea personală, am urmărit și crearea unui curs opțional pentru elevii de liceu, care să aibă această temă ..
Lucrarea își propune să trateze câteva aspecte generale ale aplicabilității Linux-ului, pentru că tema este una deosebit de generoasă , cu un material documentar bogat, numărul de distribuții ce au la bază Linux-ul fiid în continuă creștere
Întrucât am observat la elevi un mare interes pentru acest system de operare, ne-am propus să oferim premisele necesare introducerii unui curs opțional “Totul despre Linux” pentru clasele cu profil Real, specializarea Matematică – Informatică (clasele a XI-a și a XII-a).
Vom avea în vedere și organizarea unui curs cu aceeași temă, sau una asemănătoare, pentru cadrele didactice care predau alte discipline decât informatica.
Existența și utilitatea metodelor moderne de învățare accentuează rolul Tehnologiei Informației și Comunicațiilor printre celelalte materii, întrucât calculatorul și software-ul educațional fac posibilă aplicarea învățării centrate pe elev, mult mai eficientă decât instruirea tradițională, cu metode expozitive, care nu oferă posibilitatea obținerii unui feedback rapid și permanent. Desigur, aceasta nu înseamnă îndepărtarea radicală a metodelor precum prelegerea sau expunerea, doar împletirea eficientă a acestora cu metodele activ – participative, care îl obligă pe elev să fie implicat în propria educație.
Cu ajutorul noilor tehnologii informatice, școala devine un spațiu deschis comunicării și colaborării cu: elevi, părinți, profesori, autorități locale, instituții de învățământ din țară și din străinătate etc.
În concluzie, considerăm că distribuțiile Linux privite și din punct de vedere al constituirii unui veritabil suport educațional, vor avea o contribuție foarte importantă în procesul de instruire al tinerilor:
NOȚIUNI GENERALE DESPRE SISTEMELE DE OPERARE
1.1 Structura sistemelor de calcul
Sistemele de operare sunt colecții de programe existente pe sistemele de calcul
Un sistem de calcul (calculatorul) este o structură destinată prelucrării informației. El este alcătuit din resurse fizice (procesoare, memorie centrală, dispozitive de intarre/ieșire etc.), resurse logice (sistem de operare, programe utilitare, aplicații etc.) și resurse informaționale (date organizate eficient și stocate pe diverse suporturi de memorie secundară etc.) care cooperează pentru satisfacerea cerințelor utilizatorilor privind introducerea, memorarea (stocarea), prelucrarea, transmisia (spre un alt sistem de calcul), precum și regăsirea informațiilor.
Resursele fizice constituie partea de echipament a sistemului de calcul numită și hardware, iar totalitatea resurselor logice se numește software.
Componentele funcționale enumerate mai sus, structurate pe nivele care interacționează prin interfețe bine definite (figura 1.1.).
Fig.1.1. Componentele funcționale ale sistemului de calcul
Sistemul hardware constituie nivelul inferior al sistemului de calcul, construit pe baza unor componente electronice, magnetice, optice, mecanice etc., a căror complexitate depinde de tehnologia de fabricație.
Al doilea nivel este o extensie a nivelului hardware, dar și un subnivel al sistemului software. Acest nivel este numit firmware și cuprinde fie microprogramele, în cazul sistemelor de calcul ce pot să simuleze alte sisteme de calcul, fie programele de control pentru diferite componente ale sistemului de calcul. Prin microprogramare se pot proiecta sisteme de calcul programabile direct în limbaje de nivel înalt.
Nivelul următor este reprezentat de sistemul de operare și alte instrumente pentru utilizarea funcțiilor oferite de straturile anterioare elaborate conform unor cerințe, criterii și obiective stabilite la proiectarea sistemului de calcul.
Procesorul efectuează prelucrarea care are loc în sistemul de calcul prin executarea unui program și dirijează activitatea celorlaltor echipamente.
.
Performanțele procesorului pot fi exprimate prin: durata ciclului mașinii, lungimea cuvântului, repertoriul de instrucțiuni, numărul adreselor dintr-o instrucțiune, durata executării instrucțiunilor, caracteristicile sistemului de întreruperi etc.
Stocarea informațiilor în sistemul de calcul se realizează prin intermediul memoriei. În funcție de locul ocupat, distingem memoria centrală (numită și memoria principală sau internă) și memoria secundară (numită și auxiliară sau externă). În memoria centrală sunt păstrate programele și datele utilizate de acestea în timpul execuției lor de către procesor. Memoria secundară păstrează cantități mari de date și programe folosite frecvent și reîncărcabile rapid în memoria centrală.
Memoria unui sistem de calcul este caracterizată prin atribute precum: capacitate, timp de acces, cost, mod de accesare a informației stocate etc.
Capacitatea memoriei este definită prin numărul de informație disponibile pentru stocarea informației. În general, capacitatea memoriei se exprimă în KB, MB sau GB (1 GB = 1024 MB, 1 MB = 1024 KB, 1KB = 1024 octeți).
În funcție de natura accesului la informația ce o înmagazinează, memoria centrală a unui calculator poate fi cu acces numai în citire și respectiv, cu acces în scriere și citire. Memoria de tip “citește numai” (ROM) se mai numește și memorie permanentă, deoarece programele înscrise în ea sunt fixate odată pentru totdeauna. În general în această memorie este depozitat firmware-ul. Memoria ce permite acces de tip “citire-scriere” se mai numește memorie cu acces aleator (RAM).
Totalitatea echipamentelor unui sistem de calcul diferite de unitatea centrală și memoria internă formează mulțimea echipamentelor periferice. Din această categorie fac parte unitățile de memorie externă, echipamentele de intrare, echipamentele de ieșire și echipamentele de intrare/ieșire.
Modulele software pentru tratarea cererilor de intrare/ieșire din partea sistemului de operare sau a unui program utilizator se numesc driver-e. Fiecare dispozitiv de intrare/ieșire are asociat un driver. În general, orice driver menține o coadă a cererilor de intrare/ieșire lansate de unul sau mai multe programe, cereri pe care le prelucrează într-o anumită ordine (de exemplu, conform unei liste de prioritate). Driver-ele efectuează funcțiile fizice solicitate în cererile de transfer asupra dispozitivelor de intrare/ieșire și tratarea erorilor. Un program utilizator poate efectua operații de intrare/ieșire direct la nivelul driver-elor. Totuși, în acest mod, programul nu va mai fi independent de dispozitivul de intrare/ieșire.
Componentele efective ale sistemului de calcul și ale sistemului de operare se mai numesc și resurse reale, spre a le deosebi de resursele virtuale, care se referă la acele resurse pe care sistemul de oeprare le pune la dispoziția utilizatorilor ca și cum acestea le-ar fi alocat în exclusivitate. Exemple de resurse virtuale: memoria virtuală și perifericul virtual.
Prin virtualizarea memoriei se crează iluzia unei memorii foarte largi ca dimensiune (deși memoria reală este mult mai mică).
În cazul dispozitivelor de intrare-ieșire, perifericul virtual este reprezentat printr-o zonă de memorie secundară de informații între un program în execuție și un periferic real. Programul „consumator de resurse” lucrează cu perifericul virtual, iar transferul între perifericele virtuale și cele reale este realizat de o componentă a sistemului de operare.
Un sistem de operare este o colecție organizată de programe de control și serviciu stocate permanent într-o memorie principală sau auxiliară, specifice tipurilor de echipamente din componenta sistemului, având ca sarcină optimizarea utilizării resurselor, minimizarea efortului uman de programare și automatizarea operațiilor manuale în cât mai mare măsură, în toate fazele de pregătire și exploatare a componentelor sistemului de calcul.
Sistemul de operare oferă și o interfață între programator și sistemul de calcul, concretizată într-un interpretor al comenzilor utilizatorului exprimate cu ajutorul unui limbaj de comandă.
Un sistem de operare este format dintr-o colectie integrata de programe de sistem, ce ofera utilizatorului posibilitatea folosirii eficiente a sistemului de calcul, concurand la dezvoltarea programelor de aplicatie.
Se poate aprecia ca un sistem de operare actioneaza ca o interfață între componenta hardware a unui sistem de calcul si utilizator, reprezentat prin programele sale de aplicatie .
Unul dintre conceptele cheie ale oricărui sistem de operare este procesul. Un proces este de fapt un program în execuție. El crează unul sau mai multe subprocese, poate comunica cu alte procese .
În sistemele cu un singur procesor, execuția mai multor programe în regim de multiprogramare pare simultană din punct de vedere al utilizatorului, dar la un moment dat, există doar un singur proces activ în sistem. În sistemele multiprocesor sau multicalculator, două sau mai multe procese pot fi activate simultan, ele fiind prelucrate de procesoare diferite.
Un alt mecanism important este multitasking-ul. Acesta constă în multiprogramarea a două sau mai multe procese (numai task-uri în unele sisteme de operare) având un obiectiv comun. Aceste procese pot comunica între ele și își pot sincroniza activitățile.
Interfața dintre sistemul de operare și programele utilizatorului (numite și lucrări) este asigurată de o colecție de „instrucțiuni extinse” ale sistemului de operare numite apeluri sistem. Folosind apelurile sistem, un program utilizator poate crea, utiliza și șterge diverse obiective gestionate de sistemul de operare. Unele dintre cele mai importante obiecte gestionate de un sistem de operare sunt procesele și fișierele.
Un fișier este un șir de caractere terminat printr-o marcă de sfârșit de fișier.De fapt un fișier este o colecție de date stocate în memoria externă. Fișierul poate fi stocat pe disc, în memorie etc. Una din funcțiile importante ale unui sistem de operare este aceea de a ascunde dificultatea lucrului cu echipamentele periferice. Astfel, sistemul de operare oferă apeluri sistem pentru lucrul cu fișiere: crearea, ștergerea, citirea, scriere etc. Fișierele pot fi grupate într-un catalog și pot fi caracterizate de anumite atribute (proprietar, dimensiunea, data ultimului acces în scriere, coduri de protecție) .
După numărul de programe prezente simultan în memoria principală se evidențiază sisteme cu monoprograme și sisteme cu multiprogramare.
După numărul de utilizatori acceptați simultan de sistemul de operare, există sisteme monutilizator (calculatoare personale, stații de lucru, etc.) și sisteme multiutilizator.
În ce privește computerele personale profesionale ( adică PC –urile ) cele mai cunoscute sisteme de operare sunt :
MS-DOS (Microsoft Disk Operanting System) – apărut în 1981. S-a folosit foarte mult până prin 1995. Era un sistem monotasking și monoutilizator.
Windows 3.1., 3.11, 95, 98 – sisteme de operare multitasking pentru computerele utilizatorilor obișnuiți.
Windows NT – sistem de operare pentru rețele , cu variantele Windows NT Server și Workstation.
Windows 2000 – continuarea Windows-ului NT, varianta modernizată de Windows pentru rețele de calculatoare ( cu variantele Windows 2000 Profesional pentru stații și Windows 2000 Server pentru serverele rețelelor de calculatoare ).
Windows XP – continuarea Windows-ului 2000, bazat tot pe nucleu NT.
OS/2 – lansat de IBM în 1988
UNIX – sistem de operare puternic, universal, portabil pe toate tipurile de sisteme de calcul (supercalculatoare, mainframe-uri, calculatoare personale). Sistem de operare multitasking și multiuser foarte stabil , folosit în domeniile pretențioase, în Internet. Are mai multe versiuni :
AIX – proiectată de IBM pentru mainframer-urile IBM
SCO UNIX System V/386 (The Santa Cruz Operation)
UNIX System V/386 (UNIX System Laboratories)
HP-UX (Hewlett-Packard)
ULTRIX si OSF.1 (Digital Equipment Corporation)
SOLARIS (Sun Microsystems)
SunOS:Sun Microsystems,
BSD :Berkeley,BSD
SINIX:Siemens ,Sys 5
IRIX: Silicon Graphics,Sys 5
OSF 1: Digital Equipment Corporation, BSD/Sys 5
Linux – versiune de UNIX pentru PC, având mai multe distribuții:
Red Hat Linux
Slackware Linux
Debian Linux.
Windows Vista – ultimul din seria Microsoft Windows lansat în 2007 sub forma a șase ediții :
Windows Vista Starter
Windows Vista Home Basic
Windows Vista Home Premium
Windows Vista Business
Windows Vista Enterprise
Windows Vista Ultimate
1.2 Scurt istoric UNIX,Linux
În anul 1969, cercetătorii Kenneth Thompson și Dennis Ritchie de la AT&T Bell Labs au început dezvoltarea unui sistem de operare denumit UNIX, pe un calculator PDP-7. Multe idei din UNIX au fost preluate dintr-un sistem anterior, MULTICS. în 1972, sistemul a fost rescris în limbajul de programare C. Astfel, UNIX-ul a devenit portabil și pe alte mașini, deoarece doar o mică parte a sa mai era realizată în limbaj de asamblare. Sistemul a fost lansat în curând în comunitatea academică, putând astfel învăța de la utilizatorii săi. în 1979, a fost lansată versiunea V7 de UNIX, care a constituit ulterior „părintele" celorlalte implementări.
O serie de profesori de la Universitatea Berkeley au dezvoltat propria variantă de UNIX, denumită BSD (Berkeley Software Distribution), în timp ce AT&T continua in paralel dezvoltarea unei variante originale, culminând cu UNIX System V. BSD a fost preluat și de alte organizații, rezultând alte variante derivate din acesta, cum ar fi una proprietară, realizată de Sun Microsystems și denumită Solaris, și trei open-source, denumite FreeBSD, NetBSD și OpenBSD. De asemenea, System V s-a confruntat și el cu o serie întreagă de „donări" și de versiuni derivate,
Alt pas important în evoluția UNIX-ului a fost înființarea, în anul 1984, de către Richard Stallman (cercetător pe atunci la celebrele MIT AI Labs), a fundației FSF (Free Software Foundation), care apără interesele autorilor de programe gratuite.El a pornit proiectul GNU (denumire recursivă, dată în spiritul hacker-ilor anilor '80, însemnând GNU's Not Unix), cu scopul de a crea o versiune gratuită (open source) a sistemului UNIX, din considerentul că toate cunoștințele înglobate într-un program trebuie să fie publice.
Linux a apărut inițial ca un proiect al lui Linus Torvalds, student pe atunci la Universitatea din Helsinki. Prima versiune funcțională a nucleului Linux a fost lansată pe 5 octombrie 1991. Acest sistem de operare a fost combinat cu programele GNU, diferite programe BSD precum și cu sistemul grafic X Window de la MIT, pentru a forma un sistem de operare complet, denumit GNU/Linux.. Linux-ul a cunoscut, începând cu lansarea sa, un succes extraordinar, ajungând în acest moment pe locul al doilea din punctul de vedere al numărului de utilizatori
Un studiu recent efectuat relevă faptul că Linux-ul este privit ca având avantaje semnificative față de alte sisteme de operare în ceea ce privește prețul, costul de administrare, stabilitatea și performanța.
1.3 Încărcarea sistemelor de operare
La pornirea calculatorului, are loc inițializarea sistemului de calcul printr-un proces ce cuprinde mai multe etape. În general, prima etapă constă în execuția rutinelor de testare și inițializare hardware (teste de memorie, tastatură, unități de disc etc.), aflate în memoria ROM a calculatorului. În ultima parte a acestei faze se încarcă în memorie RAM un încărcător, aflat pe suportul extern (dischetă, disc rigid, casetă magnetică, bandă magnetică etc.). Aceasta va încărca nucleul sistemului de operare aflat pe același suport.
Cea mai importantă componentă a sistemului de operare o reprezintă nucleul (kernel-ul). Funcționalitățile nucleului pot fi mai extinse sau mai reduse, după cum l-au conceput realizatorii săi, dar întotdeauna este răspunzător pentru funcționarea stabilă a calculatorului. Rutinele care compun nucleul au posibilitatea de a interveni direct, în cazuri extreme, în execuția programelor de aplicații, mergând chiar până la terminarea forțată a acestora, dacă nu se conformează anumitor reguli .Evident, calitatea nucleului reprezintă un factor critic în funcționarea în bune condiții a sistemului. Un nucleu scris cu erori va conduce aproape sigur, mai devreme sau mai târziu, la blocarea calculatorului sau la pierderi de date
Alături de nucleu, sistemul de operare este compus și dintr-un set de drivere, care facilitează comunicarea cu diverse periferice (imprimanta, placa de rețea etc). O asemenea abordare prezintă avantaje, deoarece la înlocuirea unui periferic este posibilă înlocuirea fără dificultăți și a driverului corespunzător, fără a se interveni în structura internă a nucleului. în general, producătorul unui dispozitiv periferic este cel care oferă și driverele de acces la acesta.
Modificarea nucleului sistemului este apanajul programatorilor cu experiență și, de cele mai multe ori, chiar imposibilă.
. Sistemul UNIX este unul multi-tasking – putând să execute în mod concurent un număr nedeterminat de programe, și multi-utilizator -, utilizatorii având acces la resursele calculatorului de la diferite terminale plasate local sau la distanță.
Linux este un sistem de operare gratuit (open source), compatibil UNIX
După efectuarea testării și inițializării componentelor hardware ale sistemului de calcul, în memoria RAM se va încărca un program scurt, aflat în blocul de încărcare (boot) al sistemului de fișiere root al sistemului UNIX. Acesta va încărca nucleul sistemului de operare
1.4 Procese în sistemele de operare.
Conceptul de proces
Un proces reprezintă o entitate dinamică ce corespunde unui program în execuție. Mai precis, un proces este un program a cărui execuție a fost inițiată, dar nu s-a încheiat încă. Conceptual, fiecare proces are un procesor virtual propriu. În realitate, procesorul real comută de la un proces la altul. Pentru a înțelege mecanismul de tratare a proceselor, este mai ușor să ne gândim la o colecție de procese ce se execută în (pseudo) paralel.
În timp, un proces solicită diverse resurse (procesor, memorie principală, dispozitive periferice). Cum alocarea acestor resurse poate varia în timp, rezultă un comportament dinamic al programului ce le utilizează. În cazul sistemelor de tip secvențial , aspectul dinamic nu există, deoarece toate resursele sistemului, cu excepția celor utilizate în exclusivitate de sistemul de operare, sunt alocate pe rând fiecărei lucrări. Alocarea se face înainte de lansarea în execuție, care după inițiere, se derulează fără întrerupere. În sistemele multitasking sau multiprocesare, există mai multe procese ce concurează pentru obținerea sistemului de calcul. Acestea pot solicita simultan la o resursă partajabilă sau pot coopera la realizarea aceleiași sarcini. Cererile de resurse ale acestor procese se rezolvă în funcție de resursele disponibile ce urmează a fi împărțite.
Evoluția unui proces este condiționată de prezența a trei factori:
-un set de instrucțiuni (subprogram sau program);
-un procesor capabil să execute aceste instrucțiuni;
-un context sau mediu (memorie, fișier etc.) asupra căruia să acționeze procesul conform celor prezentate în setul de instrucțiuni.
Rezultă că trebuie distins între un proces și un program. Procesul are caracter dinamic (precizează o secvență de activități în execuție), iar programul are un caracter static (el descrie activitățile de executat).
O aceeași secvență de cod poate fi executată, la un moment dat, de mai multe procese numite instanțe. Pentru acesta, secvența de cod trebuie să fie reentrantă.
Procesele sunt fie procese sistem, fie procese utilizator. Procesele sistem sunt asociate unor module ale sistemului de operare, iar procesele utilizator sunt asociate unor programe utilizator care pot să creeze alte procese utilizator sau să lanseze module sistem.
1.4.1. Stările unui proces
Cum resursele unui sistem de calcul sunt, în cele mai multe cazuri, în cantități limitate, este imposibilă alocarea tuturor resurselor necesare unui proces la crearea acestuia. Astfel, la un moment dat, este posibil ca un proces să nu poată continua. Imposibilitatea continuării apare și atunci când un proces trebuie să aștepte producerea unui eveniment. De exemplu, dacă un proces trebuie să genereze date necesare altui proces, acesta din urmă va aștepta până când datele necesare vor fi disponibile.
Atunci când un proces se află în imposibilitatea de a continua deoarece nu dispune de resursele necesare, se spune că se află în starea BLOCAT. În general un proces ajunge în această stare atunci când din punct de vedere logic el nu mai poate continua. Totuși este posbil ca un proces să fie conceptual gata pentru execuție, dar să fie stopat deoarece sistemul de operare a decis alocarea procesorului unui alt proces (cu prioritate mai mare). În această situație se spune că procesul este ÎNTRERUPT. Cele două condiții sunt complet diferite. În primul caz, suspendarea este inerentă (de exemplu, se așteaptă introducerea unei linii de la tastatură). A doua situație este de natură tehnică (nu poate avea fiecare proces procesorul său). Dacă procesul este în curs de execuție și deci în mod implicit dispune de toate resursele necesare, se spune că procesorul se află în starea ACTIV.
Din punct de vedere practic, un proces constă dintr-un program și contextul acestuia. Contextul procesului cuprinde toate informațiile externe programului, ce pot fi adresate de acesta și care uneori sunt strict necesare evoluției procesului. Aceste informații sunt grupate într-o structură numită teoretic, vector de stare al procesului, iar practic blocul de control al procesului. Acest bloc de control conține informații precum: identificatorul procesului starea procesorului (contorul program, conținutul registrelor, controlul întreruperilor etc.) – când procesul nu este activ, starea procesului (ACTIV, ÎNTRERUPT, BLOCAT etc.), prioritatea procesului la obținerea resurselor, codurile de protecție, tabela de translatare a memoriei virtuale, informații despre alte resurse (fișiere, dispozitive periferice etc.) alocate procesului și informații privind contabilizarea resurselor (timpul de utilizare al procesorului, memoria ocupată, numărul operațiilor de intrare-ieșire). Mulțimea câmpurilor conținute în tabela de procese diferită de la un sistem de operare la altul.
1.4.2 Operații cu procese
Un proces asociat unei lucrări este creat cu lansarea în execuție a lucrării și este distrus (eliminat) la terminarea execuției acestei. Crearea unui proces înseamnă: alocarea unui vector de stare, inițializarea componentelor vectorului de stare și înregistrarea procesului într-o structură de date numită tabela proceselor. Astfel fiecare proces are un descriptor unic și anume: poziția în tabela proceselor. Prin acest identificator sistemul de operare și alte procese îl pot referi pe toată durata lui de viață. Un proces creat la cerearea altui proces utilizator sau sistem (numit proces tată), se numește proces fiu și se spune că este un descendent al procesului creator. Dacă două procese B și C sunt create de același proces A, atunci B și C se numesc procese frați.. În acest fel toate procesele sistemului alcătuiesc o structură arborescentă.
Distrugerea sau ștergerea unui proces înseamnă eliberarea resurselor ce i-au fost stocate, eliberarea memoriei corespunzătoare vectorului de stare, precum și eliminarea acestuia din tabela proceselor.Un proces se poate autodistruge, atunci când ajunge la sfârșitul execuției sale sau poate fi distrus la cererea unui alt proces utilizator
Alte operații asupra proceselor sunt: semnalizarea, întârzierea, planificarea, schimbarea priorității, suspendarea și reluarea. Un proces poate fi semnalizat în legătură cu apariția unui eveniment sau poate fi întârziat până la apariția unui eveniment. Pentru a obține controlul unui procesor, procesele sunt planificate. Schimbarea priorității unui proces influențează modul de alocare a resurselor necesare procesului.
În general, dacă sistemul de operare păstrează o evidență a fiilor fiecărui proces, este posibil să se execute operații de tip distrugere, suspendare, reluare nu numai asupra unui proces specificat ci și asupra unei descendențe a sa.
Observație. Comportamentul sistemului poate fi ușor înțeles folosind conceptul de proces. Sistemul de operare execută atât programe pentru a răspunde comenzilor utilizatorului cât și programe pentru gestiunea fișierelor, lucrul cu discul sau cu alte echipamente periferice. În momentul apariției unei întreruperi, procesul curent este ÎNTRERUPT și este lansat un proces pentru a rezolva cererea semnalată prin întrerupere. Astfel, activităților petrecute într-un sistem de calcul le corespund procese utilizator, procese pentru gestiunea discurilor, procese pentru controlul terminalelor ș.a.m.d. aflate în starea BLOCAT pentru producerea evenimentelor de care răspund. Acest model arată că la baza sistemului de operare trebuie să se afle planificatorul proceselor, iar restul componentelor este structurat în procese secvențiale.
Exemple: Procese în sistemele de operare UNIX ,LINUX
Procese UNIX
Un proces UNIX este un proces secvențial care la un moment dat execută un singur program și are un singur antet de control, adică are un singur contor program care indică instrucțiunea ce urmează a fi executată. Pentru un program dat pot exista la un anumit moment, una sau mai multe instanțe. Deoarece sistemul de operare UNIX este un sistem cu multiprogramare, la un moment dat pot fi active mai multe procese independente. Cum în sistem pot fi mai mulți utilizatori (fiind și sistem multiutilizator), iar fiecare utilizator poate avea mai multe procese în sistem (în diverse stări), sistemul de operare gestionează sute sau chiar mii de procese. Chiar dacă pe sistem nu e nici un utilizator, foarte multe procese background (demoni) sunt lansate la încărcarea sistemului de operare.
Execuția proceselor utilizator în UNIX se face pe două nivele: utilizator și nucleu, asociate nivelelor de funcționare ale procesorului sistemului de calcul. În mod utilizator, procesele își pot accesa numai propriile zone de instrucțiuni și date, pe când în mod nucleu ele pot accesa și spațiul de adrese al nucleului. Nucleul sistemului de operare este partea integrantă a oricărui proces în execuție.
Trecerea de la un nivel la altul se realizează prin intermediul apelurilor sistem. După un apel sistem procesul apelant va fi în mod nucleu, iar la întoarcerea din apelul sistem, procesul revine în modul utilizator.
Relativ la stările proceselor, sistemul de operare UNIX distinge următoarele stări de bază:
-execuția în mod utilizator;
-execuția în mod nucleu;
-gata de execuție (întrerupt);
-în așteptare (blocat);
-zombie.
În starea întrerupt, la un moment dat se pot afla mai multe procese. Ele sunt gestionate de către nucleu prin intermediul unui fir de așteptare, fiind ordonate în funcție de prioritatea acestora. Planificatorul alege procesul cu prioritatea maximă și îl lansează în execuție.
În starea blocat, un proces poate trece benevol când așteaptă terminarea unei operații de intrare/ieșire. De asemenea, un proces este blocat în urma planificării unui proces prioritar. La un moment dat un proces blocat se poate afla pe disc (proces evacuat) sau în memorie.
Starea zombie caracterizează toate procesele fiu în momentul terminării lor. Intrarea din tabela de procese este eliminată numai de către procesul părinte. Prin urmare, procesele fiu nu sunt distruse imediat după terminarea execuției lor.
Informațiile referitoare la procese sunt memorate într-o tabelă de procese, rezidentă în memorie. Cele mai importante caracteristici ale procesului sunt: localizarea în memorie (adresa de memorie și adresa de evacuare), dimensiunea, starea procesului, identificatorul procesului, identificatorului ce a creat procesul, descriptorii fișierelor deschise de proces, catalogul curent, catalogul rădăcină asociat procesului etc. Informațiile legate de fișiere, catal. și utilizatori, fac parte din regiunea de date asociată procesului ce va însoți procesul chiar și la evacuarea acestuia pe disc.
În UNIX procesele sunt create folosind apelul sistem fork. Procesul apelant se numește proces părinte, iar procesul nou rezultat în urma apelului se numește proces fiu. Inițial, imaginile celor două procese sunt identice, apoi ele pot avea propria lor imagine în memorie. Astfel, dacă părintele își modifică o variabilă a sa, această modificare nu este vizibilă și pentru fiu, și reciproc. Fișierele deschise înainte de apelul fork, sunt partajate între părinte și fiu. Prin urmare, dacă un fișier a fost deschis de procesul părinte înainte de apelul fork, atunci el va fi descris și pentru procesul fiu.
Pe lângă posibilitatea de creare a unui proces nou, un proces poate lansa în execuție un program conținut într-un fișier executabil folosind unul din apelurile numite generic exec. Aceastea determină, în diverse variante, încărcarea unui program peste procesul curent și lansarea acestuia în lucru. Prin apelurile exec se pot lansa în execuție programe care să folosească fișierele oferite de către procesul părinte.
Sistemul de operare Linux este un sistem multiutilizator, multitasking și time-sharing care permite atât utilizarea la maxim a procesorului cât și o multitudine de servicii pentru utilizatori. Unul din conceptele fundamentale ale sistemelor UNIX, Linux este procesul. Un proces poate crea procese fiu asupra cărora poate interveni în timpul execuției. Tratarea proceselor este secvențială. Sunt considerate cele mai puternice și cele mai stabile sisteme de operare existente .
Sistemele de calcul multiprocesor și multicalculator utilizează sisteme de operare mult mai complexe. În acest caz procesele sunt executate în paralel. Sistemul de operare trebuie să aloce resursele astfel încât să fie evitată blocarea definitivă a proceselor.
Sistemul de operare LINUX utilizează ca mecanisme de sincronizare și comunicare: semafoarele, cozile de mesaje, fișierele FIFO, zonele de memorie comună și alte mecanisme.
1.4.3 Conceptul de open source
Conceptul de open source a fost introdus de Bruce Perens și definește nu doar libera utilizare a unui produs software, dar și anumite libertăți de redistribuire, de creare a unor produse derivate. Conform acestui concept, un program open source este disponibil oricărei persoane indiferent de domeniul de activitate, de religie, sex și de preocupări.
Pe scurt, free (software) nu înseamnă „gratuit” ci „liber”.
Un program este free software dacă utilizatorul are:
Libertatea de utilizare a programului indiferent de scop
Libertatea de studiere a modului de funcționare a programului, de a-l îmbunătăți și adapta în conformitate cu nevoile sale personale și chiar de comercializare a produselor realizate cu ajutorul programelor open source
Libertatea de avea acces la codul sursă al programului
Libertatea de a distribui copii ale programului, în scopuri non-comerciale
Iată câteva dintre avantajele utilizării programelor open source în educație:
Siguranță, securitate, performanță datorate numărului mare de utilizatori și respectiv de îmbunătățiri aduse programelor open source
Deschidere spre cunoaștere, diseminare și comunicare
Combaterea pirateriei software
Costuri reduse pentru realizarea aplicațiilor ce utilizează tehnologii open source
Învățarea din codul open source
Cuvântul în jurul căruia se învârte totul este cooperare. Ideea principală a modelului Open Source este aceea că – dacă toți cooperează – toți au de câștigat.
De cele mai multe ori, calitatea programelor open source este cu mult superioară celei a produselor comerciale (proprietare).
In cele mai multe cazuri, proiectele open source sunt concepute de către persoane care au nevoie de respectivele programe pentru propriile lor interese, și mai rar de către informaticieni care au fost plătiți pentru a le scrie. Acest fapt determină programatorii să realizeze soft cât mai potrivit pentru nevoile lor și care să conțină cât mai puține erori (bug-uri). Deoarece programele sunt distribuite în format sursă, oricine descoperă un bug îl poate corecta și poate trimite corecțiile sale maintainer-ului, iar imediat versiunea corectată este făcută publică. în contrast cu aceasta, marile companii dezvoltătoare de software răspund mult mai greu la sugestii și la raportări de bug-uri, chiar dacă mulți utilizatori depind de corectarea respectivelor erori. Mai multe facilități, algoritmi mai performanți, corecții sunt mult mai simplu de implementat în cazul programelor open source, iar respectivele modificări pot fi integrate cu ușurință în programe, fâcându-le mai bune pentru toată lumea, într-un timp foarte scurt.
De altfel, a plăti un programator să implementeze ceva nu înseamnă neapărat că va scrie cod de calitate. Când contribui la realizarea unui program open source, nimeni nu te forțează să scrii cod. Dacă îți place și ai timp să scrii la program, atunci îl scrii.
Disponibilitatea surselor mai generează și un alt avantaj: permite altora – elevi, studenți, profesori și programatori – să citească, să înțeleagă și să utilizeze codul sursă. Astfel, ei pot învăța și pot să -l folosească liber pentru propriile nevoi.
Conceptul de free software a apărut odată cu cel de copyleft, ca reacție la copyright. În viziunea multor programatori, copyright-ul nu face decât să împiedice, să îngrădească dezvoltarea resurselor educaționale create cu noile tehnologii informaționale și a cercetării în general datorită, în primul rând, costurilor programelor necesare, dar și drepturilor de autor asupra acestora.
Copyleft (în sens nejuridic) este opusul lui copyright.
Copyleft are drept simbol un „C” întors și descrie un grup de licențe aplicate unor lucrări software, documente și artă. O licență copyleft folosește legislația copyright-ului pentru a permite oricărei persoane, care primește o copie sau o versiune, derivată, a unei lucrări, să o modifice și să redistribuie atât lucrarea, cât și versiunile derivate ale acesteia.
Fondatorul celei mai de succes implementări a copyleft-ului, Linus Torvalds, consideră ca esențială latura practică a licenței de copyleft pe care a aplicat-o sistemului de operare Linux. El spunea, într-un interviu publicat pe 18 august 2004 în Business Week: să construiești mereu mai departe pornind de la ce s-a descoperit până atunci, fără a fi stânjenit de o secretomanie aferentă rezultatelor cercetării anterioare!
Conceptul de copyleft a apărut atunci când Richard Stallman lucra la un interpretor Lisp; acesta furnizând o versiune publică a lucrării sale. Mai târziu, lucrarea sa a fost îmbunătățită de alți autori. Când (1984) a dorit să aibă acces la acestea, a fost întâmpinat de un refuz. Astfel, el a creat propria licență de copyright, Licența Publică Generală (GPL) GNU, prima licență copyleft care se referea la transferul maxim de drepturi de la un utilizator al programului la altul, indiferent de modificările aduse versiunii inițiale.
Copyleft-ul este una dintre trăsăturile cheie care fac distincție între cele câteva tipuri de licențe pentru softwareul open source (în final copyleft-ul a devenit problema principală în dezbaterea ideologică dintre mișcarea open source și mișcarea free software): copyleft este numele prescurtat al unui cadru juridic care asigură că derivatele unei lucrări cu licență rămân gratuite/deschise (ceea ce nu e obligatoriu într-o abordare generală “open source”). Dacă deținătorul unei lucrări cu copyleft distribuie lucrările derivate nu sub aceeași licență copyleft (sau în unele cazuri similară), el va suporta anumite consecințe juridice: pentru majoritatea lucrărilor cu copyleft, aceasta implică cel puțin că unele dintre prevederile licenței sunt anulate, lăsându-l pe (fostul) licențiat fără dreptul de a copia și/sau distribui și/sau afișa public și/sau pregăti derivate ale software-ului etc.
Multe licențe pentru software-ul open source, cum sunt cele folosite de sistemele de operare BSD, de X Window System și de serverul Web Appache nu sunt licențe de copyleft pentru că nu îi cer deținătorului licenței să distribuie lucrările derivate sub aceeași licență. Există o dezbatere privind care tip de licență oferă o mai mare libertate. Această dezbatere se referă la aspecte complexe cum ar fi definiția libertății și la care libertăți sunt mai importante. Se argumentează uneori că licențele de copyleft încearcă să maximizeze libertatea tuturor potențialilor primitori ai software-ului (libertatea să nu creeze software original), în timp ce licențele fără copyleft ale software-ului gratuit maximizează libertatea primitorului inițial (libertate să creeze software original). Se poate vedea o distincție între libertatea autorilor individuali ai software-ului și libertatea software-ului în sine.
Spre deosebire de alte sisteme de operare, nici o firmă nu este proprietara sistemului Linux. Mai mult decât atât, el este protejat de Licența Publică GNU, care stipulează faptul că se poate copia și utiliza gratuit codul programelor, cu condiția de a se permite și altora să facă același lucru. Linux și toate programele distribuite împreună cu distribuția Linux sunt gratuite. Conform permisiunilor exprimate în licența mai sus menționată, Linux poate fi copiat sau redistribuit fără nici un fel de restricții.
Sistemul Linux este alcătuit propriu-zis dintr-un nucleu (kernel) și un număr uriaș de programe și utilitare. Este un sistem de operare complet, care conține practic orice tip de aplicație, putând astfel juca o varietate de roluri, printre care:
Sistemul Linux conține un suport excepțional pentru rețea, putând oferi atât serviciile specifice Internet-ului, cum ar fi Web, FTP, poștă electronică, grupuri de discuții etc, cât și alte servicii de rețea, cum ar fi server de imprimante, server de fișiere (NFS) etc. De asemenea, el poate substitui un server Windows NT/2000/XP sau Novell Netware. Stabilitatea, fiabilitatea și securitatea sa sporite îi conferă posibilitatea de a fi utilizat pe servere high-end și în medii critice.
Sistem personal. Linux poate fi utilizat pentru redactarea de texte, tipărirea la imprimantă, conectarea și navigarea pe Internet, citirea corespondenței. în plus, reprezintă o platformă multimedia perfectă pentru vizionarea de filme sau audiția de piese muzicale, oferind suport și pentru jocuri.
Sistem utilizat la serviciu. Sistemul Linux include suite complete de aplicații pentru birou, cum ar fi programe de calcul tabelar, de redactare profesionistă de texte, de realizare a prezentărilor și graficelor etc. Instrumentele pentru acces la Internet reprezintă și ele un punct forte al acestui sistem.
Sistem educațional. Atuul principal este costul practic nul al sistemului. Instalarea de sisteme proprietare pe multe calculatoare poate fi extrem de costisitoare. Linux include aplicații, compilatoare, instrumente de programare și medii integrate de dezvoltare a căror calitate este în general superioară celei a programelor comerciale.
Un sistem Linux, alcătuit dintr-un program de instalare, nucleu și aplicații gata compilate se numește distribuție Linux. Numeroase companii și organizații au realizat asemenea distribuții. Acestea sunt disponibile gratuit pe Internet, dar pot fi achiziționate și contra cost ca pachete formate din CD-ROM-uri și manuale de utilizare. Distribuțiile Linux cele mai răspândite sunt Fedora/Red Hat, SuSE, Debian, Caldera, Slackware și Knoppix (distribuție „live" care poate fi folosită prin pornirea directă de pe CD, nefiind necesară instalarea acesteia).
Diferențele dintre aceste distribuții constau doar în sistemele diferite de instalare și programele de configurare folosite. Majoritatea acestor distribuții, precum și multe altele, pot fi găsite pe situl http://www.linuxiso.org. Contrar opiniei generale, suportul tehnic pentru programele open-source are de cele mai multe ori o calitate superioară, comparativ cu cel oferit în cazul aplicațiilor comerciale. Prin formularea unei întrebări sau a unei cereri de ajutor pe o listă de discuție sau în cadrul unui forum Web, se poate obține un răspuns la orice problemă.
II Sistemul de operare Linux
În 1991 Linus Torvalds (pe atunci student) a scris prima versiune de Linux. Apoi a făcut publice sursele pe internet, și o mulțime de oameni au inceput să-i răspundă, să-i aducă îmbunătățiri, noi sugestii.
Între timp acest sistem de operare a devenit complex, au aparut (și mai apar) noi facilităti, iar performanța este remarcabilă.
In prezent sunt estimați peste 8 milioane de utilizatori Linux, iar nucleul Linuxului are peste 200 de autori. Pe lânga acesti 200 de autori ar trebui adăugate cele câteva mii de persoane care testează și găsesc bug-uri
Linux este un sistem multiuser și multitasking, adică mai multi utilizatori pot rula mai multe programe in acelasi timp.A fost rescris de la zero pentru a elimina necesitatea plății licentei. Totuși el se bazeaza in intregime pe comenzile si "look and feel"-ul UNIX, deci cine stie Linux stie si UNIX si invers.
Are suport pentru retea (TCP/IP), Internet, ba chiar este unul dintre cele mai folosite sisteme de operare pentru servere internet si intranet.
Linux are posibilitatea de a simula memoria RAM folosind un fisier de swap pe harddisk, dar este mult mai lent.În plus excesul de memorie este folosit pentru accelerarea operatiilor pe disk, deci cu cat mai multa memorie RAM, cu atat Linux-ul dvs. are performante mai bune.
Există mai multe distributii Linux (Slakware, RedHat, Debian, SuSe, …)
O distributie reprezinta nucleul Linux impreuna cu anume fisiere de configurare si anume programe.Ele nu diferă decât prin modul de instalare și înteținere.Aceste distribuții pot fi descarcate gratuit de pe Internet. Totusi pentru cei care nu au acces la Internet, pot fi cumparate CD-uri continand aceste distributii la preturi intre 30$ -50$. Aceste preturi reprezinta costul procesarii CD-ului, taxe de expediere, etc.
Programe disponibile sub Linux:
Majoritatea distributiilor Linux includ compilatoare pentru diverse limbaje de programare, utilitare pentru retea (email, telnet, ftp, www), creare si manipulare documente, tiparire, arhivare, si multe altele.
Pe langa acestea exista disponibile pe Internet o mare varietate de programe, unele gratuite, altele nu, iar mai nou marile case de software au inceput sa porteze softurile lor pe Linux.
Iată cateva exemple:
Staroffice (foarte asemanator cu MS-Office, gratuit pentru folosire non-comerciala),Oracle (baze de date),PHP Mathematica (calcul simbolic si nu numai)
De la inceput, Linuxul a avut nevoie de resurse hardware minime pentru a rula. Acest lucru nu s-a schimbat in timp. Linuxul poate functiona pe sisteme hard foarte limitate insa a fi capabil sa rulezi Linuxul nu este totuna cu a crea un sistem server.
Evident, cu cât este mai bun hardware-ul cu atât performanța obținută la rularea sistemului de operare va fi mai mare. Cu toate acestea feriti-vă de ultimele descoperiri în domeniu pentru că de multe ori acestea nu sunt suportate de Linux. De exemplu, dacă o placă video cu ultimele facilitați a apărut pe piața ieri nu vă asteptați ca maine Linux-ul să o și recunoască. Uneori producătorii hardware îngreunează accesul dezvoltatorilor Linux la informatiile specifice necesare pentru a scrie modulele driver si astfel devine dificil ca aceștia să implementeze rapid ultimele produse hardware
2.1 Pregătirea instalării
Red Hat Linux, se poate instala prin intermediul serviciilor FTP, NFS sau SMB (Samba) atunci cand CD-ROM-ul Red Hat se afla pe un alt computer. Aceste metode sunt foarte sensibile și pot fi însoțite de erori. Pentru a economisi timp si efort este recomandabil sa realizati instalarea folosind CD-ROM-ul de pe calculatorul pe care instalati Linux-ul. Deoarece aceasta este medoda recomandată, vom considera in continuare ca faceti instalarea de pe CD-ul propriu.
Pasul urmator în pregătirea instalării îl constituie determinarea necesitatii unei dischete boot. Daca aveti un sistem de calcul care suporta bootarea de pe CD-ROM atunci nu aveti nevoie de o astfel de discheta. Insă daca CD-ul dumneavoastra cu distributia Red Hat nu este bootabil sau sistemul nu suporta bootarea (incarcarea) de pe CD-ROM aveți nevoie de o discheta de boot.
În procesul de instalare cele mai importante și mai complexe etape sunt cele referitoare la partiționarea discului hard și la alegerea pachetelor de instalat.Instalarea se poate realiza în mod text sau in mod grafic
Daca sistemul se incarcă folosind CD-ROM-ul nu aveti nimic altceva de facut decat sa introduceti CD-ul Red Hat in unitate si sa porniti sau reporniti sistemul. In cazul in care folositi pentru incarcare discheta introduceti-o in unitate si reporniti calculatorul.
Atunci cand sistemul porneste apare un ecran de intampinare Red Hat si un prompt :
boot:
Aveți trei posibilitati: apăsați tasta Enter pentru a porni o instalare/upgrade normal. A doua posibilitate este sa tastati expert iar instalarea se va face in modul expert. Folosind acest mod Red Hat nu va mai incerca sa autodetecteze componentele hardware ale sistemului de calcul ci va permite utilizatorului sa selecteze aceste componente. A treia optiune este rescue. Această ar trebui utilizata dupa un dezastru.
2.1.2 Partitionarea discurilor
Partiționarea discurilor este un pas foarte important deoarece modificarea ulterioară a partitiilor nu ofera foarte multa siguranță în fața posibilității pierderii de date.Sistemul Linux tratează toate toate dispozitivele fizice ca fișiere, dispunâd de câte un fișier pentru a reprezenta fiecare dispozitiv în parte.Aceste fișiere de dispozitive sunt localizate în directorul /dev .
Cea mai simpla metoda este utilizarea Disk Druid. O alta optiune este fdisk-ul.Utilitarul Disk Druid este mult mai prietenos datorita interfeței grafice și este recomandat pentru utilizatorii începatori.
Dacă aveți partiții ale unui alt sistem de operare instalat anterior (de ex. Windows) acum puteti sterge aceste partitii sau puteti folosi partitiile nefolosite pentru a crea un sistem cu incarcare duala: Linux Red Hat si Windows.
Red Hat va permite sa va partitionati fiecare disc, unde fiecare partitie este notata utilizand o schema de genul hd[a-z][N] pentru discurile hard IDE si o schema sd[a-z][N] pentru discurile hard SCSI. Aici N este numarul partitiei. De exemplu, hda1 este partitia numarul 1 de pe primul disc IDE, hda, si, similar, sda 1 este prima partitie de pe primul disc SCSI. Va trebui sa va decideti singuri cum va veti partitiona discurile. In continuare sunt prezentate cateva sfaturi.
Este nevoie de o partitie / (root) pentru a stoca kernelul și fisierele legate de acesta. Aceasta partiție nu trebuie să fie foarte mare. Insă, dacă există spatiu, încercați sa o faceti de 512 MB sau mai mult. (In conditiile in care creati si alte partiții este de ajuns ca partiția / (root) sa aiba 256 MB). Asigurați-vă ca ați ales pentru această partitie tipul Linux native (sau ext2/ext3, în funcție de versiunea de Red Hat pe care o instalați).
Tot obligatoriu trebuie sa creati o partitie swap (tipul partitiei: swap) care sa aiba o dimensiune egala cu de doua ori marimea memoriei RAM (daca aveti un RAM mare, 512 MB, ati putea sa nu mai folositi un swap dublu fata de memorie).
Optional, puteti crea partiile:
/usr (tipul partitiei trebuie sa fie Linux native/ext2/ext3; este o partitie care trebuie sa fie cat mai mare +512 MB),
/home pentru directoarele radacina ale utilizatorilor mai putin utilizatorul root (tipul partitiei trebuie sa fie Linux native/ext2/ext3; daca aveti multi utilizatori trebuie sa va decideti care este spatiul pe care il alocati pe utilizator, sa multiplicati aceasta valoare cu numarul maxim de utilizatori pe care considerati ca il veti avea si sa creati o partitie corespunzatoare ca dimensiune),
/boot: partitie de 16 MB, si o partitie cat mai mare (+512 MB),
/var pentru cozile si log-urile sistemului.
Programul fdisk lucrează cu un disc la un moment dat, si chiar dacă asigura o interfata neeleganta, in schimb are o flexibilitate mai mare decat Disk Druid. Desi fdisk-ul nu este recomandat incepatorilor, totusi in continuare sunt prezentate cateva notiuni de baza; daca v-ati facut treaba fara sa fie nevoie sa folositi fdisk treceti peste randurile urmatoare.
2.2 Selectarea opțiunilor referitoare la managerul de boot
In procesul de instalare, atunci cand trebuie sa va hotarati ce boot loader (manager de boot) folositi, LILO sau GRUB, trebuie sa aveti mare grija unde plasati acest manager.
Daca nu aveți alt sistem de operare instalat deja, puteti alege master boot record. Pe de alta parte, daca aveti deja un sistem de operare instalat si doriti sa il folositi in continuare, va trebui sa alegeti primul sector al partitiei boot (the first sector of the boot partition).
Tineți minte faptul ca punand GRUB sau LILO în master boot record, acesta va prelua controlul intregului proces de incarcare a sistemului, iar daca doriți sa aveți calculatorul capabil sa se încarce dual (să puteîi alege sistemul de operare care sa pornească), există posibilitatea ca, dacă mai aveți un sistem de operare instalat, acesta iși va fi plasat deja managerul propriu de boot in master boot record si sa aveti probleme.
Imediat după punerea sub tensiune, BIOS-ul testează sistemul, caută și inițializează echipamentele periferice, iar apoi caută discul de pe care va porni sistemul. BIOS-ul verifică sectorul de boot, MBR {Mașter Boot Record), îi încarcă în memorie conținutul și îi predă controlul. MBR-ul citește mai departe încărcătorul de boot și îl execută. încărcătoarele de boot folosite de Linux sunt GRUB și LILO.
În cazul utilizării programului GRUB pot fi utilizate tastele-săgeți pentru selectarea sistemului de operare dorit. Dacă utilizatorul nu acționează nici o tastă în intervalul de timp afișat pe ecran, va fi pornit sistemul implicit (pe care se află cursorul). Poate fi folosită de asemenea și tasta „e" pentru a modifica configurația GRUB sau „a" pentru a edita argumentele trimise nucleului sistemului.
Dacă se folosește programul LILO, la prompterul afișat pe ecran trebuie introdusă denumirea sistemului care va fi pornit (de exemplu linux sau win) și tasta ENTER pentru a porni nucleul. Opțional, denumirea sistemului poate fi urmată de argumentele care vor fi trimise nucleului. Tasta Tab va afișa lista de sisteme definite. Dacă utilizatorul nu apasă nici o tastă într-un interval prestabilit de timp, va fi pornit sistemul implicit.
O dată ales de către utilizator sistemul de operare Linux, încărcătorul de boot citește imaginea nucleului și îi cedează controlul. Nucleul identifică echipamentele cunoscute din sistem și încarcă driverele pentru ele, montează sistemul de fișiere rădăcină, iar apoi pornește o serie de scripturi care pregătesc mediul UNIX(începând cu scriptul init, care devine ulterior părintele tuturor proceselor). Astfel, sunt montate restul sistemelor de fișiere, este inițializată conexiunea la rețea (dacă există) și sunt pornite serviciile pe care le va oferi sistemul (cum ar fi serviciul de tipărire la imprimantă, serverul de baze de date, serverul Web ș.a.m.d.).
În timpul pornirii sistemului Linux pot fi remarcate o serie de mesaje care, de obicei, se derulează cu viteză pe ecran. Nu vă speriați! Acestea sunt normale și – nu în ultimul rând-utile. Primele mesaje afișate sunt cele generate de nucleu, după care urmează mesajele cauzate de pornirea serviciilor, despre care am discutat mai sus.
Mesajele generate de nucleul sistemului indică detectarea echipamentelor hardware de către driverele în cauză. Aceste mesaje sunt utile atât în vederea diagnosticării funcționării acestora, cât și pentru verificarea corectitudinii configurației în care a fost compilat nucleul. Mesajele nucleului pot fi revăzute ulterior prin apelul comenzii dmesg.
Mesajele legate de pornirea serviciilor sistemului conțin descrierea serviciului și un cod de succes al pornirii serviciului. Astfel, codurile afișate pot fi:
• OK — având culoarea verde și semnificând pornirea cu succes a serviciului;
• FAILED – având culoarea roșie, semnificând o pornire eșuată;
• PASSED – scris cu galben, atunci când pornirea unui serviciu a generat o eroare, aceasta putând fi însă corectată.
În funcție de configurație, sistemul va porni sistemul de autentificare a utilizatorilor, fie în mod text, fie în mod grafic (vezi infră).
Intrarea și ieșirea din sistem
Fiecare persoană căreia îi este permis să lucreze pe un sistem UNIX trebuie să posede un cont de utilizator pe respectivul calculator. Fiecare utilizator are asociat un set de drepturi, având astfel acces la o anumită serie de resurse ale sistemului. Acesta deține un director propriu, în care sunt stocate fișierele personale, inclusiv configurările aplicațiilor etc.
Orice sesiune de lucru UNIX începe cu autentificarea și acceptarea utilizatorului în sistem. Pentru a-i fi permis accesul, acesta trebuie să furnizeze numele său de utilizator și parola.
Intrarea în sistem grafic X Window va conduce la încărcarea mediului desktop preferat de utilizator {KDE sau GNOME) în configurația specifică acestuia, însoțit de programele configurate a fi pornite automat.
Ieșirea din sistem în cazul utilizării X Window se face prin selectarea opțiunii Logout, controlul fiind cedat sistemului de autentificare grafic sau consolei virtuale din care a fost lansat în execuție, după caz.
Intrarea la consolă se va realiza ca mai jos:
FIG 3.1. Sesiunea de login (conectare)
După introducerea corectă a parolei (care nu va fi afișată pe ecran), va fi pornită execuția interpretorului de comenzi.
Ieșirea din sistem (echivalând cu încheierea execuției interpretorului de comenzi) se face prin comanda exit sau logout. Poate fi folosită și combinația de taste Ctrl+D, care generează în UNIX/Linux codul pentru sfârșit de fișier (End Of File).Înainte de oprirea sistemului, toate programele în curs de execuție trebuie închise, deoarece este posibil ca acestea să piardă informații nesalvate. In acest sens, se recomandă verificarea tuturor terminalelor virtuale (vezi infra), pentru a nu exista aplicații pornite, înainte de oprirea calculatorului.
Este obligatorie apelarea procedurilor care vor fi descrise mai jos înainte de scoaterea sistemului de sub tensiune. închiderea forțată a calculatorului poate determina pierderea de informații!
Pentru oprirea sistemului din sistemul X Window, se va selecta opțiunea Logout, iar apoi – din sistemul de autentificare – opțiunea Shutdown (oprire) sau Reboot (repornire) – în unele versiuni Restart.
3.Selectarea pachetelor
La ultimele distribuții Linux , instalarea decurge fără probleme, chiar și pentru cei neinițiați, pînă la selectarea individuală a pachetelor de instalat, unde marea majoritate a începatorilor se pierd in numarul foarte mare de programe și optiuni. Desigur, se poate alege și un alt tip de instalare care sa nu mai necesite alegerea individuala a pachetelor. Dar sa nu uităm că tocmai aceasta posibilitate de a alege fiecare pachet în parte este unul din avantajele Linux-ului, el permitând astfel un control foarte mare al software-ului ce urmeaza a fi instalat pe sistem.
Componenetele Sistemului de Operare Linux
Datorită posibilității de a lucra cu mai multi utilizatori deodată, sistemul de operare Linux poartă denumirea de “sistem multiuser”..
Sistemul de operare Linux foloseste un sitem de procese numit multitasking pentru a aloca timpul de lucru al procesorului mai multor utilizatori in acelasi timp. In realitate nu este vorba de procese care se ruleaza in acelasi timp ci unele dupa altele la intervale de timp de ordinul milisecundelor.
Sistemul de operare aloca timpul in asa fel incat sa lase impresia de continuitate pentru fiecare utilizator. In timp ce unul dintre acestia lucreaza la terminalul sau el imparte cu ceilalti resursele de calcul.
Linux, ca oricare alt sistem de operare, este un set de programe care administreaza toate operatiile sistemului de calcul. El asigura de asemenea o interfata intre utilizator si resursele sistemului convertind cererile care vin de la mouse sau tastatura in operatii de efectuat in sistemul de calcul.
Majoritatea sistemelor de operare, inclusiv Linux, au trei mari componente: Kernel-ul, Shell-ul si Sistemul de Fisiere (FIG. 3.2). Kernel-ul administreaza operatiile computerului. Shell-ul asigura o interfata pentru interactiunea dintre utilizator si calculator iar sistemul de Fisiere asigura un mijloc de organizare si gestionare a informatiilor pe discurile hard ale calculatorului.
FIG 3.2. Componentele Sistemului de Operare
Kernel-ul sistemului de operare
Kernel-ul este inima sistemului de operare si ofera mijloacele primare necesare ca un system de calcul sa functioneze. Kernel-ul se afla cel mai aproape de CPU si hardware. Este un fisier executabil care se incarca atunci cand porneste calculatorul. Odata ce kernel-ul a fost incarcat el realizeaza urmatoarele functii:
Gestioneaza dispozitivele, memoria, si procesele.
Controleaza interactiunea (transmisia informatiei) dintre programele aplicatie (utilitati) si hardware-ul sistemului.
Administreaza functii precum: spatiul Swap, Demoni, si Sistemele de Fisiere.
Spatiul Swap – Este o parte rezervata de pe hard disk pentru kernel, acesta utilizând-o in timpul procesarii. Portiuni de programe care ruleaza pot fi “aruncate” hard disk-ului si apoi, la nevoie, aduse inapoi. Acest spatiu swap se afla in realitate pe hard disk, insa seamana cu o memorie aditionala sau RAM additional, uneori fiind numit memorie virtuala.
Demonii – Programe sau procese care realizeaza o sarcina particulara sau monitorizeaza discurile sau executia programelor. Demonii sunt procese speciale care pornesc dupa ce se incarca sistemul de operare. Demonii asteapta apoi sa faca ceva in sprijinul SO. Pot fi porniti sau opriti daca este necesar. Un exemplu este cel al demonului imprimantei, lpsched (line printer scheduler). Acesta se lanseaza cand sistemul porneste si apoi asteapta in fundal pana cand cineva are nevoie sa tipareasca ceva. Demonii din lumea Linuxului sunt similari cu Serviciile din Windows NT/2000 sau cu NetWare Loadable Modules (NLMs) din Novell NetWare.
Sistemele de fisiere – Reprezinta o ierarhie de directoare, subdirectoare si fisiere care organizeaza si administreaza informatia pe hard disk-uri. Sistemele de fisiere pot fi locale sau pe alta masina (de obicei server).
Shell-ul
Un shell este o interfata intre utilizator si kernel. Actioneaza ca un interpretor sau ca un translator. Cu alte cuvinte, shell-ul accepta comenzi scrise de utilizator, le interpreteaza, si apoi executa programele corespunzatoare. Shell-urile pot fi linie de comanda sau grafice. Pentru a verifica ce shell utilizezi la un moment dat se poate folosi comanda ps (process status) (FIG. 3.3).
Shell-ul citeste si interpreteaza cererile introduse de utilizator. Apoi comunica instructiuni kernel-ului care duce la indeplinire cererile formulate de utilizator. Shell-ul este deci legatura directa, interfata directa a utilizatorului cu sistemul de operare. De obicei, cele mai multe cereri sunt pentru a rula programe.
FIG 3.3. Shell-ul
Componentele sistemului de operare Linux pot fi vazute la lucru prima data in sesiunea de logare (conectare). Programul de login citeste si verifica parolele. Daca parola este corecta utilizatorul identificat prin username (nume de utilizator) este admis in sistem (FIG. 3.4).
Sarcina programului de login este aceea de a verifica parola introdusa de utilizator.
Pentru a realiza aceasta sarcina programul comanda kernel-ului sa aduca de pe disk fisierul de parole si sa-l puna in memorie pentru a putea fi citit. Dupa aceasta operatie are loc validarea parolei. In urma validarii utilizatorul este primit (logged) in sistem si are la dispozitie shell-ul ca interfata cu utilitatile oferite de SO si resursele sistemului.
Prompt-ul $ care apare pe ecran arata faptul ca shell-ul este gata sa accepte comenzi.
Shell-ul se comporta ca un interpretor de comenzi, interpretand comenzi simple pentru a executa procese complexe. De exemplu, pentru a vizualiza continutul disponibil al directorului proiectului Calder se tasteaza comanda ls calder .
Orice utilizator primeste un shell dupa executarea cu succes a procesului de login. Fiecare shell comunica cu kernelul si se comporta ca un interpret intre utilizator si kernel.
Comenzile utilizatorului sunt receptionate de către shell. Aceste le traduce si comunica comenzile kernelului care, la randul sau proceseaza cererea si indeplineste sarcinile.
Sistemul de fișiere
Sistemul de fisiere asigura o modalitate de a separa si de a organiza informatia pe un hard disk. Structura de fisiere a sistemului Linux este o ierarhie de directoare, subdirectoare si fisiere care sunt grupate in functie de anumite scopuri. Sistemul de fisiere este integrat cu Kernel-ul in scopul asigurarii unei structuri organizatorice pentru software-ul si pentru datele utilizatorilor. Structura de fisiere subdivide hard disk-urile, facandu-le mai usor de administrat si usurandu-ne localizarea fisierelor. Hard disk-urile pot fi divizate in sisteme de fisiere, directoare, subdirectoare si fisiere. Sistemul de fisiere organizeaza datele intr-un mod similar unui dulap. Sistemul de fisiere este dulapul, directoarele sunt asemenea sertarelor, subdirectoarele asemenea dosarelor isr fisierele pot fi asemanate u foile prinse in dosar.
Un fisier este o colectie de informatii (date, o aplicatie, sau documente). In Linux un fisier poate cuprinde orice. Cand se creeaza un fisier, Linux-ul ii atribuie acestuia un numar de identificare intern unic. Acest numar de index este utilizat pentru a putea localiza fisierul pe hard disk.
Deci, un sistem de fisiere este un ansamblu de fisiere si directoare. Sistemele de fisiere sunt dependente de dimensiunea si structura discului, precum si de structura interna a Linuxului. Intr-un sistem multiuser (multi utilizator), poate exista la un moment dat un numar mare de fisiere stocate. Din aceasta cauza, utilizatorii au nevoie de un sistem care sa le permita identificarea rapida si simpla a fisierelor.
De obicei, directoarele si fisierele utilizatorilor se afla stocate pe un alt sistem de fisiere decat cel pe care se afla directoarele si fisierele sistemului de operare. Daca exista un numar mare de utilizatori atunci fisierele utilizatorilor se pot intinde pe mai mult de un sistem de fisiere.
Sistemul de fisiere se refera la modul in care Linuxul implementeaza fisierele si directoarele. In Linux, un sistem de fisiere are urmatoarele caracteristici:
-structura ierarhica
-fisierele sunt expandabile (la nevoie pot sa-si mareasca dimensiunea)
-fisierele sunt tratate ca fluxuri de bytes
-fisierele si directoarele au asociate drepturi de securitate
-fisierele pot fi utilizate in comun de mai multi utilizatori
-dispozitivele hardware sunt tratate ca si fisiere
Sistemul de operare Linux permite utilizatorilor sa grupeze fisierele intre ele in interiorul directoarelor, iar directoarele sa le grupeze la randul lor in alte directoare pentru o mai buna organizare.
Rezultatul este cunoscut ca fiind un Sistem ierarhic de fisiere (arborescent).
O ierarhie de directoare seamana cu un copac intors cu radacina in sus. Iata o ierehie a sistemului de fisirere Linux :
FIG 3.6. O structura arborescenta de fisiere
Sistem de fisiere – Un grup de directoare ca poate fi imaginat ca o structura arborescenta separata. Un hard disk poate fi impartit in mai multe sisteme de fisiere separate similare partitiilor logice din sistemele Windows/DOS (asemenea drive C: sau D: ) sau similare volumelor din sistemele Novell NetWare. Sistemele de fisiere pot fi montate sau demontate in functie de necesitatile administratorului. Fiecare sistem de fisiere are propria sa structura de directoare iar in plus poate fi local (pe calculatorul in cauza) sau pe alt calculator.
Director – Un loc pentru alte subdirectoare sau fișiere. Un director este asemenea unui sertar dintr-un dulap de acte. Cel mai de sus director din structura este directorul radacina, reprezentat print-un singur slash (/).
Subdirector – Orice director aflat sub alt director. De exemplu, unele dintre directoarele de sub directorul radacina (root) sunt /usr, /etc si /kernel.
Fisiere – Fisierele sunt continute in directoare si subdirectoare. Ele reprezinta cel mai jos nivel al sistemului de fisiere. Exista de obicei mii de fisiere pe hard disk, de diferite tipuri:
ASCII – (American Standard Code for Information Interchange) aceste fisiere sunt fisiere text simple.
Fisiere aplicatie – Aceste fișere sunt create de o aplicație cum ar fi un Procesor de text un program de baze de date sau un program de calcul tabelar.
Programe executabile – Acestea sunt comenzi Linux sau diferite programe de aplicații.
4 Structura arborescentă a directoarelor în Linux
Directorul din varful structurii unui sistem de fisiere se numeste director rădăcina. Reprezinta punctual de plecare în ierarhia respectivă. Directorul radacina (/) este indispensabil pentru că sistemul de operare sa functioneze; el contine fisiere sistem critice (cum ar fi kernelul). In continuare prezentăm o lista a celor mai importante directoare si rolul acestora in sistem. Slash-ul (/) din față indică faptul că sunt subdirectoare ale directorului rădacină.
/bin
Comenzi necesare in timpul procesului de bootare si care ar putea fi folosite de utilizatorii obisnuiti (probabil dupa bootare).
/sbin
Ca si /bin, insa comenzile nu sunt pentru utilizatori obisnuiti, desi acestia le-ar putea folosi la nevoie daca li se permite.
/etc
Fisiere de configurare specifice.
/root
Directorul propriu al utilizatorului radacina (root).
/lib
Librarii necesare programelor din sistemul de fisiere root.
/lib/modules Module kernel incarcabile, in special acelea care sunt necesare pentru a boota atunci cand se incearca recuperarea dupa dezastre.
/dev
Fisiere dispozitiv.
/tmp
Fisiere temporare. Programele care ruleaza dupa incarcare (bootare) ar trebui sa utilizeze /var/tmp si nu /tmp, atat timp cat primul se afla probabil pe un disc cu mai mult spatiu.
/boot
Fisiere utilizate de bootstrap loader, de exemplu LILO. Imaginile Kernel sunt tinute adesea aici in loc de directorul radacina. Daca exista mai multe imagini ale kerneleului, directorul poate deveni foarte mare, de aceea este de recomandat sa fie tinut intr-un sitem de fisiere separat.
/mnt
Puncte de montare pentru montari temporare facute de administratorul de sistem. /mnt ar trebui sa fie impartit in subdirectoare (de exemplu, /mnt/dosa ar fi floppy driver-ul ce utilizeaza un sistem de fisiere MS-DOS, iar /mnt/exta ar fi acelasi cu un sistem de fisiere ext2).
/usr
Contine comenzi executabile, utilitati diverse si diferite librarii.
/var
Contine log-uri, mesaje de eroare, o serie intreaga de utilitati folosite pentru imprimare, sistemul de posta electronica, DNS, etc.
/home
Contine directoarele utilizatorilor.
/etc
/etc/rc or /etc/rc.d or /etc/rc?.d Scripturi sau directoare de scripturi care se ruleaza la start sau atunci cand se schimba rnlevel-ul.
/etc/passwd aza de date cu utilizatorii; contine campuri cu numele utilizatorilor, numele lor real, directorul propriu (home), parola codificata precum si alte informatii despre fiecare utilizator.
/etc/fstab Listeaza sistemele de fisiere montate automat la start de catre comanda mount -a (in /etc/rc sau in fisierul de start echivalent. Contine, de asemenea si informatii despre zonele swap.
/etc/group Similar cu /etc/passwd, insa descrie grupurile in loc de utilizatori.
/etc/inittab Fisierul de configurare pentru init.
/etc/motd Mesajul zilei, prezentat in mod automat dupa un login corect. Continutul poate fi stabilit de administratorul de sistem.
/etc/mtab Lista sistemelor de fisiere montate curent.
/etc/shadow Apare in sisteme in care este instalat software-ul pentru shadow password (parole ascunse). Parolele codificate sunt mutate din /etc/passwd in /etc/shadow; acesta din urma nu poate fi citit decât de rădăcină.
/etc/profile, /etc/csh.login, /etc/csh.cshrc Fisiere executate la login sau start de catre shell-urile Bourne sau C. Aceste fisiere permit administratorului sa stabileasca anumiti parametrii globali pentru toti utilizatorii.
/dev
Directorul /dev contine fisierele speciale dispozitiv pentru toate dispozitivele. Fisierele dispozitiv sunt denumite dupa anumite conventii. Fisierele dispozitiv sunt create in procesul instalarii, iar ulterior cu scriptul /dev/MAKEDEV.
/usr
Este de obicei foarte mare, atata timp cat oate programele sunt instalate aici. Toate fisierele din /usr vin de obicei din distributia Linux; programele instalate local merg sub /usr/local.
/usr/X11R6 Sistemul X Window, toate fisierele. Pentru a simplifica instalarea si dezvoltarea X, fisierele X nu au fost integrate in restul sistemului. Exista un arbore de directoaresub /usr/X11R6 similar cu cel de sub /usr.
/usr/bin Aproape toate comenzile pentru utilizatori. Unele comenzi sunt in /bin sau in /usr/local/bin.
/usr/sbin Comenzi de administrare a sistemului, de exemplu majoritatea programelor pentru server.
/usr/man, /usr/info, /usr/doc Pagini de manual, documentatie diversa.
/usr/lib fișiere de date neschimbate pentru programe si subsisteme. Numele lib (library) vie de la biblioteca; initial, bibliotecile cu subrutine pentru programare erau stocate in /usr/lib.
/usr/local Locul pentru software instalat local si alte fișiere.
/var
Contine date care sunt schimbate atunci cand sistemul functioneaza normal.
/var/catman O zona cache pentru paginile man formatate la cerere. Sursa pentru paginile de manual este de obicei stocata in /usr/man/man.
/var/local Variabile pentru programe care sunt instalate in /usr/local (de exemplu, programele care au fost instalate de catre administratorul de sistem).
/var/log Fisiere log din diferite programe, in special login (/var/log/wtmp, care contine toate login-urile si toate logout-urile din sistem) si syslog (/var/log/messages, unde sunt stocate de obicei toate mesajele ce vin de la kernel si de la programele de sistem). Fisierele din /var/log pot adesea sa creasca pana la dimensiuni foarte mari, de aceea este necesar sa fie curatate la intervale regulate.
/var/run Fisiere care contin informatii despre sistem ce sunt valabile pana la urmatoarea incarcare a sistemului.
/var/spool Directoare pentru mail, cozile imprimantei, alte procese care necesita cozi de asteptare.
/var/tmp Fișiere temporare care sunt de dimensiuni mari sau care au nevoie sa existe si in afara timpului permis de catre /tmp.
/proc
Conține un sistem de fisiere iluzoriu. El nu exista pe disk. In schimb, kernel-ul il creaza in memorie. Este folosit pentru a asigura informatii despre sistem.
O imagine a memoriei fizice a sistemului. Are exact dimensiunea memoriei fizice insa nu ocupa atat de multa memorie; este generata pe parcursul rularii programelor. (Amintiti-va: daca nu copiati in alta parte, nimic de sub /proc nu ocupa spatiu pe disk deloc.)
/proc/cpuinfo Informatii despe procesor: tip, model, performanta.
/proc/devices Lista driverelor pentru dispozitive configurate in kernel.
5 Comenzi
Sintaxa comenzilor
Sintaxa se refera la structura comenzii si specifica optiunile si argumentele permise. Forma generala a unei comenzi Linux este:
$ comanda [-optiune(i)] [argument(e)]
Obs.: Ce este in paranteza inseamna elemente optionale, adica nu sunt intotdeauna necesare.
Comanda: Program executabil (specifica ce doresti sa faca sistemul)
Optiune(i): Modifica executabilul (cum doresti sa ruleze sistemul comanda)
Argument: Fisier sau director, incluzand calea sau un text. Daca nu este prevazuta calea atunci sistemul de operare va utiliza directorul curent.
Trebuie utilizat un spatiu ca delimitator intre fiecare parte a comenzii introduse. Comenzile in Linux sunt ntotdeauna scrise cu litere mici (lower case). Optiunile sunt de obicei formate dintr-o singura litera precedata de o liniuta (semnul minus). Optiunile multiple pot fi combinate utilizand doar o singura liniuta. Optiunile pot fi scrise cu litere mari sau litere mici in functie de ceea ce se dorește sa se faca.
Datorită numărului mare de distributii de Linux lista cu absolut toate comenzile ar fi foarte lungă, dar ele vor putea fi cuprinse într-un suport electronic ce va însoți această lucare . Pentru ajutor asupra comenzii este necesar sa folositi comanda "man comanda" si pagina manualului va fi deschisa numaidecat. Eventul, puteti incerca si ajutorul programului in sine( ls –help) prin trecerea unor parametrii la linia de comanda( nume_executabil –help sau nume_executabil -h).
5.1 /bin
Aici se găsesc comenzile de baza pe care toti utilizatorii au dreptul sa le execute.
Administrarea conturilor utilizatorilor
Un cont reprezintă toate fișierele, resursele și informațiile care aparțin unui utilizator.
Cele mai multe distribuții Linux vin cu un program pentru crearea conturilor. Există cateva astfel de programe disponibile. Doua alternative din linie de comanda sunt adduser si useradd; pot exista, de asemenea si instrumente din interfata grafică.
Baza de date elementara din Linix este un fisier text, /etc/passwd (numit fisierul parole), care listeaza toti utilizatorii vazilizi impreuna cu informatiile asociate lor. Fisierul are cate o linie pentru fiecare nume de utilizator si este impartit in sapte campuri:
Utilizator.
Parola, in forma incriptata.
ID numeric pentru utilizator.
ID numeric pentru grup.
Numele intreg si alte descrieri ale contului.
directorul home.
Shell-ul de conectare.
Stabiliti parola cu comanda passwd.
Dupa ce stabiliti parola contul va fi functional. Nu ar trebui sa stabiliti parola până cand nu ați ajuns la final, altfel utilizatorul ar putea sa se conecteze inainte ca dumneavoastra sa fi terminat de copiat fisierele.
Exista o serie de comenzi care pot sa scrie/citeasca fisiere dar numai utilizatorul root are drepturile respective; insa sunt utilizate si de alti utilizatori.
Un exemplu il reprezinta comanda "passwd" folosita pentru a schimba parola.
Când utilizatorul X decide sa-si modifice parola el doar scrie comanda "passwd", apoi i se cere sa scrie vechea parola o data (pentru a fi sigur ca persoana care modifica parola este utilizatorul insasi si nu o alta persoana care profita de conexiunea uitată deschisa a unui utilizator si apoi cere de doua ori parola noua)
Drepturi de acces
Linux are un sistem de drepturi foarte complex. Fiecare fișier are un proprietar și drepturi de acces care specifică cine are drepturi să citească să scrie sau să execute fișiere. Linux face diferența între drepturi de acces pentru proprietarul fișierului, membrii unui grup și toți ceilalți useri din sistem. Ca deobicei, root, are dreptul să facă orice, așadar trebuie să aveți mare grijă cu comenzile pe care le vom vedea în acest articol.
-chmod vă permite să modificați drepturile de acces la fișiere, presupunând că sunteți proprietarul fișierului sau administratorul sistemului. Ca user root, îi puteți aloca fișierului un nou proprietar cu ajutorul comenzii chown. Dacă doriți să alocați drepturile de acces implicite, răspunsul este comanda umask.
Useri sj grupuri
Există trei modalități de a controla drepturile de user. Mai întâi, există drepturi pentru proprietarul fișierului, apoi pentru un întreg grup de useri (puteți aloca fiecare fișier unui singur grup) și pentru toți ceilalți useri din sistem care nu intră în niciuna din aceste categorii.
Principiul organizării mai multor useri în grupuri are foarte multe avantaje.Membrii unui grup au aceleași drepturi Comanda ls cu flag-ul -l nu afișează doar numele fișierului, ci și tipul acestuia,drepturi, proprietar, grup și dimensiune.
Literele și cratimele din prima coloană a acestui output, reprezentând drepturile de access pentru fișier. Cea de-a treia coloană arată proprietarul (user huhn), apoi grupul (video sau users).Drepturile sunt foarte ușor de descifrat:
-primul caracter arată tipul fișierului. O cratimă indică un fișier “normal”, d vine de la “director”: celelalte posibilități fiind b (block device), c (character device), l (symbolic link), p (FIFO file, named pipe),sau s (Unix domain socket).
-următoarele trei grupuri pot conține fiecare câte trei litere: r (read – citire),w (write – scriere) și x (execute – executare).
O cratimă în loc de literă înseamnă că dreptul nu a fost atribuit.Primul grup de trei este pentru proprietarul fișierului, cel de-al doilea pentru grup, iar cel de-al treilea pentru ceilalți useri.
Totuși, există mai multe drepturi, nu doar de citire, de scriere și de executare. De exemplu octeții s și t. Octetul s (setuid) este un caz special pentru fișierele executabile. Dacă setați acest octet pentru proprietar sau pentru grup, acesta va apărea în locul lui x în outputul ls. Când executați un fișier care are setat octetul s, Linux va rula fișierul cu drepturile alocate grupului și/sau proprietarului fișierului. Setarea octetului s pentru programe care aparțin lui root poate presupune un risc considerabil în ceea ce privește securitatea,deoarece le permite userilor obișnuiți să ruleze fișierul ca și cum ar fi userul root. Octetul s are un alt sens pentru directoare. Să presupunem că aveți un grup de useri care lucrează toți în același departament .Administratorul poate crea un grup pentru acești useri. Apoi, poate crea un director, îl alocă noului grup și setează octetul s pentru grup. Toate noile fișiere create în acest director ar aparține automat acestui grup. Octetul t este cunoscut și ca sticky bit. Acesta înlocuiește și flag-ul x din output-ul ls, la fel ca octetul s. Sticky bit nu e folosit foarte des pentru programe, unde îi spune sistemului să păstreze un program în memorie după executare, în loc să elibereze memoria (aceasta este o metodă de a lansa mai rapid programele). Octetul t are un efect complet diferit asupra directoarelor.
În mod normal se poate șterge orice fișier dintr-un director în care aveți drepturi de scriere, chiar dacă acest fișier aparține unui alt user. În directoarele cu acces partajat, cum este /tmp, care salvează fișiere pentru mai mulți useri, e bine să setați octetul t. Deși userii au drepturi de scriere pentru director, își pot șterge doar propriile fișiere (și toate fișierele pentru care au explicit drepturi de scriere). Octetul t îl afectează șipe proprietarul directorului, acesta putând șterge orice fișier din director.
Comanda chmod așteaptă noile drepturi de acces și, ca parametri, unul sau mai multe fișiere care trebuie modificate. chmod reccunoaște două metode de descriere a drepturilor: cea simbolică și cea în baza opt.Metoda simbolică pentru scrierea parametrilor folosește literele u (pentru “user”), g (pentru “grup”) și o (pentru “others” – ceilalți) pentru a specifica ce drepturi trebuie schimbate. Puteți folosi combinații din aceste litere, introducându-le fără spațiu între ele. Urmează (din nou fără spațiu) fie un + (dacă adăugați drepturi),fie un – (dacă eliminați drepturi), fie un = (pentru a aloca drepturile definite în comandă). Ultimul parametru specifică drepturile: r, w, x, s și t.
Se poti combina mai multe etape – chmod ug=rx,u+s file alocă mai întâi drepturi de citire și executare proprietarului și grupului, apoi setează octetul s pentru proprietar: Dacă doriți să schimbați drepturile pentru proprietar, grup și ceilalți, nu e nevoie să tastați ugo. Folosiți în schimb a (pentru “all” – toți).
Pe lângă metoda simbolică, bazată pe litere, chmod are și o variantă care folosește numere în baza opt din trei sau patru cifre. Astfel puteți realoca toate drepturile folosind doar o singură comandă. În loc de u, g și o, chmod așteaptă numere cum sunt cele din Caseta 3. Numerele exprimă suma dintre 4 (drept de citire), 2 (drept de scriere) și 1 (drept de executare). Cu alte cuvinte, trebuie să adunați drepturile pe care doriți să le alocați proprietarului, grupului și celorlalți. Drepturile de scriere și citire sunt exprimate colectiv ca fiind 4+2=6. Primul număr se aplică proprietarului, cel de-al doilea grupului, iar cel de-al treilea celorlalți. Prin urmare, 644 înseamnă -rw-r-r–, iar 777, rwxrwxrwx. De asemenea, puteți folosi flag-uri speciale, cum ar fi octeții s și t, ca numere în baza opt. Pentru a face acest lucru, doar plasați un alt număr în fața grupului de trei: 4 reprezintă octetul s pentru proprietar, 2 octetul s pentru grup, iar 1 octetul t. Următoarea linie: chmod 4755 file setează drepturile la rwsr-xr-x – toți userii au dreptul să citească și să execute fișierul,
iar octetul s e setat pentru proprietar
Sepoate spune lui chmod să acționeze recursiv adăugând parametrul -R. Dacă doriți să eliminați drepturile unui grup pentru un director, subdirectoarele acestuia și și toate fișierele pe care acestea le conțin, tastatați:
chmod -R g-w directory
Flag-ul x trebuie setat pentru a se putea trece într-un director. Asta înseamnă că o comandă ca chmod -R 600 directory va da în curând un mesaj de tipul Permission denied message. Iată ce se întâmplă în interior: înainte ca comanda să ajungă la primul fișier din director, aceasta va fi setat drepturile pentru director la 600.
Console virtuale
Consola sistemului este alcatuita din tastatura si monitor (care sunt conectate direct la calculator). Totusi este posibil pentru un utilizator sa foloseasca mai multe console virtuale, putand deschide astfel mai multe sesiuni de lucru simultan! Pentru aceasta apasati tastele Alt-F2, iar la promptul login, introduceti numele si parola dvs. In acest moment ati deschis inca o sesiune de lucru !
Apasand Alt-F1, reveniti inapoi la prima sesiune. De regula sunt activate 7-8 console virtuale, dar pot fi activate mult mai multe 12, 24, sau chiar mai multe. Pentru a comuta pe consola 5 (de exemplu) se apasa combinatia de taste Alt-F5, s.a.m.d.. Nu uitati sa faceti "logout" din fiecare la incheierea sesiunii de lucru.
In acest scop comanda "w" poate fi utila, furnizand informatii despre consolele virtuale folosite.
In exemplul de mai jos se poate observa ca utilizatorul gxg foloseste consolele 1 si 2 (corespunzatoare combinatiilor Alt-F1 si Alt-F2), utilizatorul root consola 3 (Alt-F3), utilizatorul stud foloseste consola 7 (Alt-F7), iar utilizatorul stud2 este conectat la calculator prin retea.
Consola 1 se numeste "tty1", consola 2 "tty2", s.a.m.d..
Documentatie si manual. Comanda man.
Una dintre cele mai importante facilitati in Linux este manualul on-line!Astfel aproape fiecare comanda Linux este insotita de manual!Manualul poate fi accesat folosind comanda man, in felul urmator:
Exemplu:
[gxg@x gxg]$ man passwd
Lansarea in executie a unui program
Promtul "$" arata ca sistemul este pregatit sa accepte comenzi de la utilizator.
Pentru a lansa in executie un program trebuie sa se tasetze numele fisierului care contine codul executabil.
Exemplu:
[gxg@x /]$ pine
Informatiile din paranteza au urmatoarea semnificatie:
gxg@x inseamna utilizatorul "gxg" inregistrat la calculatorul cu numele "x"
"/" inseamna directorul curent (in acest caz este radacina)
Toate aceste informatii impreuna cu semnul $ formeaza promptul.
La unele sisteme, el poate avea mici modificari! Astfel, inainte de semnul "$" poate aparea numai numele calculatorului, fara numele utilizatorului, dar acestea sunt setari care se pot schimba.
Aceasta comanda este echivalenta cu :
[gxg@x /]$ /usr/bin/pine
/usr/bin/pine reprezinta calea completa spre fisierul (executabil) pine. In exemplul precedent este optionala deoarece sistemul cauta fisierul "pine" intr-o lista de directoare (specificate dinainte desigur), printre care si "/usr/bin".
Exista si comenzi care trebuiesc lansate specificand (numai) numele complet!
In caz contrar pe ecran apare mesajul de eroare "command not found", cu alte cuvinte sistemul nu stie unde este programul respectiv.
Exemplu:
[gxg@x /]$ /sbin/repquota
Usage:
repquota [-v] [-g] [-u] -a
repquota [-v] [-g] [-u] filesys …
[gxg@x /]$ repquota
bash: repquota: command not found
De regula principalele comenzi folosite in Linux sunt puse in directorul "/bin" sau "/usr/bin", iar sistemul este configurat sa caute aceste comenzi in directoarele amintite.Un mod interesant de a ajuta utilizatorul este tasta "Tab"! Tastati cateva caractere dintr-o comanda si apoi apasati tasta "Tab". Sistemul va completa pentru dumneavoastra numele comenzii!
In cazul in care incep mai multe comenzi cu caracterele precizate, ve-ti auzi un bip, iar daca mai apasati inca o data veti vedea pe ecran toate posibilitatile. Exersand, veti observa ca aceasta tasta "Tab" este rapida, si foarte utila in cazurile in care nu va amintiti exact unele comenzi.
Exemplu:
[gxg@x bin]$ ps2
ps2ascii ps2epsi ps2pdf
[gxg@x bin]$ le
less lessecho lesskey let lex
[gxg@x bin]$
Redirectarea iesirii unei comenzi
In unele cazuri este de dorit ca informatia produsa de o comanda (afisata pe ecran) sa fie directata intr-un fisier. Pentru aceasta, la sfarsitul comenzii adaugati semnul ">" urmat de numele fisierului care va fi creat si va contine aceasta informatie. Pe ecran nu va mai fi afisata aceasta informatie!
Atentie: Daca redirectati output-ul unei comenzi intr-un fisier care deja exista, tot continutul lui va fi suprascris!
Exemplu:
gxg@x gxg]$ ls -l > ls.txt
gxg@x gxg]$
Lansarea in background a unui program
Datorita posibilitatii de a lucra cu mai multi utilizatori deodata, sistemul poarta denumirea de “sistem multiuser”.
Sistemul de operare Linux este si un sistem multitasking, ceea ce inseamna ca mai multe programe (procese) pot rula simultan.
Acest sistem de procese numit multitasking este utilizat pentru a aloca timpul de lucru al procesorului mai multor utilizatori in acelasi timp. In realitate nu este vorba de procese care se ruleaza in acelasi timp ci unele dupa altele la intervale de timp de ordinul milisecundelor.
Sistemul de operare aloca timpul in asa fel incat sa lase impresia de continuitate pentru fiecare utilizator. In timp ce unul dintre acestia lucreaza la terminalul sau el imparte cu ceilalti resursele de calcul.
Exista doua moduri de a lansa in executie un program: foreground (in fata) si background (in spate). Modul foreground este asociat cu programele interactive, care necesita interventia utilizatorului (de la tastatura) si ii transmite informatii pe monitor. De regula, programele lansate de utilizator sunt lansate in modul acesta.
Opus modului foreground, modul background este asociat de regula cu acele programe care nu necesita interventia utilizatorului in timpul desfasurarii lor. Totusi orice program poate fi lansat in executie in fiecare mod.
Un program se lanseaza in backgroung adaugand semnul "&" la sfarsitul comenzii.
Exemple de programe care pot fi lansate in foreground sau background
Programul de posta electronica "pine" este un program care prezinta meniuri utilizatorului, acesta putand alege intre a citi posta primita, a trimite un nou e-mail, a tipari un mesaj, etc. El este exemplul ideal de program care ruleaza in foreground.
Programul care primeste posta electronica din retea si o distribuie fiecarui utilizator este un proces care ruleaza in background.
Un program poate fi lansat in background in felul urmator:
Exemplu:
[gxg@x /]$ tar -zcf ~/test.tgz /usr/doc/* &
[1] 1119
[gxg@x /]$
Avantajul lansarii unui program in background este posibilitatea utilizarii calculatorului si in timp ce procesul respectiv ruleaza. In exemplul precedent am folosit comanda tar (utila pentru arhivare/dezarhivarea fisierelor) ("-zcf ~/test.tgz /usr/doc/*" sunt parametrii comenzii "tar" iar semnul "&" semnifica lansarea in background).
Sistemul raspunde "[1] 1119" si apoi afiseaza promptul asteptand alta comanda (in timp ce prima ruleaza!) ([1] inseamna ca este primul proces lansat in background iar 1119 este identificatorul de proces).
Manipularea proceselor. Comenzile "jobs", "fg", "bg", "ps", "kill"
Asupra unui proces, odata pornit, se pot efectua urmatoarele operatii:
Terminarea
Suspendarea
Reluarea unui proces suspendat
Mutarea in background
Aducerea in foreground
Listarea proceselor
Comanda jobs va arata programele lansate in background de la terminalul curent.
[gxg@x /]$ jobs
[1]- Running yes >/dev/null & (wd: ~)
[2]+ Running tar -zcf ~/test2.tgz usr/doc/* &
[gxg@x /]$
Pentru a vedea procesele pornite si de la alte terminale puteti folosi comanda ps: Comanda "ps" (prescurtare de la Processes Status) este mai tare decat "jobs". Pentru manipularea unui proces este necesara cunoasterea identificatorului procesului (PID) furnizat de aceasta comanda.
[gxg@x gxg]$ ps
PID TTY STAT TIME COMMAND
287 1 S 0:00 -bash
288 2 S 0:00 -bash
329 2 S 0:00 /usr/bin/mc -P
331 p0 S 0:00 bash -rcfile .bashrc
335 1 R 0:00 ps
[gxg@x gxg]$
Terminarea
In unele sitatii este de dorit oprirea fortata a proceselor inainte de terminarea lor fireasca. Dupa terminarea procesului memoria ocupata se elibereaza. Pentru aceasta se foloseste comanda "kill".
[gxg@x gxg]$ ps
PID TTY STAT TIME COMMAND
287 1 S 0:00 -bash
288 2 S 0:00 -bash
289 3 S 0:00 -bash
329 2 S 0:01 /usr/bin/mc -P
331 p0 S 0:00 bash -rcfile .bashrc
348 1 S 0:01 top
362 3 R 0:00 ps
[gxg@x gxg]$ kill 348
[gxg@x gxg]$ ps
PID TTY STAT TIME COMMAND
287 1 S 0:00 -bash
288 2 S 0:00 -bash
289 3 S 0:00 -bash
329 2 S 0:01 /usr/bin/mc -P
331 p0 S 0:00 bash -rcfile .bashrc
363 3 R 0:00 ps
[gxg@x gxg]$
Daca programul este in foreground (accepta comenzi de la tastatura), atunci el (de regula) se poate opri folosind combinatia de taste Control-C. Cele doua metode sunt echivalente pentru ca in fiecare caz sistemul trimite procesului respectiv semnalul "TERM" pentru incheierea programului.
Suspendarea
Suspendarea unui proces inseamna oprirea lui temporara, cu posibilitatea continuarii rularii sale. Spre deosebire de terminare, programul "ingheata" in starea sa la momentul suspendarii, iar memoria ocupata cu acest proces NU este eliberata.
Pentru suspendarea unui program care ruleaza in foreground se poate apasa Control-Z. Daca programul ruleaza in background, pentru stoparea sa trebuie data comanda "kill" cu parametrul "-STOP"
$ kill -STOP 435
435 reprezinta identificatorul procesului care se doreste a fi stopat.
Acest identificator il puteti afla folosind comanda "ps"
Reluarea unui proces suspendat
In mod analog cu comenzile anterioare, "kill -CONT" permite continuarea unui proces suspendat. Aceasta continuare se va face in background. Doua comenzi utile sunt "fg" si "bg": Comanda "fg" continua in foreground un proces intrerupt, iar comanda "bg" in background.
Aducerea unui proces in foreground
Daca procesul este stopat sau ruleaza in background, aducerea lui in foreground se face folosind comanda "fg". Daca sunt mai mult de 2 procese in aceasta stare, comanda "fg" (sau "bg") trebuie urmata de un numar in felul urmator:
[gxg@x gxg]$ jobs
[1] Stopped yes
[2]- Stopped yes
[3]+ Stopped grep k
[gxg@x gxg]$ fg 3
grep k
(Ctrl+Z)
[3]+ Stopped grep k
[gxg@x gxg]$
Dupa cum se vede din exemplul anterior, procesele sunt numerotate in ordine crescatoare, iar numarul corespunzator fiecarui proces il putem afla folosind comanda "jobs". Acest numar este diferit de PID (identificatorul procesului) aflat prin comanda "ps" (Processes Status).
Mutarea unui proces in background
Pentru a muta un proces (care ruleaza in foreground) in background, se poate proceda in felul urmator: apasati Control-Z pentru a opri procesul. In acest moment procesul este suspendat. Tastati comanda "bg" pentru a continua in background procesul stopat. Pentru aducerea lui in foregroung, tastati comanda "fg".
Utilitatea platformelor Linux
Virtualmente, toata gama de utilitare disponibile in implementarile UNIX standard au fost portate si pe Linux. Linux este deci un mediu familiar pentru toti utilizatorii de UNIX, care pot sa-si fo-loseasca in intregime experiența de lucru cu sistemul preferat.
Linux dispune de multe editoare de texte, incepand cu clasicul vi, trecand prin joe, editorul Emacs, un mediu pentru editare integrat, cu acces la posta electronica si stiri, cu facilitati de macroprelucrare bazate pe LISP.
Este important de notat ca toate utilitarele sunt software GNU, cu facilitati deosebite, de negasit in versiunile BSD sau AT&T. Pe de alta parte, aceste utilitare raman compatibile cu originalele, iar multi le considera superioare.
Instrumentele de editare de care dispune pot fi utilizate pentru redactarea materialelor educaționale(suport de curs și/sau de laborator, teme, teste, chestionare și altele), în formate precum LaTeX sau HTML (HyperText Transfer Protocol).
Fiecare manager de ferestre pune la dispoziție o serie de editoare de texte, mai simple sau mai bogate în facilități. De exemplu, pentru KDE (K Desktop Environment), sunt oferite programele KEdit, Kate sau KWrite, iar pentru GNOME (GNU Network Object Management Environment) –GEdit. Sunt oferite posibilități de copiere a fragmentelor de text între diverse documente, colorarea textului în funcție de tipul de fișier (syntax highlighting), indentarea codului sursă,căutarea și înlocuirea textului Unul dintre editoarele de texte foarte puternice este GNU Emacs. El a fost creat de către Richard Stallman, prima versiune funcțională apărând în anul 1985. Emacs nu este doar un editor de texte extensibil. Din Emacs se pot compila programe, se pot executa și depana programe, se poate citi emailul ș.a.m.d. Extensiile Emacs sunt scrise în limbajul Lisp.
Pentru realizarea unei editări la nivel procesionist a textului, incluzând – printre multe altele formatări, inserarea de ecuații matematice sau figuri, realizarea de tabele și de referințe încrucisate, se poate recurge la sistemul LaTeX. Deși nu este un program de tipul WYSIWYG (What You See Is What You Get), sistemul LaTeX oferă un set impresionant de simboluri, în special matematice, dar și de altă natură, munca de punere în pagină a materialului fiind automatizată.
În cazul în care se doresc a fi utilizate aplicații grafice, Linux oferă o serie de suite de birou, dintre care se disting OpenOffice și KOffice, două suite de birou gratuite și furnizate de distribuția standard.OpenOffice.org este un pachet de programe dedicate lucrului la birou (office suite), realizat și distribuit gratuit de către compania Sun Microsystems. În mod similar cu binecunoscutul pachet Microsoft Office, OpenOffice include: un procesor de texte – Writer, un program de calcul tabelar –Calc, un program destinat realizării de prezentări – Impress și un program pentru prelucrarea imaginilor (de tip raster sau vectorial) – Draw. Suita OpenOffice permite importul a numeroase tipuri de documente (RTF sau HTML), inclusiv Microsoft Office. De asemenea, poate exporta fișiere în numeroase formate, cum ar fi HTML, XML, PDF sau MS Office.
Aplicațiile compunând OpenOffice pot partaja informații, astfel permițânduse crearea de documente complexe (de exemplu, cărți, baterii de teste grilă, situații școlare, planșe sau alte materiale didactice).Pachetul KOffice, dezvoltat sub egida KDE, conține o serie de programe pentru birou, dintre care mai importante sunt: KWord, pentru redactarea de texte (similar cu Microsoft Word), KSpread, un program pentru calcul tabelar (analog Microsoft Excel), KChart, pentru realizarea de grafice, KPresenter, pentru realizarea de prezentări (analog cu Microsoft PowerPoint). De asemenea, KOffice pune la dispoziție un așanumit spațiu de lucru (KOffice Workspace) în care utilizatorul își poate organiza toate fișierele create cu diverse componente ale suitei de birou. Suita KOffice, ca și OpenOffice, oferă suport și pentru limba română.
Servicii
Server Apache
Un server HTTP este un daemon care acceptă conexiuni conforme protocolului HTTP, răspunzând cererilor recepționate de la clienți. Protocolul HTTP (Hyper Text Transfer Protocol) este un protocol de tip cerere-răspuns, bazat pe TCP/IP, destinat pentru transferurile informațiilor hiper media. Serverul cel mai utilizat în sistemele de operare UNIX este Apache.
Pentru a furniza servicii HTTP, trebuie ca pachetul apache să fie instalat, iar daemonul httpd pornit.
Apache este un sistem modular, alcătuit dintr-un server de bază și mai multe module, care sunt încărcate dinamic într-un mod similar cu funcționarea modulelor din nucleul Linux.
Serverul Apache poate fi configurat cu ajutorul interfeței grafice apacheconf (din meniul System ::Apache Configuration Tool).
Fișierul de configurare principal este httpd.conf și este localizat de obicei în directorul /etc/httpd/. Mai există două fișiere de configurare, access.conf și srm.conf, care au fost însă înlăturate începând cu versiunea 1.3.4.
Fișierul de configurare conține câte o directivă pe fiecare linie, acestea putând fi continuate pe linia următoare adăugând la sfârșitul acesteia caracterul „ \ ”. Comentariile încep cu „ # ”. Directivele din fișierul de configurare principal se referă la configurările globale ale serverului. Pentru a aplica anumite aspecte ale serverului doar unei zone din server, directivele trebuie incluse în cadrul secțiunilor: <Directory>, <DirectoryMatch>, <Files>, <FilesMatch>, <Location> sau <LocationMatch>. Acest lucru poate fi realizat și prin plasarea unui fișier numit .htaccess în directorul în care se dorește modificarea comportamentului serverului, conținând directivele dorite.
De asemenea, Apache are posibilitatea de a servi mai multe site-uri simultan, altfel spus, găzduire virtuală (virtual hosting). Directivele pot fi specificate în cadrul secțiunii <VirtualHost>, caz în care se vor referi doar la un anumit site.
Server FTP
FTP (File Transfer Protocol) este unul dintre cele mei vechi servicii Internet și reprezintă cel mai popular mod de transfer al fișierelor de pe un calculator pe altul. Implementări de aplicații-client și server FTP există practic pe toate platformele din lume.
Există în principal două tipuri de server FTP: server privat, care permite transferul de fișiere doar utilizatorilor de pe respectivul server sau, server public, care permite transferul de fișiere și utilizatorilor „anonimi” (care nu sunt utilizatori înregistrați ai serverului). De cele mai multe ori, serverele din Internet sun configurate să satisfacă ambele variante.
Implementarea de server utilizată în distribuțiile Red Hat și Mandrake este vsftpd sau wu-ftpd, dar există și multe alte implementări (proftpd etc.). Pentru a oferi servicii FTP, trebuie ca pachetul wu-ftpd să fie instalat.
Serverul wu-ftpd jurnalizează cererile de accesare FTP de obicei în fișierul /var/log/xferlog.
Fișierul principal de configurare este /etc/ftpaccesss. Acesta poate fi modificat fie prin intermediul interfeței grafice kwuftpd, din meniul System : : FTPD Editor în Red Hat, respectiv Configuartion : : Networking : : FTPD Editor în Mandrake, fie manual :
Serverul de e-mail
Ca și serviciul FTP, serviciul de poștă electronică este unul dintre primele servicii oferite de Internet. Un sistem de poștă electronică este alcătuit din următoarele trei componente :
Agenți utilizatori (clienți de poștă electronică, MUA= Mail User Agent), programe care permit utilizatorilor să citească, să emită și să gestioneze mesajele. Programele cele mai folosite în Linux sunt pine, mutt, Kmail, Evolution, Netscape Messenger, Mozilla Mail etc.
Agenți de transport (MTA = Mail Transport Agent), programe responsabile pentru acceptarea mesajelor primite și livrarea acestora la destinația finală. Sendmail este agentul de transport tradițional din mediile UNIX.
Agenți de distribuție (MDA = Mail Distribution Agent), programe care direcționează mesajele primite către căsuța poștală a utilizatorului destinatar.
Sistemul de poștă electronică din Linux utilizează directorul /var/spool/mail pentru a stoca mesajele recepționate de către utilizatori și /var/spool/mqueue pentru a stoca mesajele expediate de către utilizatori, aflate în așteptare, urmând a fi procesate de către agentul de transport. Fișierul-jurnal este în general localizat în /var/log/maillog și înregistrează cererile de expediere, mesajele primite, precum și erorile apărute în urma acestor operațiuni.
Cea mai importantă componentă a sistemului de poștă electronică este agentul de transport. În acest capitol ne vom ocupa de configurarea programului sendmail.
Pentru a oferi serviciul de transport al mesajelor, trebuie ca pachetul sendmail să fie instalat, iar daemonul sendmail să fie pornit. Dacă se dorește modificarea fișierului de configurare sendmail.mc,trebuie să fie instalat și pachetul sendmail-cf.
Serviciul DNS
Două tehnologii sunt în mare măsură responsabile pentru incredibila expansiune a Internetului. Una dintre aceste tehnologii este World Wide Web cealaltă este sistemul Domain Name System (DNS). înainte de introducerea pe scară largă a sistemului DNS în 1988, numărul de gazde de pe Internet putea fi de ordinul miilor. Astăzi, ele pot fi numărate în zeci de milioane. Acest proces nu reprezintă o problemă de cerere; el este și un rezultat al disponibilității.
Sistemul Domain Name System este instrumentul care face ca milioane de gazde de pe lnternct să fie disponibile. înainte de apariția sistemului DNS, toate numele de gazde de pe Internet înregistrate erau stocate într-un fișier plat, care trebuia să fie reprodus pe fiecare calculator de pe rețea. Limitările acestui fișier a reprezentat o barieră în calea expansiunii.internetului . DNS a rupt această barieră prin înlocuirea fișierului plat cu un sistem ierarhic și nelimitat de baze de date. Nu mai suntem limitați la un fișier de gazde întreținut central., fiecare organizație de rețea este responsabilă de întreținerea propriei părți din baza de date a domeniului.
Linux pentru programatorii C și C++
Linux este o platformă completă pentru dezvoltarea de programe, oferind o largă suită de instrumente de programare, incluzând compilatoare, depanatoare și medii integrate de dezvoltare. Deosebit de utilă este bogata colecție de biblioteci, care ușurează munca programatorilor. Trebuie sa subliniem aici și avantajul indiscutabil al disponibilității surselor programelor, permițând astfel formarea programatorilor începători (cum ar fi elevi sau studenți), care pot să citească și să utilizeze fără restricții codul sursă. Ei nu vor fi nevoiți să “reinventeze roata”, ci pot prelua porțiuni din codul care este deja scris și să le folosească pentru propriile nevoi.
Sub Linux, exista o pleiadă de limbaje de programare ce pot fi utilizate – fie ele compilate (cum ar fi C, C++), fie interpretate (cum ar fi Perl, PHP, Python, Tcl/Tk, Java, JavaScript).
Compilatorul GCC
Cele mai multe programe Linux și GNU sunt scrise în C sau C++..Cel mai răspândit compilator din lumea UNIX este GCC, implementare open source realizată de Free Software Foundation. Acesta este un compilator extensibil, existând extensii pentru C, C++, Objective-C, Pascal, Fortran. Un exemplu de apelare a compilatorului GCC este:
gcc -o exemplu exemplu.c
care va genera, pentru un fișier-sursă cu numele exemplu.c, un executabil cu numele exemplu (opțiunea -o stabilește numele fișierului executabil ce va fi creat).
Pentru a compila un program C++, vom apela:
g++ -I/usr/include/ncurses -lncurses -o exemplu exemplu.cc
Am folosit opțiunea -I, care adaugă directorul specificat în lista directoarelor în care sunt căutate fișiere-antet cu extensia .h. Opțiunea -lncurses specifică faptul că biblioteca ncurses va fi link-editată la momentul generării executabilului.
Tot cu ajutorul compilatorului GCC, există posibilitatea creării de biblioteci partajate (a căror cod nu este inclus în fișierele executabilele, și încărcate dinamic atunci când sunt necesare), printr-o comandă de genul:
gcc -shared -o libtest.so functii.o test.o
Bibliotecile partajate (în cazul nostru libtest.so) trebuie instalate în genere în directorul /usr/lib, apoi trebuie apelată comanda ldconfig pentru a actualiza baza de date de biblioteci.
Depanarea programelor
Distribuțiile de Linux oferă programatorilor alături de editoare, compilatoare, editor de legături, interpretor și alte instrumente utile precum depanatoarele.
GDB poate fi utilizat pentru depanarea programelor scrise în C și C++. Acesta poate opri din execuție un program în momentul îintâlnirii unei condiții specificate de programator, examina conținutul variabilelor la momentul respectiv, și chiar modifica valoarea acestora și continua execuția programului. Mai mult decât atât, GDB poate fi folosit și pentru a depana programe care sunt executate pe mașini aflate la distanță.
Pentru ca un program să poată fi depanat, acesta trebuie să fie compilat cu opțiunea -g. Pentru a lansa în execuție GDB, vom proceda ca mai jos:
gdb exemplu
care va permite depanarea programului specificat. GDB are o interfață de tip shell, care necesită apelarea unor comenzi interne. Părăsirea acestui interpretor de comenzi se va face prin intermediul comenzii quit. Lansarea în execuție a programului se face prin comanda run. În cadrul GDB, un program poate fi oprit datorită unui semnal, unui punct de oprire sau la solicitarea programatorului. Punctele de oprire (breakpoints) pot fi definite cu ajutorul comenzii break, furnizându-i ca parametru fie numărul liniei de program, fie numele funcției la a cărei execuție programul va fi oprit. Un punct de verificare (watchpoints) determină oprirea programului atunci când se modifică valoarea unei expresii. Pentru a șterge aceste puncte de oprire sau verificare se utilizează comanda clear.
Execuția programului poate fi continuată cu ajutorul comenzii continue. Comanda step va continua execuția programului până la următoarea linie de cod. Comanda next este similară cu step, însă apelurile de funcții nu vor fi tratate recursiv. Inspectarea variabilelor se face prin intermediul comenzii print, având ca parametru expresia ce va fi afișată.
DDD(Data Display Debugger) este un debugger- vizual, cu alte cuvinte o interfață grafică intuitivă pentru programul de depanare GDB. DDD dispune de interfață în mod terminal dar și în mediul grafic X Window și are ca autori pe Dorothea Lǘtkehaus și Andreas Zeller.Pot fi gestionate aici cu ușurință punctele de oprire, utilizând tehnologia drag-and–drop și se pot folosi modalități avansate de inspectare a variabilelor.
Glade este un program pentru crearea de interfețe-utilizator grafice folosind bibliotecile GNOME. Glade permite realizarea rapidă a acestor interfețe și generarea codului C corespunzător. Poate fi un instrument rapid pentru realizarea de interfețe grafice pentru managerul de ferestre GNOME.
Qt Designer reprezintă o aplicație destinată creării de interfețe grafice complexe, utilizând biblioteca Qt folosită de KDE. QT Designer, creat de compania norvegiană Troll Tech , este conceput ca să se dezvolte o aplicație X Window System fără ca programatorul să scrie efectiv multe linii de text. Programul singur creează, configurează și instalează modulele necesare pentru dezvoltarea proiectului. O facilitate a programării sub X Window System este programarea bazată pe evenimente. Funcțiile din care este alcătuit program se apelează la apariția unui anumit eveniment sau la trimiterea unui anumit semnal către un widget anume. Această facilitate este naturală pentru utilizarea X Window System, deoarece toate acțiunile sub modul grafic se rezumă la apăsarea anumitor butoane, la selectarea anumitor opțiuni, fiecare fiind un eveniment sau un semnal.
Unul dintre cele mai flexibile medii integrate este KDevelop. Mediul KDevelop pune la dispoziție diverși “vrăjitori” (wizards) care permit generarea automată a scheletului unei aplicații software (al proiectului) – structura de directoare a acestuia, fișierele de configurare autoconf și automake etc. –, în funcție de interfața proiectului (grafică, folosind KDE, sau terminal, adoptânduse o interfață text) și a limbajului în care acesta este implementat (C ori C++). De asemenea, codul corespunzător interfaței grafice a programului poate fi generat în mod automat cu ajutorul unui “vrăjitor”vizual de editare.Programul Kdevelop a fost conceput de către Sandy Meier,prima versiune operațională fiind lansată în anul 1998.
Limbajul Perl
Creat inițial pentru prelucrarea sofisticată a informațiilor textuale, Perl (Practical Ex-traction and Report Language) îl are ca părinte pe Larry Wall, în decursul timpului la dezvoltarea limbajului contribuind și alți numeroși programatori. Distribuit gratuit, Perl a devenit favoritul administratorilor de sistem și al programatorilor de aplicații Web, însă poate fi utilizat asemeni altui limbaj general. Ca și Linux, Perl a crescut în mediul prielnic al Internetului, împlinindu-se 20 ani de la apariția limbajului. Inițial, limbajul a fost conceput special pentru mediile UNIX, împrumutând o serie de facilități oferite de shell-urile și utilitarele standard și păstrând filosofia de bază a UNIX-ului, dar în prezent Perl este disponibil pentru toate platformele actuale (e.g. Mac OS, Windows sau OS/2).
În proiectarea limbajului s-au avut în vedere următoarele principii:
lucrurile simple să se poată realiza ușor, iar cele complexe să nu fie impo-sibil de implementat;
există mai multe modalități de realizare a unui program, în funcție de gra-dul de cunoaștere a limbajului de către dezvoltatorul acelui program.
Drept caracteristici importante ale limbajului se pot enumera:
• modularitatea
Perl oferă suport pentru mai multe paradigme de programare, ca de exemplu cea procedurală și cea orientată-obiect; limbajul poate fi extins prin intermediul așa-numitelor module, punându-se la dispoziție un număr impresionant de module standard;
• portabilitatea
Programele Perl se pot executa fără modificări pe orice platformă;
• expresivitatea și puterea
Limbajul dispune de mecanisme puternice pentru manipularea datelor, prin in-termediul expresiilor regulate și a tablourilor; de asemenea, Perl poate fi folosit ca limbaj de sistem pentru lucrul cu entități ale sistemului de operare (fișiere, dispo-zitive, procese, socket-uri);
• viteza de dezvoltare a aplicațiilor
Ciclul compilare-execuție-depanare se poate realiza și itera rapid; Perl nu oferă un interpretor clasic, ci un compilator-interpretor.
Fiind gratuit și posedând numeroase mijloace de documentare online, Perl poate fi folo-sit în special pentru dezvoltarea rapidă de aplicații de administrare a sistemului de operare și destinate Web-ului, reprezentând un mediu ideal pentru conceperea script-urilor CGI. Mai mult, anumite servere Web (e.g., Apache) includ interpretoare Perl interne.
Mediul Perl se poate obține de pe Internet, via FTP sau HTTP, prin intermediul locați-ilor CPAN (Comprehensive Perl Archive Network). Principala sursă este ftp://ftp.funet.fi, dar se pot folosi și alte locații, listate la http://www.perl.com/CPAN/.
De asemenea, orice distribuție actuală de Linux include interpretorul și manualele standard Perl.Perl include o serie de documentații online care pot fi parcurse prin intermediul bine-cunoscutei comenzi man (încercați, de exemplu, man perl). Pentru anumite detalii sau documentații referitoare la modulele Perl, se poate folosi comanda perldoc. Astfel, dacă dorim să aflăm amănunte despre funcția standard Perl printf vom da perldoc printf. De asemenea, putem recurge la opțiunea -f pentru a afla detalii despre o funcție.
Spre deosebire de alte limbaje, Perl este un limbaj interpretat, în sensul că instrucțiunile Perl nu sunt convertite în cod executabil (nu se generează un fișier executabil, spre a fi rulat independent de interpretorul Perl). Vom spune despre programele Perl că sunt script-uri, un limbaj de tip script fiind destinat să prelucreze, să automatizeze și să integreze facilitățile oferite de un anumit sistem.
Perl nu pune la dispoziție un interpretor clasic, în sensul că un script Perl nu este inter-pretat linie cu linie, ci în prealabil va fi compilat complet, de o componentă numită motor (engine) Perl, rezultând un limbaj intermediar, realizându-se diverse optimizări și raportându-se posibililele erori/avertismente sintactice sau semantice. Acest cod inter-mediar, în cazul în care nu apar erori, va fi dat spre execuție interpretorului Perl.
Având în vedere că Perl este un interpretor (similar shell-ului bash), prima linie a unui fișier sursă Perl va trebui să fie următoarea:
#!/usr/bin/perl
Această linie indică încărcătorului sistemului de operare locația interpretorului Perl (s-ar putea în unele cazuri să difere de directorul /usr/bin, dați whereis perl pentru a vedea unde a fost instalat).
Exemplul Hello World. Continutul fisierului hello este:
# !/usr/local/bin/perl -w
if( $#ARGV >= 0) {$who = join(' ', @ARGV); }
else {$who = 'World'; }
print "Hello, %who! \n";
Presupunem ca programul de mai sus este stocat in fisierul ~/bin/hello. Programul poate fi rulat cu una din comenzile:
perl ~bin/hello
perl ~bin/hello oameni
perl hello (dacă ne aflam in directorul ~/bin).
Pentru executarea acestui program ca si o comanda, trebuie parcursi urmatorii pasi:
Prima linie din program trebuie sa contina dupa #! calea spre comanda perl, asa cum s-a aratat si in exemplul de mai sus. Totodata in aceasta linie se pot specifica si optiuni de comanda, de exemplu -w (warnings – avertismente).
Pentru a permite citirea si executarea fisierului de catre toti utilizatorii trebuie introdusa comanda Unix:
chmod a+rx ~/bin/hello
Se editeaza fisierul ~/.cshrc sau ~/.login pentru a aduga directorul bin in calea de cautare a fisierelor executabile. In aceste fisiere se adauga o linie in genul:
set path = ($path ~/bin)
Dupa acestea, programul se poate lansa in executie tastand hello.
MySQL
. Sistemele de baze de date precum MySQL au devenit disponibile gratuit sau la un preț scăzut. Mai recent, producătorii comerciali, precum Informix și Oracle, au început să-si ofere programele gratuit pentru sisteme de operare precum Linux. (Totuși, aceste din urmă produse sunt livrate, în general, numai în formă binară, fără suport, ceea ce le limitează utilitatea.)
Unul din noii veniți în domeniul bazelor de date cu preț scăzut sau gratuite este MySQL, un sistem client/server de gestiune a bazelor de date relaționale originar din Scandinavia. MySQL include un server SQL, programe client pentru accesul la server, instrumente administrative și o interfață de programare pentru scrierea propriilor dumneavoastră programe.
Viteză. MySQL este rapid. Programatorii pretind că MySQL este cel mai rapid sistem de baze de date pe care îl puteți găsi. Puteți verifica această afirmație vizitând http: //www.mysql.com/benchmark. html, o pagină de comparație a performanțelor din situ! Web MySQL.
• Ușurință în utilizare.
MySQL este un sistem de baze de date cu performanțe ridicate, dar relativ simplu, a cărui configurare și administrare sunt mult mai simple decât în cazul sistemelor mai mari.
• Cost. MySQL este gratuit pentru majoritatea utilizărilor interne.
• Suport pentru limbaje de interogare.
MySQL înțelege SQL (Structured Query Language – limbaj de interogare structurat), limbajul preferat al tuturor sistemelor moderne de baze de date. De asemenea, puteți avea acces la MySQL folosind aplicații care acceptă ODBC (Open Database Connectivity), un protocol de comunicație cu bazele de date creat de Microsoft
CAPITOLUL AL III- LEA:
METODE ȘI MIJLOACE DIDACTICE ȘI PEDAGOGICE FOLOSITE PENTRU
INTEGRAREA SISTEMULUI DE OPERARE LINUX ÎN CADRUL CERCULUI DE
INFORMATICĂ
CAPITOLUL III.1: CERCUL DE LINUX CA OPȚIONAL DE
INFORMATICĂ
Între activitățile înafară de clasă, cercul de informatică ocupă un loc de seamă, având o valoare instructivă și educativă deosebită. Scopurile acestuia sunt de a stimula interesul elevilor pentru învățarea informaticii, de a-și dezvolta spiritul lor de cercetare, de a-și însuși anumite tehnici de cercetare, formarea spiritului de echipă în cercetare, a simțului critic și nu numai. Deși munca elevilor din cerc este organizată înafara planului de învățământ și a programelor școlare, totuși cercul de elevi, prin programul său este strâns legat de procesul de învățământ. Ședințele cercurilor de elevi pot deveni arena unor discuții libere, uneori controversate, pe marginea materiei predate. Elevii pot pune întrebări, emite păreri proprii, pot face completări. Ei au privilegiul să arate că au citit în plus în afara manualului, că au auzit și au văzut, au citit în mass-media anumite lucruri noi sau discutabile legate de tema în discuție, se pot obișnui cu argumentarea logică și interpretarea corectă a temelor informatice.
Elevii au posibilitatea să adâncească și să amplifice cunoștințele primite la orele de curs, să le încadreze în ansamblul cunoștințelor pe care le au, să-și însușească tehnici de cercetare proprii ale informaticii, să-și formeze deprinderi de investigare și să elaboreze referate și proiecte informatice, să colecționeze documente sau să participe la ședințe de cerc.
O atenție deosebită se acordă recrutării membrilor cercului, dintre elevii care își doresc acest lucru, elevi care au și înclinații, chemare spre informatică, interes deosebit pentru cunoașterea și cercetarea ei. Pentru aceasta, profesorul trebuie să îi cunoască bine pe elevi, nivelul lor de cultură generală, aptitudinile lor. Activitatea cercului se desfășoară pe baza unei tematici adecvate, stabilită din timp, care să se caracterizeze prin varietatea și bogăția subiectelor, corespunzând dorinței și nivelului de cunoștințe ale elevilor și axându-se pe problemele fundamentale ale informaticii. Tematica cercului trebuie să răspundă intereselor și preocupărilor membrilor lui, să încurajeze cunoașterea și cercetarea în domeniul IT, domeniu în care pot fi aduse contribuții originale, concretizate în comunicări științifice .
Pentru a nu supraîncărca elevii și pentru a nu le răpi timpul necesar pregătirii și la celelalte discipline școlare, profesorul trebuie să programeze judicios ședințele cercului, să asigure operativitate și calitate pentru activitățile ce urmează a se desfășura, care să antreneze prin importanța științifică a tematicii, gândirea algoritmică și să sensibilizeze elevii, atât prin modalitățile de abordare cât și prin emoțiile declanșate de învățarea asistată.
Membrii cercului pot fi organizați pe două cicluri: un grup de inițiere cuprinzând elevii din clasele a V-a, a VI-a din ciclul gimnazial, și a IX-a, a X-a din clasele liceale și cel de al doilea grup care desfășoară o activitate de cercetare și elaborează lucrări științifice, cuprinzând elevi din clasele mai mari, dar nu neapărat terminale, deoarece elevii din aceste clase sunt mai preocupați de examenele pe care le au de dat, decât de o eventuală participare la ședințele de cerc.
Activitatea cercului poate fi popularizată prin publicarea unor articole în revista școlii, prin scrierea unor foi informative la panoul de perete, sau chiar publicarea lor în cadrul presei locale, organizarea unor concursuri etc. Rezultate muncii de cerc trebuie valorificate și în cadrul orelor de la clasă, stimulându-se material și moral acei membri de cerc care s-au remarcat în mod deosebit.
Cercul de informatică se organizează la nivelul școlii, iar numărul elevilor e bine să nu fie foarte mare, deoarece eficiența cercului scade. Ședința de constituire trebuie temeinic pregătită, ea reprezentând prima impresia a elevului despre cercul de informatică și trebuie să rămână ca o primă motivație a elevilor de a mai veni la ședințele de cerc.
În ședința de constituire se dă elevilor să completeze un chestionar care să cuprindă următoarele puncte:
Ce probleme de informatică te interesează în mod deosebit?
Ce temă dorești să tratezi în cerc și sub ce formă?
Ce activități practice propui să se organizeze în cerc?
În această ședință în condica cercului se consemnează:
proces- verbal de constituire, cu semnătura tuturor membrilor,
lista membrilor cercului de informatică, planul de activitate pe anul școlar în curs.
Ședințele cercului se țin în cabinetul de informatică, dar pot avea loc și în alte locuri, în cadrul unor vizite sau simpozioane cu tematică, organizate și planificate prin planul de activitate. Alegerea unui colectiv de conducere este și ea importantă deoarece trebuie desemnați în jur de 3- 5 elevi activi și pasionați și care să se ocupe de unele probleme specifice activităților de cerc.
În ceea ce privește organizarea unui cerc de informatică la Colegiul Național Ștefan cel Mare Suceava, unde funcționez ca profesor titular, pot spune că am rămas plăcut surprins să constat că elevii s-au dovedit deosebiți de interesați de elementele de noutate din domeniul IT și mai ales interesați să știe mai multe despre sitemul de operare Linux. Astfel am decis să organizez un cerc de informatică cu numele Linux@Edu pe o astfel de tematică. Și pentru că organizarea este deosebit de importantă, am considerat că ar fi deosebit de util ca acest cerc să fie organizat ca și o disciplină opțională cu denumirea de : Linux Aplicat.
Alegerea acestei teme poate fi argumentată foarte ușor și anume:
elevii au fost primii care au cerut studierea aprofundată a sistem de operare Linux datorită facilităților oferite de acesta,
datorită comunității mari care se crează și de unde se poate solicita ajutor și numărului mare de utilitare ,
Linux-ul este open source, orice bug (o eroare în cadrul programului) va poate fi îndepărtat rapid,
elevii prin acest cerc ar face și altceva decât să învețe lecțiile obișnuite, ar lucra pe baza unor metode active care se pretează foarte bine activității de cerc, cunoștințele despre Linux folosindu-le ulterior în sistemul universitar,
utilizarea acestei platforme la toate concursurile de programare, Linux-ul fiind o platformă completă pentru dezvoltarea de programe, oferind o largă suită de instrumente de programare, incluzând compilatoare, depanatoare și medii integrate de dezvoltare,
începand cu distributia SuSE Linux 9.0 Personal sau Professional, se poate utiliza extensia Wine Rack. Aceasta va permite rularea pe Linux în mod stabil și sigur a mai multor aplicații Windows.
Ca și obiective stabilite pentru cercul de informatică Linux@Edu :
valorificarea oportunităților folosirii platformei Linux în învățământ,
organizarea unor întâlniri cu membri activi ai comunității Linux care se ocupă de cercetarea acestei teme, întâlniri stabilite din timp de către profesor cu specialiști în Linux, în timpul acestora elevii pun întrebări bine pregătite și care să le elucideze anumite controverse în ceea ce privește tema, sau un capitol,
realizarea de referate științifice pentru unele aplicații Linux, referate elaborate pe baza studierii temei date și a culegerii de informații din materialele studiate,
În ceea ce privește lista de conținuturi, acestea pot fi grupate pe următoarele unități de învățare:
1. Sistemul de operare Linux,
Configurarea sistemelor Linux,
Exploatarea echipamentelor hardware sub Linux,
Mediul X-window,
Comenzi Linux,
Bourne Again Shell (BASH),
Programarea C sub Linux,
Programarea în Perl,
Acestea sunt detaliate în anexa lucrării.
CAPITOLUL III.2: METODE ȘI MIJLOACE DIDACTICE.
MODALITĂȚI DE EVALUARE A ELEVILOR
CAPITOLUL III.2.1: METODE ȘI MIJLOACE DIDACTICE
Pentru realizare tuturor acelor competențe specifice ale ședințelor de cerc, sunt utilizate diverse mijloace și procedee didactice, la acestea adăugându-se mijloace de evaluare tradiționale sau moderne, după caz.
Informatica poate adopta și adapta metode de predare de la alte discipline, dar adaptarea trebuie să se facă ținându-se cont de:
dinamica conținuturilor și particularitățile metodice ale predării disciplinei;
individualizarea învățării Informaticii, ca disciplină deschisă și dinamică;
activismul care pretinde o participare prioritară conștientă a elevului la procesul de autoinstruire;
studiul Informaticii atât ca disciplină autonomă cât și ca instrument operațional al altor discipline.
Dintre metodele de predare specifice – de exemplu – Matematicii, amintim:
metoda demonstrației;
metoda reducerii la absurd;
metoda inducției matematice (structurale).
În cele ce urmează se vor analiza metodele generale utilizate în predarea Informaticii:
Expunerea.
Conversația.
Problematizarea.
Modelarea.
Demonstrarea folosind materialul intuitiv.
Exercițiul.
Învățarea pe grupe mici.
Munca cu manualul.
Jocurile didactice.
Instruirea programată.
În tratarea acestor metode se va urmări cu predilecție particularitățile specifice predării disciplinelor de informatică și în special, aplicațiile practice de laborator și contribuția Informaticii la realizarea obiectivelor didactice ale altor discipline din învățământul preuniversitar.
1. Expunerea sistematică a cunoștințelor
Dintre formele pe care le îmbracă expunerea sistematică a cunoștințelor (povestirea, prelegerea, descrierea, explicația, conversația), Informatica utilizează cu precădere explicația. Elementele explicative domină procesul de instrucție informatică, acestea fiind caracteristice atingerii unor obiective de referință care cuprind formarea de deprinderi și abilități practice de utilizare a unor produse soft deseori complicate și dominate de interfețe neprietenoase față de utilizator (netransparente). Ceea ce conferă o accentuată notă de adaptabilitate este operativitatea impusă de aplicarea acestei metode prin alternarea expunerii cu demonstrația practică, elevii fiind astfel scoși din pasivitatea posturii de simpli receptori.
Profesorul trebuie să reproiecteze lecția prin prisma posibilităților elevilor și cu mijloacele lor de gândire. Accentul trebuie pus pe raționament, prin argumentări temeinice, prin scoaterea în evidență a modului în care trebuie să gândească.
Expunerea trebuie să fie însoțită de un control permanent al gradului de receptivitate al clasei, urmărindu-se mimica elevilor (edificatoare în special la elevii mici), satisfacția înțelegerii lecției sau îngrijorarea și neliniștea în cazul în care elevul a pierdut firul explicației citindu-se pe fața elevilor. Întrebările, repetiția, explicațiile suplimentare, analogiile cu alte noțiuni cunoscute, permit realizarea unui control permanent al receptivității la expunere.
În Informatică, recurgem neapărat la metoda expunerii atunci când tema este complet nouă și printr-o metodă activă nu se poate descoperi noutatea, sau metoda activă este ineficientă din punct de vedere al operativității. Indiferent de conținutul lecției, metoda expunerii nu se folosește decât foarte rar pe parcursul unei ore întregi, aceasta alternând cu alte metode de predare.
2. Metoda conversației
Metoda conversației constă în dialogul dintre profesor și elev, în care profesorul nu trebuie să apară în rolul examinatorului permanent, ci în rolul unui colaborator care nu numai întreabă ci și răspunde la întrebările elevilor. Prin metoda conversației se stimulează gândirea elevilor în vederea însușirii, fixării și sistematizării cunoștințelor și deprinderilor, în vederea dezvoltării spiritului de colaborare și de echipă. Se asigură astfel o participare activă din partea elevilor, întrebările putând fi adresate în orice moment al lecției.
Metoda conversației este frecvent utilizată în învățarea Informaticii, determinând un dialog continuu între elev și profesor, cu condiția respectării unor reguli elementare de colaborare constructivă, care să nu determine diminuarea demersului didactic, ci să-l amplifice și să-l consolideze.
Indiferent de forma de conversație, întrebările trebuie să fie precise, să vizeze un singur răspuns. Practica didactică pune în evidență numeroase întrebări vagi care încep cu Ce puteți spune despre … sau Ce știți despre …, care plasează elevul într-un dubiu total în legătură cu conținutul răspunsului. Răspunsurile acceptate trebuie să fie corecte, complete, exprimate în termeni preciși, să oglindească o înțelegere deplină a problemei abordate. Când răspunsurile sunt greșite, trebuie să fie imediat corectate, prin discuții ample, edificatoare, care să deducă cauza greșelii și să elimine atât greșeala cât și posibilitatea reapariției ei.
Conversația este importantă prin faptul că ajută la formarea limbajului informatic, un instrument prețios și indispensabil pentru dezvoltarea raționamentului logic, a gândirii elevului.
Profesorul trebuie să fie conștient de dificultățile de limbaj pe care le au elevii la anumite vârste școlare și la un anumit stadiu de însușire a disciplinei, neabuzând de termeni de specialitate, înlocuindu-i cu termeni sinonimi din vocabularul curent sau explicându-le sensul, dacă un alt înțeles al termenului este posibil. Dificultatea formării vocabularului de specialitate constă și în faptul că aceste cuvinte noi sunt introduse deodată cu noțiuni noi, ceea ce face ca îmbogățirea limbajului informatic să se facă o dată cu dezvoltarea și formarea gândirii informatice.
Stăpânirea limbajului se reflectă în rezolvarea problemelor și înțelegerea textelor și documentațiilor de specialitate. Nestăpânirea acestuia provoacă inhibiție, imposibilitatea comunicării sau chiar o comunicare și o înțelegere defectuoasă, făcându-l pe elev timid, incoerent sau chiar ridicol în exprimare. Această metodă mai poate fi clasificată în:
euristică: fără reguli precise, bazată pe întrebare/răspuns, în functie de evolutia concretă a dialogului;
tip dezbatere (discuție): se realizează un schimb de păreri; este implicat un anumit colectiv, trebuind să fie trase și niște concluzii;
catihetică: conține teste ce implică memoria.
Devine clar că o conversație se face prin întrebări. Acestea trebuie să satisfacă următoarele condiții:
să fie precise (vizând un singur răspuns);
să nu conțină răspunsul, să fie instructive;
să stimuleze gândirea și capacitatea de creativitate a elevilor (de ce?, din ce cauză?, în ce caz?, etc.);
să fie formulate prin enunțuri variate;
să se adreseze întregului colectiv vizat;
să introducă întrebări ajutătoare atunci când răspunsul este eronat sau parțial.
În ceea ce privește Informatica, recomandăm utilizarea unor instrumente ajutătoare, cum ar fi:
Introducerea/exprimarea noțiunilor printr-un limbaj scris/oral. Informatica folosește cuvinte noi preluate din engleză (handle, server, floppy, cluster, etc.), cuvinte uzuale care au alt înțeles față de cel clasic (intrare, ieșire, pas, buclă, clasă, etc.).
Reprezentări schematice – scheme logice, pseudocoduri, flow diagrams, etc.
Utilizarea eficientă a simbolurilor, în afară de latura didactică propriu-zisă, ceea ce înseamnă separarea clară a sintaxei de semantici.
3. Problematizarea și învățarea prin descoperire
Predarea și învățarea prin problematizare și descoperire presupun utilizarea unor tehnici care să producă elevului conștientizarea conflictului dintre informația dobândită și o nouă informație, determinând pe elev să acționeze în direcția lichidării conflictului prin descoperirea unor noi proprietăți ale fenomenului studiat.
Lichidarea conflictului înseamnă în realitate descoperirea unor noi proprietăți ale obiectului studiat. Pedagogic vorbind, conflictele se mai numesc situații problemă (problematizarea) și pot fi de mai multe tipuri:
Contradicții între posibilitățile existente ale elevului (nivelul intelectual și de pregătire) și cerințele, situațiile în care este pus de noua problemă,
Aceste conflicte se datorează imposibilității elevului de a selecta dintre cunoștințele sale anterioare pe cele potrivite cu valoare operațională de aplicabilitate a viitorului,
Incapacitatea elevului de a integra noțiunile selectate într-un sistem, conștientizarea faptului că aceasta este pe moment ineficient operațional (lucru care poate fi remediat doar prin completarea informației de bază).
Întrebările frontale sau individuale utilizate în etapa de pregătire a introducerii unei noțiuni, a prezentării unui domeniu nou, întrebări care se adresează capacității de reacționare a individului pot genera noi situații conflictuale de tipul menționat anterior.
Pe cât posibil, cadrul didactic trebuie să gestioneze el însuși apariția situațiilor problemă. La modul ideal, ele trebuie să apară de la sine în mintea elevului.
Relativ la condițiile pedagogice a acestor situații conflictuale generate de anumite probleme practice putem remarca următoarele:
problemele trebuie să aibă sens și să fie enunțate într-un moment optim al lecției;
trebuie să înglobeze cunoștințe anterior însușite de elev, să le trezească interesul, să le solicite un anumit efort mental creator.
Există părerea că rezolvarea problemei poate fi privită ca un proces prin care elevul descoperă că o combinație de reguli învățate anterior se poate aplica pentru găsirea soluției unei noi situații conflictuale. În acest sens se pot evidenția următoarele etape în rezolvarea problemei:
Prezentarea problemei (verbal, scris, grafic).
Definirea problemei de către elev în sensul distingerii caracteristicilor esențiale ale situației, însușirii enunțului, găsirii legăturii între date, informații, etc.
Formularea de către elev a anumitor criterii, ipoteze care pot fi aplicate în vederea găsirii unei soluții.
Verificarea succesivă a unor asemenea ipoteze, eventual și a altora noi și găsirea efectivă a unei soluții (sau a tuturor).
Desigur că în contextul de mai sus expresiile situație conflictuală, problemă, rezolvare de problemă, se referă la probleme și soluții noi, necunoscute încă de elev și nu la ceva de tipul substituirii de valori numerice în expresii date, execuția unui program dat pentru niște valori de intrare, etc.
Utilizarea în predare a acestei metode este totdeauna utilă în momentul în care se și găsește rezolvarea conflictului.
Descoperirea apare ca o întregire a problematizării. Se pot pune astfel în evidență trei modalități principale de învățare prin problematizare și descoperire:
modalitatea inductivă;
modalitatea deductivă;
modalitatea prin analogie.
Clasificarea se face după tipul de raționament folosit.
Formularea de probleme de către elevii înșiși, constituie forme ale creativității și presupune că elevii și-au format deprinderi intelectuale eficace din punct de vedere al generalizării și aplicabilității (orice soluție generează o nouă problemă).
Problematizarea și descoperirea fac parte dintre metodele formativ-participative, care solicită gândirea creatoare a elevului, îi pun la încercare voința, îi dezvoltă imaginația, îi îmbogățește experiența. În lecțiile în care se aplică aceste metode profesorul alege problemele, le formulează, dirijează învățarea și controlează munca depusă de elev în toate etapele activității sale. Această metodă este caracteristică unor lecții de aplicații practice de laborator.
4. Modelarea
Modelarea, ca metodă pedagogică poate fi descrisă ca fiind un mod de lucru prin care gândirea elevului este condusă la descoperirea adevărului, folosind un așa numit model și utilizându-se raționamentul prin analogie.
Modelul și metoda în sine nu presupun o asemănare perfectă cu cazurile reale inițial specificate, ci numai o analogie rezonabilă. Ea constă în construirea unui sistem S1 a cărui descriere coincide cu descrierea sistemului original S până la un anumit punct. S1 poate avea o natură diferită, este în general mai simplificat și formalizat. Ideea este că investigând sistemul S1 prin metode specifice legate de o anumită temă de lecție se pot găsi noi soluții, care apoi pot fi translatate în concluzii asupra evoluției sistemului de bază S. Modelarea are o mare valoare euristică colaterală, prin utilizarea ei putându-se dezvolta spiritul de observație, capacitatea de analiză, sinteză, creativitatea. Ideea ar fi să putem determina elevii să descopere singuri modelul. Astfel elevul se obișnuiește să creeze noi probleme ce trebuiesc rezolvate, să adapteze algoritmi cunoscuți la situații noi, etc.
Modelarea ca metodă pedagogică, este definită ca un mod de lucru prin care gândirea elevului este condusă la descoperirea adevărului cu ajutorul modelului, grație raționamentului prin analogie.
Modelarea similară, constă în realizarea unui sistem de aceeași natură cu originalul, care să permită evidențierea trăsăturilor esențiale ale originalului.
Modelarea analogică nu presupune o asemănare perfectă cu originalul, ci numai folosirea unei analogii.
O clasificare a modelelor după natura suportului sub care se vehiculează informația, poate fi:
-Modele materiale, care au suport concret și care se folosesc foarte puțin în învățarea Informaticii (folosirea unui table de șah în rezolvarea problemei celor opt dame determină o rapidă înțelegere a mecanismului metodei backtracking; utilizarea unei stive de monezi de dimensiuni diferite pentru înțelegerea rezolvării problemei turnurilor din Hanoi), poate avea același efect.
-Modele ideale, care se exprimă prin imagini sau sisteme de simboluri sau semne convenționale, des utilizate în Informatică.
Folosirea modelelor nu înseamnă impunerea unor metode care trebuie reținute și aplicate orbește. Se va pune accentul pe înțelegerea pașilor unui algoritm și se va încuraja prezentarea oricăror metode care exclud modelul și care se impun prin eleganță și eficiență. Elevii vor fi încurajați să-și dezvolte și să-și prezinte ideile proprii, contribuind în acest fel la creșterea încrederii în posibilitățile lor, în valoarea ideilor lor. Ei nu trebuie să fie obligați să reproducă ideile altora, să aștepte ca totul să fie prezentat de profesor, să asimileze rețete, ci să descopere metode noi, să le prezinte, analizeze și perfecționeze printr-o comunicare continuă și constructivă.
5. Exemplificarea sau demonstrarea materialului intuitiv
Prin exemplificare sau demonstrație, în acest caz, înțelegem prezentarea sistematizată și organizată a unor obiecte, procese, experimente, cu scopul de a ușura înțelegerea intuitivă și executarea corectă a unor activități programate.
Cuvântul intuiție din titlu, înseamnă utilizarea oricărui raționament inductiv, în contextul temei și bagajului de cunoștințe ale elevului. Utilizarea intuiției împreună cu exemplificarea necesară poate implica folosirea a diverse modalități și tehnici didactice datorită diversității materialului de studiu.
Exemplificarea sau demonstrarea materialului intuitiv presupune:
utilizarea obiectelor reale;
utilizarea materialului grafic (planșe, scheme);
utilizarea retroproiectorului și a materialului pretipărit;
utilizarea calculatorului (imagini grafice, multimedia, power point).
Un rol deosebit îl joacă astfel intuiția (intuiția este o experiență mentală; intuiția înseamnă o simplă observare și notare a unor fapte; intuiția poate fi asimilată cu un raționament de tip inductiv). Intuiția realizează corelația dintre imagine și cuvânt, fiind atât sursă de cunoștințe cât și mijloc de verificare. Informatica nu poate fi desprinsă decât artificial de bazele ei intuitive și de extinderea ei în realitatea cotidiană. Convertirea principiului intuiției în metoda demonstrației se realizează în funcție de materialul intuitiv: machete, grafică, film didactic, televiziune școlară, software-uri de învățare.
Ținând cont de eficiența transmiterii informației prin mijloacele vizuale (inclusiv INTERNET) și de orientarea cu predilecție spre mijloacele de informare rapidă care solicită atât memoria vizuală cât și cea auditivă și formarea involuntară a unui public consumator de informație audio-video, o orientare a metodelor și procedeelor didactice în vederea exploatării acestei stări de lucruri creează un avantaj aparte procesului instructiv-educativ.
Crearea unor filme (casete video) didactice care să urmărească cu exactitate programa școlară creează facilități de predare multor discipline și ar permite elevului să poată revizualiza predarea lecției. Aceasta ar putea elimina ambiguitățile sau golurile create de momentele de neatenție din timpul predării și ar constitui un veritabil profesor la purtător al elevului.
Este evident că acest mijloc didactic nu poate înlocui (nici măcar suplini) exercițiul individual și nici prezența efectivă a cadrului didactic. Efortul profesorului este cu totul special. Nu este suficient ca un elev să vadă un material, el trebuie învățat să vadă.
6. Metoda exercițiului
La modul cel mai general, exercițiile pot fi privite ca acțiuni concrete efectuate în mod conștient și repetat în scopul dobândirii unor priceperi și deprinderi (mai rar cunoștințe) noi pentru a ușura anumite activități și a contribui la dezvoltarea unor aptitudini.
Condiția primordială de reușită este dată în principal de selecția corespunzătoare a problemelor, exercițiilor, precum și de activitatea de îndrumare-proiectare. Prin urmare exercițiile sunt acțiuni efectuate în mod conștient și repetat de către elev cu scopul dobândirii unor priceperi și deprinderi și chiar cunoștințe noi, pentru a ușura alte activități și a contribui la dezvoltarea altor aptitudini. Însușirea cunoștințelor de Informatică este organic legată de exersarea utilizării unor soft-uri de aplicație, de rezolvarea unor probleme de programare, etc. Nu există lecție în care să nu se aplice această metodă.
Este clar că metoda nu contribuie numai la formarea priceperilor și deprinderilor de lucru cu calculatorul, ci contribuie substanțial la dezvoltarea unui raționament flexibil și operant.
Pentru profesor, alegerea, formularea și rezolvarea problemelor și apoi exploatarea rezultatelor obținute constituie o sarcină de importanță deosebită.
Utilizarea pe scară largă a acestei metode a condus la o clasificare a exercițiilor și problemelor, clasificare ce are la bază aportul capacităților intelectuale necesare rezolvării lor.
Specifice Informaticii sunt problemele al căror grad de dificultate crește treptat, o dată cu formarea și asimilarea noțiunii, fiecare nouă problemă aducând un plus de dificultate.
În rezolvarea unei probleme de programare este necesar să se țină seama de următoarele etape:
– Analiza inițială a problemei prin care se stabilește formatul și natura datelor de intrare, intervalele de variație a datelor de intrare, a variabilelor de lucru (date intermediare) precum și formatul și intervalele de variație a datelor de ieșire. Tot în această etapă se va stabili un algoritm (plan) de rezolvare, exprimat, eventual, în limbaj natural, pe baza căruia se va permite fiecărui elev să lucreze independent.
– Rezolvarea propriu-zisă a problemei este etapa în care se realizează transpunerea într-un limbaj de programare a algoritmului stabilit în prima etapă. În prealabil, algoritmul este reprezentat în una dintre formele cunoscute, se stabilesc variabilele de lucru, forma lor de alocare, prelucrările ce vor avea loc, apoi se trece la implementarea în limbajul dorit. Dacă rezolvarea se poate face pe mai multe căi, trebuie să se sublinieze, dacă este posibil, calea optimă.
– Verificarea soluției sau soluțiilor obținute va permite elevului să-și dea seama dacă soluția obținută este cea corectă. În această etapă intervine profesorul cu seturi de date de test care să cuprindă dacă este posibil, majoritatea (dacă nu toate) cazurilor existente ridicate de problemă și în special cazurile critice, la limită, ale datelor de intrare.
În rezolvarea exercițiilor este importantă crearea posibilității îndeplinirii unei mici independențe (individual, grup, echipă). Pentru formarea unor priceperi sau abilități legate de munca indepdendentă se poate utiliza și așa numita formulă a exercițiilor comentate. Aceasta constă în rezolvarea exercițiilor de către toți elevii, în timp ce un elev desemnat explică permanent rezultatele obținute.
Nu este nevoie ca această explicație să fie dată la calculator. Profesorul poate în orice moment să invite oricare alt elev pentru continuarea explicației (în acest fel, această metodă este deosebit de activă).
Discuțiile suplimentare sunt obligatorii în acest caz. Se vor evidenția permanent avantajele și dezavantajele rezolvărilor propuse, alte metode posibile de rezolvare, idei privind utilizarea acestor rezolvări în lecțiile următoare, particularizări ale lor în lecțiile trecute.
7. Metoda învățării în grupe mici
Activitatea de învățare pe grupe mici se definește ca o metodă în care sarcinile sunt executate de grupuri mici de elevi, grupuri care sunt câteodată autoconstituite și care se autodirijează. Activitatea în Informatică se desfășoară în general în echipă, travaliul individual fiind o componentă a muncii corelate din cadrul unui grup de lucru. Tehnicile de organizare a muncii în unitățile de Informatică evidențiază ca o formă de organizare echipa programatorului-șef, echipă în care fiecare membru are sarcini bine stabilite (de analiză, programare, implementare, exploatare), sarcini corelate între ele. Este normal ca și activitatea didactică să recurgă la metode de învățare colectivă, fără a neglija însă munca individuală, ci doar privind-o pe aceasta ca o componentă a muncii în echipă.
Profesorii recunosc – în general – eficacitatea unei astfel de organizări a activității didactice și o integrează în arsenalul metodic al predării disciplinei. Criteriile de formare a grupelor sunt în funcție de obiectivele urmărite (însușirea de noi cunoștințe, rezolvare de probleme, etc.):
grupuri omogene, formate din elevi cu același nivel de cunoștințe;
grupuri eterogene, formate din elevi de toate categoriile (foarte buni, buni și slabi), dar în proporții apropiate;
grupuri formate pe criterii afective (prietenie, vecini de bancă).
Numărul elevilor dintr-un grup poate varia de la 2 la 10, dar cele mai potrivite grupuri sunt cele formate din 4-6 elevi. La lecțiile de aplicații practice de laborator, grupurile de lucru formate din 4 elevi care dispun de două calculatoare, par a fi cele mai eficiente. Grupuri formate din mai mult de 2 elevi la un calculator se dovedesc a fi neproductive. Pentru grupurile omogene sarcinile pot fi diferite în funcție de scopul propus. Pentru grupurile eterogene sau create pe criterii afective, sarcinile vor fi aceleași la fiecare grup, dar profesorul va rezerva sarcini suplimentare elevilor mai buni din fiecare grup. Etapele pretinse de această metodă de învățare sunt:
repartizarea materialului (problemelor) fiecărui grup;
munca independentă a grupurilor sub supravegherea profesorului;
discutarea în plen a rezultatelor obținute.
Activitatea profesorului se concretizează în două etape. Prima este una proiectivă în care se pregătește materialul de repartizat pe grupe și materialul în plus pentru elevii buni și a doua, de îndrumare/supraveghere și de animare a activității grupelor de lucru. Ajutorul acordat grupelor de lucru trebuie să fie dat numai la cerere și în așa fel încât profesorul să se situeze pe poziția de colaborator și nu pe cea de autoritate care își impune părerile și soluția personală. Profesorul va interveni cu autoritate numai în situația în care activitatea grupului se îndreaptă într-o direcție greșită.
Când unul sau mai multe dintre grupuri găsește o soluție, acestea vor fi discutate și analizate succesiv sau în paralel. Scopul acestei discuții este de a reliefa corectitudinea rezolvării, determinarea celei mai eficiente și mai elegante soluții și de a descoperi eventualele erori. Importanța acestor dezbateri pentru dezvoltarea raționamentului este foarte mare, iar rolul profesorului este cel de a incita și coordona discuțiile în direcția obținerii concluziilor care se impun.
Se impută, pe bună dreptate, acestei munci în grup o intensitate și o productivitate scăzută. Diversificarea sarcinilor grupurilor și împărțirea sarcinilor între membrii grupurilor atenuează această deficiență. Dacă prin activitatea în grup se intenționează dobândirea de noi cunoștințe prin lucrul cu manualul, documentația sau prin testarea unor produse soft, pentru profesor este obligatoriu de a organiza dezbaterile finale care să stabilească dacă elevii și-au însușit corect noțiunile și și-au format deprinderi corecte. Este de asemenea greșit a se lucra mereu cu grupuri constituite după aceleași criterii, pentru că fie că sunt suprasolicitați elevii buni din grupurile eterogene, iar elevii slabi se bazează exclusiv pe aportul liderilor de grup, fie că, în grupurile omogene, elevii slabi se complac în postura în care se află și nu mai încearcă să scape de acest calificativ.
8. Metoda lucrului cu manualul și documentația
Manualele școlare, purtătoare ale valențelor formative prin deosebitul lor conținut metodic și didactic, reprezintă o limită impusă de programa școlară din punct de vedere al conținutului informativ. În Informatică, mai mult decât în alte domenii, manualul este supus perisabilității conținuturilor prin frecvența cu care disciplina este receptivă la noutățile domeniului.
Realitatea didactică reliefează faptul că elevul folosește pentru învățarea teoriei doar notițele întocmite în clasă la predare și din considerente de comoditate sau de obișnuință, foarte puțin (sau deloc) manualele. Acestea sunt consultate în cel mai fericit caz doar pentru citirea enunțurilor problemelor.
Atitudinea de reținere sau de respingere față de manual are consecințe negative atât asupra caracterului formativ, cât și asupra celui informativ al învățării. Capacitatea de raționament al unui copil nu se formează numai după modele de raționament oferite de profesor, ci și prin eforturi proprii, prin activitatea proprie de căutare și comparare cu alte scheme de raționament. Valoarea acestei metode nu constă numai într-o însușire temeinică a cunoștințelor ci și în formarea unor deprinderi de activitate intelectuală. Mulți elevi încheie ciclul liceal fără a avea formate deprinderi de lucru cu manualul și documentația, ceea ce le creează serioase probleme de adaptare și explică eșecurile din primul an de studenție și greutatea de adaptare la cerințele studiului universitar.
Metoda muncii cu manualul este un aspect al studiului individual și se introduce ca metodă, treptat, sub directa îndrumare și supraveghere a profesorului. Sunt discipline și profesori care aplică în mod abuziv această metodă. Pe lângă efectele negative asupra învățării, aceste abuzuri ascund și alte aspecte care nu fac obiectul acestei lucrări.
Înainte de a aborda această metodă, profesorul trebuie să atragă atenția elevului asupra aspectelor importante ale lecției, care trebuiesc urmărite în mod special, cerând elevului să realizeze un rezumat cu principalele idei ce trebuie reținute. Rolul profesorului nu se limitează numai la a indica lecția din manual sau documentația care trebuie studiată. În timpul studierii de către elevi a noului material, profesorul are un rol activ. El urmărește fiecare elev cum își întocmește conspectul, dă îndrumări cu voce scăzută elevilor care-l solicită, verifică planurile întocmite de aceștia, corectând acolo unde este cazul. Profesorul poate să descopere în acest fel anumite lacune în cunoștințele anterior dobândite ale elevilor și să intervină ulterior pentru remedierea lor. El se ocupă deopotrivă de elevii slabi și de cei buni cărora le dă sarcini suplimentare, reușind astfel să-și facă o imagine despre stilul de lucru și ritmul fiecărui elev.
După studierea individuală din manual sau documentație, urmează discuții asupra celor însușite de către elevi. Aceste discuții au scopul de a preciza problemele esențiale ale lecției, a le sistematiza, a înlătura posibilitatea unor omisiuni din partea elevilor sau chiar a însușirii eronate a unor noțiuni. Profesorului i se cere o pregătire minuțioasă a materialului pentru a fi în măsură să răspundă prompt la orice întrebare pusă de către elevi.
Nu orice lecție se pretează la a fi însușită din manual. Metoda se aplică numai lecțiilor care au în manual o redactare sistematică și accesibilă nivelului de vârstă și de cunoștințe ale elevilor. Metoda poate fi aplicată pentru studiul unor aplicații soft, limbaje procedurale (de exemplu HTML) sau în studiul comenzilor sistemelor de operare. Elevilor li se recomandă studiul temei stabilite pentru acomodarea cu noțiunile, apoi profesorul reia prezentarea cu sublinierea aspectelor esențiale.
9. Metoda jocurilor didactice
Jocurile didactice (pe calculator) au valențele lor educative. Ca metodă de învățare, jocurile didactice dau rezultate deosebite în special la clasele mici, dar marele pericol care planează asupra acestei metode de instruire îl constituie acele aplicații soft care au o încărcătură educativă redusă, dar prin atractivitate captivează și rețin atenția elevului, uneori ore în șir, fără ca acesta să dobândească cunoștințe sau deprinderi corespunzătoare cu efortul făcut.
Un rol aparte se atribuie jocurilor manipulative, prin care elevul devine conștient de proprietățile obiectului studiat, își formează deprinderi și dexterități de utilizare a acestuia prin simularea pe calculator a utilajului sau dispozitivului respectiv. Aceste jocuri numite uneori și simulatoare, necesită în cele mai frecvente cazuri echipamente periferice suplimentare, unele specializate pe lângă cele clasice. Amintim în acest caz, utilizarea unor căști speciale pentru obținerea efectului de realitate virtuală, echipamente care simulează condiții de zbor (pentru pilotaj), etc.
Alte tipuri de jocuri, numite reprezentative, printr-o simbolizare sau abstractizare a unor elemente reale, conduc spre descoperirea unor reguli de lucru (sau joc) cu aceste elemente, dezvoltând în acest fel imaginația elevului. Ce altceva reprezintă un produs soft (de exemplu, un editor grafic sau de text) atunci când înveți să-l utilizezi, decât un joc mult mai serios?
Chiar dacă această metodă nu este caracteristică studiului Informaticii, la limita dintre jocul didactic și învățarea asistată de calculator se situează o bună parte dintre software-urile de învățare, atât a Informaticii cât și a altor discipline.
10. Instruirea programată și învățarea asistată de calculator
Instruirea programată poate fi aplicată cu mare succes în momentele în care obiectul primordial al predării îl constituie utilizarea unui mecanism real.
În cadrul instruirii programate, esențiale devin probele și produsele demonstrative, pe care ar trebui să le descriem elevilor.
Trebuie avut în vedere ca numărul de ore afectat acestei instruiri programate nu trebuie să fie foarte mare. Acestea trebuie să includă un număr suficient de ore de verificare a cunoștințelor acumulate, evitându-se însă monotonia și instaurarea plictiselii (este recomandată utilizarea alternativă a altor metode).
Trebuie evitată de asemenea și folosirea metodei pentru un timp îndelungat, lucru care poate conduce în anumite situații, la o izolare socială a elevului.
O idee pentru contracararea acestor efecte ar fi creșterea numărului de ore sau organizarea activităților pe grupuri sau în echipă.
Instruirea asistată de calculator este un concept diferit de instruirea programată, doar în modalitatea de utilizare. Există aceleași premise și moduri de utilizare, cu excepția faptului că un sistem de calcul devine principala interfață dintre un profesor și un elev.
Absolut toate noțiunile, conceptele, exercițiile, problemele, evaluările, testările, prezentările legate de o anumită temă în cadrul unei lecții (inclusiv estimarea îndeplinirii obiectivelor) sunt îndepliniri, dirijări, verificări cu ajutorul calculatorului (mediul soft corespunzător).
Procesul de predare-învățare și verificare-evaluare funcționează pe baza principiului cibernetic comandă-control-reglare (autoreglare). Instruirea programată, ca metodă didactică, presupune construirea unor programe de învățare, care prin fragmentarea materialului de studiat în secvențe realizează o adaptare a conținuturilor la posibilitățile elevilor, la ritmul lor de învățare, asigură o învățare activă și o informare operativă asupra rezultatelor învățării, necesară atât elevului pentru autocorectare cât și profesorului.
În elaborarea programelor de învățare se au în vedere următoarele operații:
precizarea obiectivelor operaționale în funcție de conținut și posibilitățile elevilor;
structurarea logică a conținutului după principiul pașilor mici și al învățării gradate;
fracționarea conținutului în secvențe de învățare (unități didactice) inteligibile și înlănțuite logic;
fixarea după fiecare secvență a întrebărilor, exercițiilor sau problemelor ce pot fi rezolvate pe baza secvenței informaționale însușite;
stabilirea corectitudinii răspunsurilor sau soluțiilor elaborate; aceasta se poate realiza fie prin alegerea dintre mai multe răspunsuri posibile (trei, patru sau chiar cinci), iar în situația în care nu a fost ales răspunsul corect, se poate recurge la întrebări suplimentare, fie se elaborează un răspuns și se compară cu cel corect.
Ca orice inovație, instruirea programată a trecut prin câteva faze contradictorii. La început s-a lovit de rezerva tenace a tradiției și de dificultățile materiale (tehnice), apoi după ce a câștigat teren în conștiința teoreticienilor și practicienilor s-au exagerat într-o oarecare măsură valențele ei aplicative, creându-se iluzia descoperirii pietrei filozofale în domeniul pedagogic. În final, după o analiză lucidă, s-a admis că există părți pozitive și negative.
Criticile aduse instruirii programate sunt atât de ordin psihologic, cât și de ordin pedagogic și metodic.
Psihologic, instruirii programate i se impută faptul că nu ține seama de principiile psihologice ale învățării, vizând învățarea ca o simplă succesiune și înmagazinare de fapte. De asemenea, se știe că motivația învățării nu poate fi analizată numai prin prisma reținerii și învățăririi imediate, făcând abstracție de interesul elevului față de conținut. În plus, elevul lucrând singur sau cu calculatorul, se simte izolat.
Pedagogic vorbind, fărâmițarea conținuturilor este în detrimentul formării unei viziuni globale, iar valoarea cunoașterii imediate de către elev a rezultatului obținut are valențe contestabile.
Metodic, decupajul analitico-sintetic al conținuturilor îngustează elevului posibilitatea formării aptitudinilor de analiză și sinteză.
Aceste critici au determinat mutații serioase în concepția de aplicare a metodei, dar practica didactică dovedește că atunci când se cunosc și se evită cauzele care generează efecte negative, metoda produce rezultate bune. Tendințele de îmbunătățire a aplicării metodei se îndreaptă către alternarea utilizării metodei cu celelalte metode clasice. Inserarea într-o lecție programată a unor metode clasice schimbă determinarea muncii școlare, repunându-l pe elev în directă dependență cu activitatea profesorului și dându-i acestuia posibilitatea să verifice gradul de însușire a cunoștințelor conținute în program.
O altă tendință este aceea de a modifica modul de redactare al programului, în special prin mărirea volumului de informație din unitățile logice și prin separarea părții de verificare, existând situații în care verificarea se va face după câteva ore sau chiar a doua zi. În plus, în program se pot insera secvențe independente, care să necesite timp mai mare de gândire sau de lucru.
Izolarea imputată învățării programate poate fi contracarată prin alternarea cu munca în grup sau chiar prin învățare programată în grup, situație în care grupul parcurge în colectiv un program special conceput în acest sens.
Un exemplu de program de învățare care convinge prin atractivitate este un program de învățare a tablei înmulțirii:
– se generează aleator, succesiv, zece perechi de numere naturale de la 1 la 10;
– se afișează pe ecran perechile corespunzătoare sub forma n1xn2 și elevul introduce de la tastatură rezultatul;
– programul afișează un mesaj sau emite un semnal sonor în cazul în care răspunsul este incorect și repeta întrebarea; dacă nici al doilea răspuns nu este corect, se va afișa răspunsul corect;
– fiecare răspuns este punctat, iar la sfârșit se va afișa nota obținută; programul poate cere continuarea cu un nou set de zece întrebări.
Perspectiva învățării asistate de calculator – inclusiv prin intermediul INTERNET-ului – este certă. Ea oferă posibilitatea prezentării programului, verificării rezultatelor și corectării erorilor, modificând programul după cunoștințele și conduita elevului. Calculatorul nu numai că transmite un mesaj informațional, dar el poate mijloci formarea și consolidarea unor metode de lucru, de învățare. Se poate afirma că învățarea asistată de calculator nu numai că învață elevul, ci îl și învață cum să învețe. Prin aplicarea acestei metode de învățare nu se întrevede diminuarea rolului profesorului. Dimpotrivă, sarcinile lui se amplifică prin faptul că va trebui să elaboreze programe și să le adapteze la cerințele procesului educativ. Oricât de complete ar fi programele de învățare asistată de calculator, profesorul rămâne cea mai perfecționată mașină de învățat.
Tot mai mult se pune accentul pe introducerea metodelor interactive: mozaicul, cafeneaua, turul galeriei, controversa academică ș.a, binențeles că la un loc cu cele mai vechi, bine cunoscute, tocmai pentru a eficientiza predarea informaticii:
– mozaicul- este o metodă de învățare care se bazează pe distribuirea sarcinilor de învățare unor grupuri de elevi astfel ca în urma colaborării fiecare elev să aibă întreaga schemă de învățare. Învățarea diferențiată se bazează pe ideea că unii elevi pot cunoaște mai bine anumite aspecte ale conținutului (specializare), dar că toți elevii au aceleași cunoștințe generale despre întregul subiect. Numărarea elevilor și împărțirea lor pe grupe după un algoritm specific este foarte importantă. Elevii vor fi grupați în 4 grupuri inițiale de câte 4 elevi, fiecărui elev din grup atribuindu-se câte un număr de la 1 la 4.
Subiectul ce urmează a fi studiat se împarte în prealabil în 4 părți de dimensiuni și grade de dificultate similare. Urmează reașezarea elevilor în sală: toți elevii cu numărul 1 vor forma un grup de experți, același lucru se întâmplă pentru elevii cu celelalte numere obținându-se astfel patru grupuri de experți:
Elevii din grupurile de experți au sarcina de a învăța cât mai bine partea din materialul de studiu care le-a fost atribuită pentru a o preda sa explica colegilor lor din grupurile inițiale. Pentru aceasta elevii vor discuta problemele și informațiile cele mai importante și se vor gândi la o modalitate de a le prezenta, de a preda, partea pregătită de ei colegilor din grupul inițial. Profesorul poate interveni ca moderator și facilitator oferind consultanță elevilor când aceștia ajung în momente de impas. După îndeplinirea sarcinilor de lucru din fiecare grup de experți elevii specializați fiecare într-o anumită parte a lecției revin în grupurile inițiale și predau colegilor lor partea pregătită cu ceilalți experți. În fiecare grup inițial vom avea 4 elevi specializați fiecare într-o parte diferită a lecției și fiecare dintre aceștia va preda partea lui. Astfel fiecărui elev îi revine responsabilitatea predării și învățării de la colegi.
Este foarte important ca evaluarea sau verificarea să se facă din întregul cunoștințelor acoperind toate părțile lecției. Astfel toți elevii vor fi stimulați să învețe toate părțile lecției predate de colegii lor. Există și variante ale metodei de tip mozaic. După cum s-a văzut mozaicul de referință se bazează pe împărțirea fizică a textului de studiu în patru părți similare ca lungime și ca grad de dificultate sau găsirea unor texte de studiu diferite care să respecte condițiile anterioare. Fiecărui grup de experți îi revine aprofundarea și predarea părții care i-a fost atribuită. O altă variantă constă în împărțirea tematică a aceluiași text. Fiecărui grup de experți i se dau 2-3 întrebări după care experții trebuie să le răspundă. Partea pregătită și predată de experți va reprezenta deci o focalizare asupra unor aspecte sau probleme specifice ale aceluiași material de studiu. În grupurile inițiale fiecare elev va citi tot textul iar apoi se va face regruparea în grupurile de experți, ceilalți pași fiind similari cu cei ai mozaicului descris anterior. Trebuie avut în vedere modul de formulare ale celor 2-3 întrebări. Este indicat ca ele să corespundă unor nivele diferite ale taxonomiei lui Bloom. De exemplu: prima întrebare poate să vizeze nivelul factual cerând răspunsuri exacte cu privire la date colectate din text. A doua întrebare poate viza nivelul analizei și sintezei oferind soluții originale la o problemă iar ultima întrebare poate viza nivelul de evaluare stimulând luarea unei atitudini, examinarea conținutului respectiv din prisma propriei experiențe de viață.
– Cafeneaua- este o metodă asemănătoare cu Mozaicul, dar diferă mai ales din punct de vedere al scopului pentru care este concepută: dacă mozaicul are ca scop de bază divizarea sarcinilor și predare reciprocă, cafeneaua păstrează divizarea sarcinilor dar urmărind realizarea unor produse printr-un schimb reciproc de idei sau de informații. Metoda este eficientă atunci când dorim ca fiecare grupă să realizeze un produs care să integreze și ideile sau sugestiile colegilor lor. Elevii clasei se împart în 3-4 grupe având un număr egal de membrii (minim 4 în fiecare grupă). Fiecare grupă primește anumite sarcini de realizat. Sarcinile pot fi toate aceleași sau pot fi diferite. Grupele pot primi și fișe de lucru care să conțină sarcinile de lucru. În prima etapă fiecare grupă își realizează sarcinile primite de la profesor sau din fișele de lucru. După terminarea sarcinilor (care se pot concretiza într-un afiș conținând ideile principale), grupele își deleagă fiecare câte un reprezentant (denumit vizitator pentru că se deplasează în vizită la o altă grupă) care se va așeza la mesele celelaltor grupe:
– Grupa I trimite câte un reprezentant la Grupa II, III și IV – – Grupa II trimite câte un reprezentant la Grupa I, III și IV – – Grupa III trimite câte un reprezentant la Grupa I, II și IV – – Grupa IV trimite câte un reprezentant la Grupa I, II și III
Membri rămași, adică cei care nu se deplasează nicăieri (gazdele), prezintă produsele pe care le-au realizat până în momentul respectiv. Vizitatorii rețin aspectele cele mai importante și pun întrebări lămuritoare (nu prezintă ce au realizat în grupele lor). Vizitatorii revin în grupele lor și în funcție de informațiile primite de la colegii din celelalte grupe, își perfecționează și dezvoltă materialul. În final fiecare grupă își poate prezenta produsul sau acestea pot fi afișate utilizându-se metoda Turul Galeriei.
– Turul galeriei- Este o metodă de învățare prin colaborare care poate fi utilizată la finalul unei activități care se bazează pe crearea unui produs:
Elevii lucrează în grupuri și reprezintă munca lor pe foaie de format mare sub forma unui afiș. Produsul poate fi o diagramă, o schemă, o reprezentare simbolică (printr-un desen sau o caricatură), etapele esențiale surprinse în propoziții scurte, etc.
Elevii vor face o scurtă prezentare în fața întregii clase a proiectului lor explicând semnificația afișului și răspunzând la eventuale întrebări.
Apoi elevii vor expune afișele pe pereți alegând locurile care li se par cele mai favorabile. Lângă fiecare afiș se va lipi o foaie goală pe care se poate scrie cu marchere sau creioane colorate.
Profesorul va solicita grupurile de elevi să se oprească în fața fiecărui afiș, să-l discute și să noteze pe foia albă anexată comentariile, sugestiile și întrebările lor. Această activitate poate fi comparată cu un tur al galeriei de afișe.
în final elevii revin la produsele lor, le compară cu celelalte și citesc comentariile făcute de colegii lor în foile anexate. Se poate continua cu un răspuns al grupului la comentariile și întrebările din anexe.
Mai există și un alt tip de metode și anume, generatoare de dezbateri, care cuprinde metode ca rețeaua discuțiilor, controversa academică:
– Rețeaua discuțiilor- Aceasta reprezintă o tehnică de discuții bazată pe o întrebare care permite polarizarea răspunsurilor.
Elevii vor fi rugați să lucreze în perechi și să traseze un grafic ca în figura de mai sus. Ei vor discuta timp de 6-7 minute întrebarea pusă de profesor (de ex. Distribuțiile de tip Linux răspund necesităților utilizatorului )listând pur și simplu argumentele care le vin în minte, mai întâi cele din coloana cu Da apoi pe cele din coloana cu Nu, fără a dezbate însă problema pusă în discuție. După ce toate perechile au terminat de listat argumentele, atât cele pro cât și cele contra fiecare pereche se va asocia unei alte perechi împărtășindu-și argumentele găsite. În grup vor discuta problema pusă în discuție până ce ajung la o concluzie. Concluzia găsită poate fi notată la subsolul paginii. Profesorul va citi concluziile care pot fi discutate în clasă.
– Controversa academică- Aceasta este o activitate de învățare prin colaborare asemănătoare cu rețeaua discuțiilor. Ea se desfășoară în felul următor. Clasei i se prezintă un subiect controversat. Prezentarea poate lua forma unei lecturi, a unui studiu de caz etc. în continuare, profesorul pune o întrebare binară, de exemplu; "Sistemele Open Surse sunt mai fiabile ? "
Elevii se grupează apoi câte patru. În fiecare grup, o pereche adoptă poziția "pro", iar cealaltă pereche poziția "contra". Urmează apoi o discuție între perechi, al cărei scop este ca elevii să enumere argumente în sprijinul fiecărei poziții din cele două. După șapte sau opt minute, membrii perechii "pro" se despart, fiecare formând o nouă pereche cu un alt elev care a susținut poziția "pro" pentru a-și compara argumentele. Același lucru se întâmplă și cu perechile "contra". După cinci minute, perechile inițiale se reunesc, își compară însemnările și în alte cinci minute își completează lista de argumente. În continuare, perechile din grupurile inițiale de patru încep să dezbată cu adevărat problema. Cel mai bine este ca fiecare parte să înceapă prin a-și formula clar poziția, oferind apoi argumente. Lăsați dezbaterea să continue timp de 8-10 minute. La sfârșitul acestui interval, invitați reprezentanți ai celor două puncte de vedere să-și exprime concluziile. Opțional, puteți să le dați câteva minute în care să se gândească la ceea ce cred ei cu adevărat despre problemă și să discute acest lucru în grupul lor sau le puteți cere să scrie liber timp de zece minute despre poziția lor adevărată.
Profesorul de informatică poate aplica cu success multe dintre metodele moderne de învățare cum ar fi: instruirea programată, instruirea asistată de calculator, e-Learning, metoda învățării în grupe mici, învățarea centrată pe elv, și altele. Despre primele trei metode enumerate mai sus am vorbit în partea I a lucrării.
Învățarea centrată pe elev reprezintă o abordare care presupune un stil de învățare activ și integrarea programelor de învățare în funcție de ritmul propriu de învățare al elevului. Elevul trebuie să fie implicat și responsabil pentru progresele pe care le face în ceea ce privește propria lui educație.
Aceaste metodă de învățare prezintă următoarele avantaje:
Creșterea motivației elevilor, deoarece aceștia sunt conștienți că pot influența procesul de învățare;
Eficacitate mai mare a învățării și a aplicării celor învățate, deoarece aceste abordari folosesc învățarea activă;
Învățarea capătă sens, deoarece a stăpâni materia înseamnă a o înțelege;
Posibilitate mai mare de includere – poate fi adaptată în funcție de potențialul fiecarui elev, de capacitățile diferite de învățare, de contextele de învățare specifice.
În continuare sunt prezentate câteva aspecte de care trebuie să se țină seama în trecerea la învățarea centrată pe elev:
Formarea profesorilor;
Asigurarea resurselor;
Aplicarea flexibilă a standardelor;
Flexibilizarea sistemului care prevede perioade obligatorii (inclusiv abordarea “anului suplimentar” pentru elevii identificați ca având cerințe educaționale speciale);
Recunoașterea opțiunilor;
Acreditarea parțială;
Sprijinirea elevilor (în special pentru evaluare) fară compromiterea acordarii calificarii.
Învățarea centrată pe elev este una dintre cele mai recente metode de instruire caracterizată mai ales prin mutarea accentului de pe educator pe elev, care devine actor principal al propriei
Profesorul trebuie să aibă în vedere: pregătirea materialului ce urmează a fi repartizat și îndrumarea și supravegherea activității. Utilizând această metodă, profesorul devine collaborator al elevului; acesta privind cu mai multă încredere întreg demersul didactic al cadrului didactic.
Când unul sau mai multe dintre grupuri găsește o soluție, acestea vor fi dicutate și analizate succesiv sau în paralel. Scopul acestei discuții este de a reliefa corectitudinea rezolvării, determinarea celei mai eficiente și mai elegante soluții și de a descoperi eventualele erori. Importanța acestor dezbateri pentru dezvoltarea raționamentului este foarte mare, iar rolul profesorului este cel de a incita și coordona discuțiile în direcția obținerii concluziilor care se impun.
Trebuie subliniat că: nu trebuie mereu constituite grupuri după aceleași criterii, pentru că pot fi suprasolicitați unii elevi, în detrimentul celorlalți.
Întrucât această metodă este aplicată foarte des la informatică, profesorul de informatică devine polul de încredere al elevilor și – de ce nu? – prietenul acestora.
Programa pentru opțional
Linux Aplicat
Colegiul Național „Ștefan cel Mare” Suceava
prof. Adrian Petrișor
Argument
Evoluția surprinzătoare din ultimii ani a sistemului de operare LINUX, bazat pe UNIX – punct de referință în lumea sistemelor de operare, impune și inițierea în utilizarea sa a elevilor de la profilul Matematică-Informatică intensiv din colegiul nostru. Fiind un curs de inițiere, numărul de ore alocate este de una pe săptămână, cursul adresându-se elevilor de la clasa a XII-a Cursul răspunde solicitărilor elevilor și necesității modernizării materiei de liceu pentru a fi pe cât posibil sincronizată cu evoluțiile rapide din lumea științei calculatoarelor.
Sugestii metodologice
Opționalul este prin substanță un curs practic astfel încât toate orele se vor desfășura în laboratorul de Informatică, astfel încât lucrurile noi învățate să poată fi imediat exemplificate folosind calculatorul.
Dată fiind complexitatea sistemului, accentul va fi pus pe asimilarea lucrurilor esențiale și pe trezirea interesului pentru învățarea prin descoperire.
Evaluarea elevilor se va face fie sumativ, bazată pe răspunsurile și rezolvările sarcinilor noi, în urma înțelegerii noțiunilor din lecția de zi, fie pe baza unor teste practice la sfârșitul unei unități de învățare.
Obective de referință
Cunoașterea structurii și funcțiilor unui sistem de operare
Cunoașterea și utilizarea corectă a termenilor de specialitate
Cunoașterea elementelor particulare ale sistemului LINUX
Utilizarea interfeței grafice cu utilizatorul și a liniei de comandă
Cunoașterea și utilizarea principalelor comenzi ale sistemului
Cunoașterea și utilizarea aplicațiilor esențiale ale sistemului
Cunoașterea elementelor de bază ale programării shell
Conținuturi
Sisteme de operare. Structură și funcții
Sistemul de operare UNIX (scurt istoric, caracteristici)
Privire de ansamblu LINUX (terminologie, distribuții, filosofia sistemului, sistemul de fișiere, interfețe, etc.)
Configurarea sistemelor Linux
Instalarea sistemelor Linux
Actualizarea sistemelot Linux
Exploaterea echipamentelor hardware sub Linux
Plăci video, Rețele,Pc Cards,
Imprimante,unități de disc
Sistemul X-window:
Desktop
Explorarea sistemului de fișiere
Crearea/ștergerea directoarelor
Manipularea fișierelor
Editoare text
Editoare grafice
Accesul la rețea
Browsere web: Mozilla Firefox, Konqueror
xmms – Music player
xine – Video player
Intrefață prin linia de comandă – terminalele
Ce este un shell?
Comenzile de bază LINUX:
comenzile date,cal
Comenzile de ajutor: man, info, apropos
Informații despre system
Accesul la hard-disk
Navigarea în sistemul de fișiere: pwd și cd
Vizualizarea fișierelor: ls, cat, less
Tipul fișierelor: comanda file
Manipularea fișierelor: cp, mv, rm, mkdir
Căutarea fișierelor
Compresia/decompresia fișierelor
Redirectarea legăturilor:
Standard Output
Standard Input
Pipes
Filtre
Permisiunile fișierelor și directoarelor
Conturile utilizatorilor
Controlul proceselor:
Listarea proceselor
Lansarea proceselor în background
Comanda kill
Utilitarul top
Utilitarul mc
Pachetul Open Office
Calcule cu bc
Bourne Again Shell (bash):
Cum se creează un script
Variabile
Comanda echo
Structura if
Comanda read
Operații aritmetice
Structuri iterative
Utilizarea parametrilor din linia de comandă
Programarea C sub Linux
Editoare Editorul emacs,joe, mc și vi
Compilatoare
Compilarea programelor C: GCC
Compilarea programelor C++: G++
Instrumente de programare
Depanarea programelor: gdb, make,autoconf, automake, libtool,patch, diff, diffstat
Programe utile: indent, strip etc.
Documentarea programelor: DOC++
Medii integrate de dezvoltare : DDD,,KDevelop,Glade
Programarea în Perl
Caracterizarea limbajului Perl
Elemente definitorii
Subrutine
Procesarea fisierelor
Module Perl
Expresii regulate
Conceperea de scripturi CGI
Exemple și studii de caz
Colegiul Național “Ștefan cel Mare” Suceava
Catedra de Informatică
Proiect de tehnologie didactică
Clasa: a XII –a B
Profilul: Matematică – Informatică intensiv
Profesor: Adrian PETRIȘOR
Data: 12.12.2008
Unitatea de învățare: Programarea Bash
Tema lecției: Structurile repetitive for și while;
Obiectiv fundamental: transmiterea și însușirea de noi cunoștințe.
Scopul lecției Demonstrarea și conștientizarea utilității aplicării instrucțiunilor de ciclare
în scripturi bash;
Durata lecției 50 ‘
LOCUL DE DESFĂȘURARE: laboratorul de informatică
Obiective operaționale: (competențe specifice):
În urma desfășurării lecției elevii trebuie:
Să-și însușească principalele noțiuni de lucru în aplicații folosind scripturi bash ;
Să cunoască și să facă dinstincția dintre instrucțiunile de ciclare ;
Dezvoltarea capacității deductive și a intuiției în construirea de scripturi pornind de la noțiunile și definițiile deja studiate la orele de clasă ;
Să aplice în proiecte si să implementeze noțiunile studiate.
La sfârșitul ședinței de aplicații practice la laboratorul de informatică, elevii trebuie să fie capabili :
să cunoască și să implementeze corect diversele forme de structuri repetitive cât și principiile folosirii lor
Metode și procedee folosite: MP1: Conversația euristică
MP2: Problematizarea
MP3: Demonstrația
MP4: Activitate individuală
Metode didactice: explicația, modelarea, exercițiul, problematizarea aplicație practice,dialogul profesor – clasă, prezentarea de exemple;
Resurse necesare realizării obiectivelor operaționale
Resurse psihologice: nivel bun de asimilare a cunoștințelor despre structuri repetitive din limbajul C;
Resurse materiale: calculatorul având instalat mediul Linux sau Knoppix, fișe de lucru, tabla;
Metode didactice: dialogul profesor – clasă, prezentarea de exemple,
Moduri de activitate cu elevii:
frontal – pentru realizarea feedbackului;
individual – pentru analiza rezolvării aplicațiilor propuse; elevii vor fi supravegheați și îndrumați, profesorul va da un ajutor mai substanțial elevilor care întâmpină greutăți la rezolvare sau implementare;
Mijloace de învățământ: tablă, cretă, manual, calculatorele,laboratorul de informatică;
BIBLIOGRAFIE:
“Programarea WEB în Bash și Perl”, Sabin Buraga ,Victor Tarhon-Onu, Ștefan Tănasă
Editura Polirom 2002
“Instrumente Linux Utilizări practice pentru Open Source Software”, Michael Schwarz, Jeremy Anderson, Peter Curtis,Steven Murphy , Editura Niculescu 2005
Fișa 1
I.ls /home/student/file*
II.ls /home/student/*.tar.gz # poze.tar.gz arhiva.tar.gz scripting.tar.gz
III.ls $HOME/???
IV.chmod u+rx ./?gz?
V. ls [A-Z]*
VI.mv *[!a-zA-Z0-9]
Exemplul 1
#!/bin/bash
for i in $( ls ); do
echo item: $i
done
Exemplul 2
#!/bin/bash
for x in /etc/r??? /var/lo* $HOME/.*; do
echo $x; stat $x;
done
Exemplul 3
#!/bin/bash
x=0
while [ $x -lt 10 ]
do
echo $x
x=$[$x+1]
done
Exemplul 4
#!/bin/bash
alphabet="a b c d e"
count=0
while [ $count -lt 5 ]
do
count=`expr $count + 1`
position=`bc $count + $count – 1`
letter=`echo "$alphabet" | cut -c$position-$position`
echo "Letter $count is [$letter]"
done
Utilizarea platformei Linux în învățământul preuniversitar
Într-o economie de piață, unde concurența dintre firme se manifestă acerb, o modalitate de reducere a costurilor o constituie folosirea aplicațiilor open source.Aceste programe pot fi descărcate de pe internet, instalate și utilizate gratuit. Procesul de instruire
în utilizarea programelor open source se realizează de obicei în cadrul instituțiilor de învățământ sau la locul de muncă, fiecare modalitate prezentând avantajele și dezavantajele sale.
Fiecare distributie de Linux are particularitatile ei, nu exista doua distributii identice. Aceste particularitati reprezinta de fapt identitatea fiecarei distributii. Acest lucru este bun, puterea open-source vine tocmai din diversitate. Totusi, exista doua standarde care ar trebui respectate, FHS (File Hierarchy System) si LSB (Linux Standard Base)
Linux este extrem de popular în majoritatea centrelor universitare din țară și chiar și în cazul unor licee, multe discipline folosindu-l ca platformă de referință (Sisteme de operare, Programarea calculatoarelor, Rețele de calculatoare și altele). Cei mai mulți furnizori de servicii Internet folosesc Linux datorită capabilităților sale excelente de rețea, flexibilității în configurare și stabilității sale. De asemenea, profesioniștii științei calculatoarelor îl utilizează pentru instrumentele puternice de programare, procesare de texte etc. de care dispune
Distribuții Linux populare
O distribuție Linux, adesea denumită simplu distribuție sau distro, este o membră a familiei sistemelor de operare Linux, fiind compusă din:
-nucleul Linux,
-componente ale proiectului GNU (utilitare sistem, compilatoare, biblioteci software),
-alte pachete software (utilitare pentru managementul pachetelor software, utilitarea pentru managementul fișierelor, medii desktop grafice,
Există peste 300 de de distribuții Linux active la ora actuală însă o distribuție este cu atât mai bună din punct de vedere calitativ, cu cât comunitatea care folosește acea distribuție este mai mare, deoarece aceste distribuții trec printr-un proces mult mai riguros de testare din partea comunității. Cele mai folosite distribuții de Linux sunt
Fedora Core – născut din proiectul RedHat, dar conținând exclusiv software liber, și disponibil gratuit de pe Internet.
SuSE Linux – o distribuție orientată atât spre servere cât și spre stații de lucru și desktopuri, faimoasă pentru ușurința în utilizare și configurare. Produsă de compania germană Suse, parte a grupului Novell.
TFM/GNU Linux – distribuție de Linux Server și Workstation 100% românească, stabilă, ușor de instalat și nu necesită cunoștințe avansate de Linux. Produsă de compania TFM Group
Mandriva Linux -fost Mandrake Linux,o altă distribuție ușor de utilizat, orientată spre piața desktop, creată de compania franceză Mandriva.
Debian GNU/Linux- una din distribuțiile cele mai vaste de pe Internet, conținând un număr uriaș de pachete.
Gentoo Linux- o distribuție orientată spre performanțe și optimizări maxime. Notorie pentru timpul foarte lung necesar instalării (majoritatea pachetelor se compilează și optimizează pentru sistemul pe care se face instalarea – de aici viteza mare a sistemelor Gentoo instalate, nu se copiază ca în cazul celorlalte distribuții) și pentru instalarea dificilă dar și pentru managerul de pachete și de sistem foarte avansat .
Slackware Linux, o distribuție axată pe servere, una din cele cu istoria cea mai lungă, notorie pentru moto-ul "Păstrează-l simplu", ducând la lipsa multor unelte de configurare simplificată, dar și la o viteză mare de lucru, posibilitate de a-l instala pe hardware mai vechi, și la o simplitate în organizarea sistemului.
NimbleX, o distribuție versatilă, fabricată in Romania și bazată pe Slackware care rulează direct de pe CD, USB sau chiar și LAN. Partea cea mai atractivă a sa este faptul că, deși este mic, NimbleX-ul are o interfață grafică puternică și frumoasă și o mulțime de programe incorporate pentru navigarea pe Internet, editarea de documente, ascultarea muzicii, rularea filmelor și multe altele.
Knoppix, o distribuție completă care rulează direct de pe CD, nu instalează absolut nimic pe hard disk, putând fi folosit atât pentru călătorii sau demonstrații cât și pentru diagnosticări de sistem, reparări, recuperări de date etc.
Slax, o altă distribuție care rulează direct de pe CD, dar de data asta capabilă să încapă pe un flash drive de 256 MB.
Ubuntu, o distribuție orientată spre utilizatorul obișnuit, foarte populară prin faptul că este foarte aerisită, ușor de utilizat și configurat, dar în același timp puternică și stabilă. În prezent formează o întreagă familie de distribuții strâns înrudite: Kubuntu (folosește KDE), Xubuntu (folosește Xfce), Edubuntu (orientat spre educație).
RedHat Linux – una din cele mai cunoscute distribuții, acum orientată exclusiv spre piața serverelor și spre mediul de afaceri. A dat naștere proiectului Fedora Core
PCLinuxOS – un distro ce uimește prin usurința instalării – ideal pentru începători.
Ubuntu este un sistem de operare bazat pe Linux, dezvoltat de comunitate, perfect pentru calculatoarele portabile, de birou sau servere. Include toate aplicațiile de care aveți nevoie – un navigator pentru Internet, programe pentru editarea documentelor, prezentărilor și calcul tabelar, mesagerie instant și multe altele.
Edubuntu este folosit în școlile primare și cele secundare în multe state din lume. Este o unealtă excelentă pentru a studia. Edubuntu este derivata oficială a sistemului de operare Ubuntu special intuită pentru Educație. Edubuntu conține un număr larg de aplicații educaționale, enumerând printre ele și GCompris, KDE Edutainment Suite, și Schooltool Calendar.
Edubuntu a fost dezvoltat special pentru profesorii/educatorii cu cunoștințe limtate în domeniul tehnologiilor și experiență minimă în setarea unui laborator de informatică, sau inițierea unui mediu educațional online, toate în mai puțin de o oră, și cu posibilități ulterioare de administrare a acelui mediu.
GCompris oferă o colecție mare de activități pentru copii , galant oferindu-le posibilitatea de a pricepe calculatorul, mai apoi introducându-i în bazele matematicii, activități de citire, și multe altele.
KDE Edutainment Suite este o colecție distractivă de unelte educaționale ce folosesc resurse din cadrul KDE. Ținta acestor aplicații o reprezintă în special tinerii și copii de la 8 la 18 ani, iar interfața corespunde nevoilor și dorințelor acestora. Totuși, în suită sunt incluse aplicații ce vor ajuta profesorii la programarea orelor sau vor oferi ajutor studenților interesați, sau oricui i-ar plăcea să mai învețe câteceva.
În distribuții precum Knoppix la care nu este necesară instalarea sistemului de operare prin aplicații de tipul Kstars se pot aprofunda noțiuni la disciplina Astronomie.sau Chimie.
Bibliografie
Sisteme de operare interactive, M. Boian, Ed. Libris, Cluj Napoca, 1994
Totul despre Red Hat Linux, Ed.Teora 2000, Naba Barkakati
Linux newbie administrator guide, http://linux-newbie.sunsite.dk
Administrarea și configurarea sistemelor Linux Ed.Polirom 2002 Dragoș Acostăchioaie
Programare Web în bash și Perl, Sabin Buraga Ed. Polirom, Iași, 2002:
Programare C și C++ pentru Linux Dragoș Acostăchioaie Ed. Polirom 2002
Securitatea sistemelor Linux Dragoș Acostăchioaie Ed. Polirom 2003
Utilizare Linux Noțiuni de bază și practică Dragoș Acostăchioaie,Sabin Buraga Ed. Polirom 2004
Dezvoltarea aplicațiilor Web cu PHP și MSQL Luke Welling Laura Thomson Ed.Teora
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Utilizarea Platformei Linux In Invatamantul Preuniversitar (ID: 149333)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
