TECH

by -
0 868

Utilizarea unui calculator presupune utilizarea datelor. Fie că editați un text, ascultați muzică stocată pe calculator sau jucați un joc, toate acestea reprezintă date care, în cele mai multe cazuri, sunt depozitate pe un mediu de stocare. Ei bine, acest mediu de stocare poate fi de tip HDD (Hard Disk Drive) sau SDD (Solid State Drive).

//HDD

HDD vs SSD

 

Un HDD presupune platane rotative, pe care sunt stocate datele, și un cap magnetic care, cu ajutorul unui braț motorizat, se mișcă pe suprafața platanelor și citește datele. La rândul lor, datele sunt accesate într-o manieră aleatorie (random-access), ceea ce înseamnă că blocuri individuale de date pot fi stocate sau citite în orice ordine și nu doar secvențial. Hard Disk Drive-urile sunt un tip de memorie non-volatilă și rețin datele după pierderea sursei de alimentare.

În anii ’50, IBM ne-a făcut cunoștiintă cu primul HDD și de atunci au dominat domeniul tehnic – de la simple calculatoare personale la ferme de servere (imaginați-vă hale industriale ocupate de sute, chiar mii de calculatoare, folosite doar pentru stocare de date).

server farm HDD vs SSD
 
 

//SSD

InsideanSSD

Un SSD este un mediu de stocare Solid State (circuite integrate) de tip non-volatil ca și un HDD, dar care nu presupune componente mecanice cum ar fi platane rotative sau un braț motorizat.

SSD-urile folosesc un tip de memorie flash (ca și un Stick USB) numit NAND flash. Acesta este un medium electronic non-volatil de stocare a datelor care, electronic, poate fi șters și reprogramat.

Puțină istorie: a fost introdus de către Toshiba în anii ’80 și a fost dezvoltat din EEPROM, un alt tip de memorie electronică programabilă. Nu am să intru în detalii, dar dacă sunteți curioși, puteți citi despre porti logice NAND si NOR. De reținut este că, pentru a putea fi scris ceva pe memoriile EEPROM, acestea trebuiau șterse complet, lucru care nu este valabil în cazul memoriilor NAND – ele pot fi scrise și citite pe blocuri.

HSS vs SSD

Dat fiind că un HDD folosește componente mecanice pentru accesarea datelor, vă puteți imagina că, indiferent cât de repede s-ar mișca platanele sau cât de repede se mișcă brațul motorizat al capului magnetic, nu se poate compara cu viteza unui medium complet electronic. Este cu ordine de magnitudine mai încet. Asta se aplică și pentru HDD-urile ‘rapide’, de 10 sau chiar 15000 rpm (rotații pe minut) din serverele generațiilor trecute (am menționat generațiile trecute pentru că recent s-a făcut deja pasul către Solid State Drives).

//Intro

Am început să mă uit la Solid State Drives pe vremea când experimentam cu “idTech4”, codul sursă al motorului grafic creat de cei de la id Software*, care „împinge” jocuri precum Quake 4, Prey și, bineînțeles, Doom 3.

*id Software – oamenii care ne-au adus jocurile Wolfenstein, Doom si Quake și au revoluționat grafica 3D.

Încercam să compilez codul sursă și am observat că îmi lua destul de mult timp, circa 5 minute. Totodată, la fiecare modificare făcută, trebuia să aștept înca o dată același timp. Pe atunci aveam doar HDD-uri și mă foloseam de memoria RAM a calculatorului pentru a crea o partiție în care să compilez codul sursă (RAMDisk). Sigur, memoria RAM este foarte rapidă, însă este de tip volatil**.

** Dacă vă mai aduceți aminte din descrierea HDD și SSD, există două tipuri de memorii (din punctul acesta de vedere), și anume: volatil, care pierde datele în momentul în care rămane fără alimentare, și non-volatil, care nu pierde datele.

Memoria RAM este de tip volatil și, în ciuda faptului că timpul de compilare era drastic scăzut, îmi lua mai mult timp într-un final deoarece trebuia să copiez codul sursă pe HDD după fiecare compilare, fapt care, pentru ~3GB de date însemna destul de mult timp pierdut, (intenția mea era să păstrez modificările). Ce am făcut? Am luat un SSD.

//Prima impresie? Wow!

Performanțele sunt fenomenale. Dacă ești programator, designer, lucrezi cu blocuri mari de date sau job-ul tău implică folosirea unui calculator pentru orice fel de activitate și nu folosești un SSD, pierzi foarte mult timp. Trecerea de la HDD la SSD a fost pentru mine cel mai mare spor de performanță pe care l-am întâmpinat vreodată.

    1. Sistemul de operare pornește foarte rapid.
    2. Programe care în mod normal îți permit să mergi după o cafea până pornesc, cu un SSD sunt aproape instante.
    3. Până și suita mamut de la Adobe, Photoshop, pornește într-o secundă.

Să compilez Doom 3, care înainte îmi lua mai bine de 5 minute, acum durează mai puțin de jumătate.

Bineînțeles, nu toate lucrurile sunt grozave:

  1. Un SSD este în continuare mai scump decât un HDD: prețul unui SSD de 128GB vă permite să cumpărați un HDD la 1TB.
  2. Durata de viață a unui SSD a fost până acum câțiva ani mult mai scurtă decât media de viață a unui HDD – acest lucru începe să se întoarcă în favoarea SSD-urilor dat fiind că se fac revizii în mod constant, iar timpul de viață crește.
  3. Circula un mit cum că un SSD are un număr limitat de scrieri și că apoi moare. Corect, însă numărul de scrieri a fost făcut să pară mult mai scurt (câteva luni) decât este de fapt (câțiva ani).

 
 
Sigur, nu vă recomand să vă păstrați cele mai importante date pe un SSD și să vă gândiți că totul este bine. Recomandarea mea este să țineți un SSD pentru sistemul de operare și un HDD pentru stocarea de date.

by -
0 2134

În articolele trecute am vorbit despre diferențele dintre Linux, Unix si GNU și de ce ar vrea cineva să încerce un sistem de operare Unix/Linux. Acum voi sări în a explica cum se instalează o distribuție.

Primul pas pe care trebuie să-l faceți este să mergeți pe pagina aferentă fiecărei distribuții și să descărcați o imagine iso, fie 32bits, fie 64. Voi intra în mai multe amanunte legat de arhitecturile pe 32/64 biti și alocarea memoriei de către sistemul de operare, momentan însă, singurul lucru pe care trebuie să-l știți este dacă sistemul vostru are mai mult de 4Gb memorie RAM. Dacă da, atunci mergeți pe 64bits, iar daca are mai puțin, puteți alege o variantă pe 32 bits.

mint_desktop

În acest caz am ales Linux Mint. În secțiunea Download alegeți Cinnamon sau Mate (diferă doar Desktop-ul între cele două; alegeți în funcție de ce aspect vă surâde mai mult) și luați-vă o copie a distribuției ținând cont de ce am scris mai sus legat de 32bits vs 64bits (ultima versiune în momentul scrierii acestui articol este 17.1).

Presupunând că sistemul de operare curent este Windows și că nu aveți o partiție deja pregatită, va trebui să mergeti în Start->Run (mai rapid ar fi Windows Key+R) și să tastați diskmgmt.msc, urmat de Enter.

Vă va apărea fereastra utilității cu care administrați partițiile.

Disk-Management

Aici trebuie să alegeți partiția pe care vreți să o redimensionați (Click dreapta) și Shrink Volume; micșorați partiția cu 40Gb. Acum aveți de făcut o alegere: fie creați un disc bootabil cu imgburn, fie creați un stick cu Linux Live.

Aceste aplicații nu necesită instrucțiuni suplimentare, ele fiind ușor de folosit. Următorul pas este să mergeți în Bios; restartați PC-ul, iar la primul prompt apăsați tasta aferenta care de obicei este standard, F2 sau Del, la sistemele desktop. În cazul laptopurilor s-ar putea să difere (de exemplu, Esc, F10, vedeți manualul de utilizare al sistemului).

bios

Odată ajunși în Bios mergeți în secția Boot (sau Advanced BIOS Features, dacă aveți o platformă mai veche) și alegeți ca prim Boot Device unitatea optică sau Flash Drive-ul (Stick/Card de memorie).

Un Save & Exit vă va restarta PC-ul.

bios_boot

Asigurați-vă că ați inserat discul de instalare sau stick-ul USB. Sistemul va porni (în desktop-ul Linux) instant de pe mediumul ales fără a mai fi nevoie de input de la utilizator.

Pentru a instala Linux Mint veți avea nevoie de o partiție de cel puțin 10Gb, însa eu vă sugerez să alocați măcar 40Gb.

mint64_bootDesktop

După ce executați scurtătura Install Linux Mint de pe Desktop, vă va apărea fereastra de instalare unde va trebui să vă alegeți limba preferată, alături de alte detalii precum locația pentru fusul orar, layout-ul tastaturii etc.

mint64_somethingelse

Fiți foarte atenți la tipul instalării. Aici va trebui să selectați “Something else” (dacă vreți să folosiți întregul HDD, puteți folosi “Erase disk and install Linux Mint”; această operație va șterge întregul conținut al hard disc-ului și din cauza asta folosim prima variantă menționată).

mint64_partition

Aici găsiți toate partițiile de pe HDD. Veți avea nevoie de o singură partiție, și anume: una de boot cu următoarele specificații: mountpoint “/”(mai numit și root, este rădăcina sistemului de operare) și tipul partiției ca Ext4 (un tip de file system, diferit de NTFS sau respectiv FAT32 din Windows; nu este important să știți momentan ce este Ext4, NTFS sau FAT32. Voi explica într-un viitor articol ce este un file system și care este diferența dintre diferitele tipuri de partiții).

mint64_partitioning

Aceasta va fi partiția sistemului de operare (gânditi-vă la C:\ în Windows). Alături de aceasta, puteți crea și o partiție Swap de 2Gb (aceasta ajută sistemul de operare, oferind cei 2Gb ca și un surplus memoriei RAM în cazul în care aceasta este folosită în întregime). Nu este obligatorie, dar ajută în situații precare de uz intens.

La fel puteți să aveți și directorul /home (un fel de My Documents) separat de sistemul de operare sau să aveți o partiție în plus pentru stocare. Recomandarea mea ar fi ca toate partițiile pe care le creati pentru Linux să fie Ext4.

Sistemul de operare poate citi și monta partițiile aparținand Windows-ului, așa că aveți acces la datele de pe acele partiții.

mint64_partitioning

Promptul care va cere numele de utilizator și parola este ultimul până la instalarea sistemului de operare.

mint64_whoareyou

Partea frumoasă este faptul că puteți folosi sistemul de operare în timp ce acesta se instalează, fie căutând diverse aplicații ale acestuia, fie citind un articol în browserul Firefox care vine preinstalat. Iată cum arată VânturăLume în Firefox, în timp ce Mint se instalează.

mint64_vanturalume

Dacă ați ajuns până aici, înseamnă că Linux Mint s-a instalat cu succes. Felicitări!

by -
0 1627

unix_gnu_linux

În articolul trecut am amintit de diferența dintre Linux, Unix și GNU. În continuare, ca și completare, am să explic care este diferența dintre cele trei anterior menționate și la ce anume trebuie să vă uitați când alegeți o distribuție.

În primul rând, să clarificăm problema cu Linux, Unix și GNU. Linux este doar un kernel, Unix, pe de altă parte, este o familie de sisteme de operare, iar GNU la rândul lui este un sistem de operare.

Ce este un kernel? Simplu pus, este un program care procesează cererile Input/Output de la diverse aplicații, le traduce în instrucțiuni pentru CPU (procesorul calculatorului, mai numit si unitatea centrală de procesare) și alte componente ale calculatorului.

Exemplul uman cel mai apropiat de ce anume face un kernel ar fi un dirijor care trimite instrucțiuni orchestrei. De precizat ar fi că acesta își face foarte bine treaba, gândiți-vă la Mariss Jansons cu a lui orchestră regală Concertgebouw. Important este să nu confundați kernel-ul cu o simplă interfață: el lucrează în spate, iar utilizatorul nu are de-a face cu acesta, cel puțin nu în mod direct.

Ce sunt Unix și GNU? Cum am spus mai devreme, Unix este o familie de sisteme de operare, iar GNU
este un singur sistem de operare.

Diferența dintre cele două constă în faptul că Unix, creat de Ken Thompson și David Ritchie (Bell Labs), este un sistem de operare proprietar, deci cu cost.

GNU (GNU is Not Unix), pe de altă parte, a fost creat de Richard Stallman (MIT) și este o alternativă gratuită pentru Unix, însă acestuia i-au fost scrise doar tool-urile pentru că Linux (kernel-ul) fusese creat deja de Linus Torvalds.

Pentru a afla mai multe despre Unix vedeți wiki.

*******************

Mică recapitulare: Unix este un sistem de operare proprietar, iar GNU (toate aplicațiile folosite de utilizator) alături de Linux (kernel-ul care leagă totul într-un mod armonios) formează alt sistem de operare.

*******************

Acest articol presupune că știți deja cel putin terminologia generală și ce este un desktop environment. Un mod ușor de a învăța aceste lucruri ar fi cursul “Introduction to Linux” al edX.

Ce anume definește o distribuție Linux?

  • Package managers

Package managers reprezintă una din principalele lucruri care diferențiază diversele distribuții una de cealaltă. Acestea sunt multe și diferite: Ubuntu cu al lui APT (“apt-get” în terminal) sau Synaptic ca și interfață grafică peste APT, Yum de pe Fedora sau pacman de pe Arch Linux.

Principalul lucru de reținut în cazul acestora, pe lângă ease-of-use, ar fi popularitatea
distribuției. Șansa de a găsi o aplicație deja existentă via package manager/repository este
direct proporțională cu popularitatea distribuției. Asta nu înseamnă că dacă o distribuție
nu este populara nu veți putea folosi anumite aplicații, doar că cel mai probabil va trebui să
luați codul sursă și să-l compilați.

  • Desktop environments/Interfața grafică a sistemului de operare

Puteți opta pentru orice interfață vreți, chiar dacă distribuția voastră a venit deja cu una instalată. Lucrurile de luat în considerare ar fi aspectul și cât de customizabil este, cât de multe resurse folosește și cât de bine se integrează diferite aplicații.

  • Problema stabilității/Cutting edge

Aici singurul lucru de văzut ar fi cât de des au loc actualizările. Unele distribuții precum Arch
Linux și Fedora preferă să folosească cele mai actuale versiuni ale tuturor aplicațiilor, dar aici intervine și problema stabilității. Ultima versiune nu înseamnă că este și cea mai stabilă. În caz contrar, distribuții precum Ubuntu și Debian primesc actualizări la intervale mai mari de timp.

  • Compatibilitatea hardware

Compatibilitatea nu mai este o problemă reală în prezent pentru că există drivere pentru toate componentele hardware, iar acestea sunt instalate odată cu sistemul de operare.
Doar folosirea unor componente mai obscure prezintă o problemă, însă soluția este, literalmente, la câteva comenzi depărtare.

  • Suportul comunității

Dacă întâmpinați vreo problemă, atenția voastră trebuie să se îndrepte înspre comunitate. Cu cât este mai mare comunitatea, cu atât primiți mai mult ajutor. Tot aici ar fi de menționat faptul că sunt multe wiki-uri utile, de la simpla instalare a unei distribuții (vedeți Arch wiki), la configurarea anumitor tehnologii, toate scrise de comunitate.

Cunoscând în ce fel se deosebesc distribuțiile, ajută enorm la alegerea celei mai potrivite. Este important să alegeți una care este cel mai pe placul vostru, iar un mod eficient prin care le puteți verifica pe toate este de a le instala într-o mașină virtuală folosind VMware sau VirtualBox.

Într-un viitor articol am să fac o comparație între cele mai populare distribuții.

by -
0 1997

linux vs windows

Orice tehnologie suficient de avansată nu poate fi deosebită de magie.
Arthur C. Clarke

V-ați întrebat vreodată de ce unii oameni preferă să folosească Windows pe când alții aleg calea aparent mai anevoioasă cu misteriosul Linux? Răspunsul la această întrebare este un proces complex, care aduce cu sine mereu alte întrebări.

Înainte de toate, haideți să povestim puțin despre alte două sisteme de operare, MacOS și Windows, care sunt construite în așa fel încât toate lucrurile care se întâmplă în spatele desktop-ului arată de parcă au fost împroșcate cu magie neagră. Pe înțelesul tuturor, dacă se întâmplă ceva ciudat cu sistemul și nu mai funcționează, neinițiații, adică majoritatea oamenilor, nu cunosc motivul. „Ce are? Ce trebuie să-i fac?”.

Ei bine, Linux vă permite să vedeți magia din spatele perdelei și vă arată cum funcționează lucrurile de fapt.

Pe vremea când am început să folosesc Linux, nu prea era ‘pentru’ sisteme desktop. De fapt, nici acum nu sunt sigur dacă Linux este construit pentru platforma desktop, cel puțin nu în totalitate.

Prima dată când am încercat Linux a fost prin intermediul unei distribuții foarte vechi, bazate pe Debian, numită Knoppix, care a fost gândită să ruleze direct de pe un disc optic. Era totuși anul 2000. Dar asta este o poveste pentru altă dată. Ce avea Linux de oferit? Păi era foarte puternic cu privire la rețelistică (tot ce ține de legarea a două sau mai multe pc-uri într-o rețea și echipamentele aferente) și serviciile pe care le avea de oferit din aceeași perspectivă.

Și de atunci, în principiu, a pus stăpânire pe Univers!! Găsiți Linux peste tot, pe telefoane, tablete (da, Android este Linux), routere și alte echipamente de rețelistică, până și electrocasnicele funcționează pe același principiu (vedeți frigiderele Samsung). Long story short, există dispozitive în apartamentele voastre care funcționează cu Linux despre care nici nu realizați. Într-un articol viitor am să povestesc despre cum Linux a influențat economia globală.

Singura platformă pe care nu a pus stăpânire este cea desktop, computerul personal. Momentan. Și sunt multe motive pentru asta, însă nu am să sar în speculații. Partea bună este faptul că funcționează pe aproape orice configurație, astfel permițând utilizatorului să facă orice pe un sistem de 5 ani sau mai nou.

Orice în afară de jocuri, dar asta doar din cauza developerilor care nu lansează versiuni native Linux ale jocurilor lor. De ce anume fac asta? Mulți dintre ei consideră că nu sunt suficienți utilizatori ai platformei, iar unii precum Valve (Half-Life) au făcut pasul către Linux și intenționează să o transforme în platforma lor principală.

Dacă luăm ca exemplu tabletele, încă de la apariția lor, vânzările de sisteme desktop au fost nesemnificative în comparație. Oamenii au început să facă mult mai multe lucruri pe telefoane respectiv tablete decât pe computerele de acasă sau laptopuri.

Singurul lucru care împiedică Linux să pună stăpânire și pe platforma desktop este faptul că nu poate rula aplicațiile comune pe care multă lume le folosește pe desktop, dar la un nivel redus în ultima vreme. Există însă oameni care fac eforturi în a emula aplicații MacOS și Windows pe Linux.
Asta se aplică în cazul jocurilor care functionează mai bine pe Linux, emulate bineînteles, decât în cazul aplicatiilor business care folosesc proiecte gen Wine.

Până și această problemă este evitabilă dat fiind că Linux poate executa mașini virtuale. Mașinile virtuale sunt soluția software la emularea unui computer folosind resursele sistemului pe care rulează (exemple ar fi VirtualBox sau pachetele VMWare).

Singurul caz în care nu ar funcționa prea bine această variantă ar fi în cazul suitelor Adobe (Photoshop) sau Autodesk (AutoCAD) care necesită accelerație hardware.

Amuzant este faptul că Hollywood folosește de mulți ani Linux pentru tot ce ține de producția cinematografică. Toată randarea și tot ce ține de efectele speciale este făcut cu Linux (vedeți ferme de calcul).

În ciuda faptului că Linux nu poate să ruleze în mod nativ aplicațiile mai sus menționate, sunt aplicatii scrise pentru el care sunt cel putin la fel de bune ca și cele de pe sistemele de operare oferite de competiție.

Un dezavantaj pentru cineva care urmărește să obțină o certificare Microsoft, fie Active Directory (serviciu dezvoltat de Microsoft pentru domeniile lor), DNS (sistem distributiv de numire a computerelor, serviciilor sau a oricărei resurse conectate la internet) și rețelistică în general este efectul beer-goggles.

Să nu se creadă că am spus că Microsoft minte când descriu DNS sau ce este LDAP (protocol folosit de clienții de email sau alte aplicații) cu privire la Active Directory, dar tind să nu menționeze destul de multe lucruri.

Deci, dacă ați face pasul către un business bazat pe Unix/Linux (aș sugera o rapidă căutare via motorul de căutare Google a diferenței dintre Unix, Linux si GNU), ați avea destule întrebări legat de cum anume funcționează lucrurile. Acest lucru se întâmplă din cauza filosofiei Microsoft din vremurile trecute, care a făcut lucrurile proprietare în încercarea de a stinge orice competiție.

Un exemplu bun ar fi „minunatul” Internet Explorer care a fost atât de „proprietar” încât multe corporații-client au scris aplicații pentru el și restul lumii a făcut pasul către Netscape (actualul Firefox) și mai târziu Chrome.

Încă mă amuz când văd un desktop dintr-o corporație care merge cu Internet Explorer 6 în 2015, versiune lansată în urmă cu 14 ani. Asta, în opinia mea, este deplorabil, alături de alte alegeri mirobolante, cum ar fi diverse dubioase formate de fișiere, țin oamenii departe de Linux.

Așadar, de ce Linux și nu Windows sau MacOS?

  1. Linux este un sistem de operare gratuit. În ciuda faptului că Microsoft a tot scăzut prețul cerut pentru o licență de Windows, Linux a fost dintotdeauna gratuit. Gratuitatea acestuia este valabilă pentru orice distribuție, iar singurul lucru pe care l-ați avea de plătit ar fi suportul tehnic, dar doar pentru distribuțiile din sectorul business (vedeți RHEL).
  2. Ați fost impresionat de AppStore-ul celor de la Apple? Ei bine, repository-ul din Linux îl precede. Ce este un repository? Este un hub central care conține fiecare aplicație scrisă pentru platforma respectivă. Adică un fel de AppStore pentru Linux.

    Este irelevant dacă vreți să instalați aplicații din linia de comandă (din Terminal) sau folosind interfața grafică peste linia de comandă. O puteți face oricum. Sigur, poate aveți de instalat o librărie în plus, care îi este necesară unei aplicații, dar până și asta durează câteva secunde. Ah, da, și toate aplicațiile sunt gratuite.

  3. Linux nu este flămând după resurse. Sigur, distribuțiile care folosesc Unity (a nu fi confundat cu motorul grafic Unity), cum ar fi Ubuntu sunt puțin mai greoaie când vine vorba de consumul de memorie RAM, dar este nesemnificativ în comparație cu Windows, dat fiind că cel din urmă menționat necesită cel puțin o partiție de 40Gb, 2Gb de memorie RAM și un procesor potent, Linux în schimb poate fi folosit până și pe un sistem cu 128Mb RAM și 100Mb ca spațiu de stocare (vedeți PuppyLinux).
  4. Securitate. Îmi amintesc că cineva a reușit să treacă de loginscreen-ul din Windows XP pornind sistemul de operare în safe-mode cu networking și după câteva comenzi în command prompt a avut acces fără nicio problemă. Evident, aceasta a fost o scăpare din partea celor care s-au ocupat de securitatea sistemului de operare.

    Asta nu este o problemă în Linux și chiar dacă vreo scăpare ar avea loc, în cazul Linux nu trebuie să se aștepte până la următoarea lansare sau ca vreun patch major să se rezolve.Ar mai fi de menționat faptul că, la cum funcționează instalarea programelor pe Windows sau pe MacOS (căutați programul, sperați că locul de unde-l descărcați este o sursă sigură, ca să nu vă treziți cu un virus/keylogger numit Microsoft_Office_Suite_x86.exe), în Linux nu stă așa treaba. În Linux știți sigur că aplicația provine dintr-o sursă sigură pentru că repository-urile (AppStore-urile pentru Linux) sunt verificate constant.

  5. Ultimul, dar nu și cel din urmă motiv pentru a alege Linux este stabilitatea și soliditatea acestuia. Dacă v-ați săturat de colapsul diverselor aplicații ori de des întâlnitul BSOD (terifiantul ecranul albastru), alegeți una din multitudinea de distribuții prietenoase, scrieți un disc cu aceasta sau creați un stick usb bootabil și îmbarcați-vă într-o călătorie plăcută.

 
Linux este o oportunitate foarte bună de a învăța, sărind în Unix, TCP/IP și alte protocoale care țin de rețelistică. Dacă asta căutați sau pur și simplu vreți un sistem de operare gratuit, performant și sigur, Linux este alegerea bună.
 
 
imagine via