Materia Structuri de Date si Algoritmi va include Assignment-uri Practice (Teme) ce vor fi corectate automat, folosind scripturi de tip Checker. Deoarece aceste script-uri ruleaza pe baza comenzilor din Linux, este necesar sa le executam dintr-un mediu Linux.
Desi exista suficiente metode de a aborda aceasta conditie, noi va propunem urmatoarele optiuni, fiecare avand avantajele si dezavantajele sale:
Desi recomandarea noastra este puternic axata pe WSL, enumeram multiple optiuni pentru a realiza setup-ul unui Environment Linux.
Varianta 1 si 3 este recomandata celor ce au sistem de operare principal Windows. Desigur, nu e nicio problema daca cei cu Windows au masini virtuale Linux. E doar ineficient.
Varianta 2 este recomandata celor ce ruleaza MacOS.
Microsoft a introdus Windows Subsystem For Linux versiunea 2, care este o versiune noua de arhitectura ce permite rularea Linux 'peste' Windows 10, cu suport nativ (asemanator cu o masina virtuala, dar care consuma mult mai putine resurse).
Aceasta este o solutie ce vine in sprijinul solutionarii problemelor legate de VM-uri greoaie, mai ales pentru cei care nu au memorie RAM sau spatiu de stocare pentru rularea in paralel a Windows si a unui VM.
Nu inlocuieste, in schimb, experienta unui Dual Boot (Windows + Ubuntu 20.04, spre exemplu), prin care cineva poate obtine 'best of both worlds', in detrimentul unui setup mai complex.
Pentru Programare Orientata pe Obiecte, nu veti avea nevoie de lucruri prea sofisticate in termeni de Linux, deci WSL ar trebui sa fie o solutie eleganta pentru rularea unui checker, spre exemplu.
WSL2 este un update adus WSL1, cu suport nativ integrat mai facil pentru Linux, axat pe robustete. In esenta, WSL1 foloseste un 'strat' aditional peste Windows, pe cand WSL2 contine propriul Kernel, adica nu exista nicio diferenta (aparenta) dintre rularea WSL2 si un mediu dedicat Linux. De asemenea, WSL2 utilizeaza mai putina memorie ca WSL1.
Recomandarea noastra este sa faceti demersurile unui update de Windows 10 la versiunea 2004, cand stiti ca veti avea 3 ore libere, conexiune la internet si curent ca sa va alimentati laptop-ul.
Daca aveti probleme oriunde, cautati pe Google: 'How do I install WSL2?'. Poate pare un aspect trivial, dar veti gasi nenumarate ghiduri pentru instalare, cu explicatii detaliate.
Tehnologia vine sub mai multe nume, dintre care Hyper-v, HyperV, Virtualizare sau Intel Virtualization Technology. Ea permite crearea masinilor virtuale prin 'activarea' hardware-ului pentru virtualizare.
Indiferent de nume, aceasta este o setare ce va trebui activata din cadrul BIOS.
Un prim pas este sa intelegeti care este tasta pe care trebuie apasata (repetat) la pornirea calculatorului, pentru a va introduce in BIOS.
Mai apoi, trebuie sa cautati aceasta setare prin optiunile BIOS si sa verificati daca este activata ('enabled').
Daca nu este, asigurati-va ca o setati, iar apoi apasati 'Save and Exit'.
Pentru mai multe detalii, click aici.
Aceasta asta e cea mai dificila parte a setup-ului: WINDOWS UPDATE.
In functie de ultima versiunea a Windows-ului vostru, update-urile pot dura ore intregi. In functie de HDD/ SDD, poate dura si mai mult.
Ca referinta: i5 7200U, 256GB SSD, 8GB RAM: 2-3 ore (download + install + eventuale probleme cu download-uri)
Titlul sectiunii este destul de intuitiv: trebuie sa faceti update versiunii de Windows la cel putin 2004 (numarul versiunii, nu are legatura cu vreun an).
Start > Settings > System > About (jos) > Windows specifications > Version
Start > Settings > Update & Security > Windows Update > Update now
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Click aici pentru download.
Rulati instalarea, asigurati-va ca se termina cu succes.
Cand porniti aplicatia Ubuntu, veti primi un prompt (ecran) legat de setup. Urmati instructiunile de pe ecran.
Navigare prin kernel-ul Linux pana ajungem in zona partajata cu Windows.
sergiu@SERGIU:~$ cd .. sergiu@SERGIU:/home$ cd .. sergiu@SERGIU:/$ ls bin dev home lib lib64 media opt root sbin srv tmp var boot etc init lib32 libx32 mnt proc run snap sys usr sergiu@SERGIU:/$ cd mnt sergiu@SERGIU:/mnt$ ls b c d
Ne montam pe drive-ul C
sergiu@SERGIU:/mnt$ cd c
Partea de mai jos o sa fie diferita pentru fiecare. 'sergi' este prescurtarea cu 5 caractere a username-ului Sergiu. Asemanator, va trebui sa inlocuiti dupa caz, pentru voi.
sergiu@SERGIU:/mnt/c$ cd Users sergiu@SERGIU:/mnt/c/Users$ ls 'All Users' Default 'Default User' Public desktop.ini sergi sergiu@SERGIU:/mnt/c/Users$ cd sergi sergiu@SERGIU:/mnt/c/Users/sergi$ cd Desktop/ sergiu@SERGIU:/mnt/c/Users/sergi/Desktop$
Alternativ, puteti instala aplicatia oricarui Distro Linux (disponibila pe Windows App Store) si sa faceti un setup asemanator. Ba mai mult, puteti avea mai multe Distro-uri care ruleaza in acelasi timp, dar trebuie sa stiti cum sa le porniti/inchideti/setati ca default etc.
O aplicatie de virtualizare reprezinta un layer software ce se instaleaza pe un sistem de operare gazda, permitand astfel rularea simultana a mai multor sisteme de operare. Situatii in care este util sa avem o masina virtuala:
Putem descarca VirtualBox (ce este VirtualBox?) accesand link-ul virtualbox.org, iar in functie de sistemul de operare pe care il avem instalat selectam pachetul dorit din lista prezentata la sectiunea ,,VirtualBox platform packages”.
Pentru a descarca o versiune de Ubuntu accesam link-ul ubuntu.com.
O alta metoda pentru instalarea Ubuntu-lui pe masina virtuala este prezentata in urmatorul tutorial video.
Deoarece optiunea de Dual-Boot implica complexitate mai mare, o vom adresa utilizatorilor ce se considera avansati. Din acest motiv, nu va exista un ghid, din cauza multitudinilor de optiuni si sisteme disponibile, care au setari diferite. Cu toate acestea, va lasam urmatorul tutorial video.