RicH and FamouS

       Home         Glosar IT                                                                                                                                                                                                              SUBSCRIBE NOW!
        

03.04.2009

Optimizarea - aliat sau dusman?

Când este necesară optimizarea
Un programator versat nu va scrie niciodată cod inefficient. Cel puţin nu în mod intenţionat. Optimizarea îşi are rostul când performanţa trebuie să fie maximă. În momentul în care se doreşte o optimizare a codului, trebuie studiat foarte atent locul în care are loc gâtuirea. Optimizarea se poate face în mai multe locuri – la prelucrarea imaginilor (acestea se încarcă prea încet şi/sau consumă excesiv de multă memorie), la accesul la date (viteza de accesare şi prelucrare a datelor este prea mică), asupra unor algoritmi (implementaţi necorespunzător), etc.

La capitolul optimizarea algoritmilor proprii implementaţi, se întâlnesc de obicei 3 mari cazuri:
- Se ignoră în prima fază că tocmai propriul algoritm este cel care cauzează gâtuirea, acest lucru devenind periculos deoarece se evită studirea problemei tocmai în locul în care aceasta există.
- Se determină algoritmul care cauzează gâtuirea şi se rescrie complet acest algoritm.
- Se determină algoritmul care cauzează gâtuirea dar mai întâi se testează impactul global pe care această gâtuirea o are asupra întregii aplicaţii, înainte de modificarea sau rescrierea lui.

Această ultimă abordare este cea mai indicată, deoarece uneori gâtuirea generată de un algoritm poate să aibă impact nememnificativ asupra sistemului în raport cu efortul de rescriere a întregului algoritm. Uneori, rescrierea întregului algoritm, mai ales în cazul algoritmilor complexi poate fi destul de dificilă, cauzând întârzieri pentru întregul proiect şi costuri suplimentare pentru firmă.

În momentul în care se testează o aplicaţie, în vederea determinării gâtuirilor, se folosesc o serie de utilitare care măsoare timpul în care aplicaţia execută o anume funcţie. Aceste unelte sunt însă cu două tăişuri.
Unele din ele par să nu ţină cont că, în special sub sistemele Windows, în timpul în care se execută o anume funcţie a programului testat rulează şi thread-uri ale altor programe de sistem. De exemplu, aplicaţia noastră rulează în spaţiul utilizator. Dar tot în acest timp, în paralel lucrează şi kernelul sistemului de operare.
Alte unelte mai performante, ţin cont de toate acestea şi tratează ca atare timpul consumat de kernel, oferind o imagine cât de cât reală a timpului în care se execută efectiv aplicaţia.

În unele cazuri, din aplicaţia noastră este apelat kernelul pentru a executa anumite operaţii, deci timpul în care rulează acest kernel este foarte important şi nu trebuie ignorat. De la versiunea 4.0 a Windows NT, GDI-ul nu mai este un proces care rulează pe nivelul utilizator, ci este integrat în kernel.
În concluzie, la întrebare Ce să optimizăm?, se poate răspunde uşor: acele părţi ale programului care consumă timp excesiv. Dar şi aici apare o problemă. O optimizare locală, unde se ignoră performanţele globale ale aplicaţiei este inutilă.

Aici pot să dau un exemplu foarte realist. Să luăm de exemplu Visual Basic 5.0. Acesta venea în plus cu un compilator nativ, pe lângă interpretor. Problema a fost că de un plus de viteză au beneficiat numai aplicaţiile care foloseau calcule matematice intensiv. În cazul unei aplicaţii de baze de date, unde se foloseau mult tehnologii externe – MDAC, componente ActiveX, apeluri de funcţii API, nu se prea sesiza vreo diferenţă.
De ce? Pentru că, codul compilat al programului conţinea în mare parte apeluri de funcţii API, apeluri de metode şi proprietăţi ale obiectelor COM/DCOM/ActiveX, iar timpul consumat pentru aceste apeluri era infim faţă de timpul în care acest funcţii API, metode şi proprietăţi ale obiectelor COM/DCOM rulau efectiv.
Sfaturi privind optimizarea

Chiar dacă compilatoarele moderne de C++ sunt foarte capabile şi permit optimizarea aplicaţiilor d-voastră, unele intervenţii în cod sunt încă necesare. Astfe, voi discuta mai departe aspecte generale ale optimizării programelor scrise în acest limbaj de programare.
O tehnică pe care trebuie să o aveţi în vedere este delegarea către sistemul de operare. Delegarea permite folosirea codului deja existent, care a fost testat şi optimizat pentru obţinerea unei performanţe cât mai mari.

Sistemul de operare de multe ori oferă aşa numitele hook-uri (cârlige) la hardware. Este cazul acceleratoarelor 3D şi a plăcilor de reţea cu checksum hardware. Aproape întotdeauna, folosirea funcţiilor API implementate în hardware poate duce la performanţe mult mai bune decât dacă aţi scrie d-voastră cod pentru implementarea acestor funcţii.
În cazul plăcilor grafice, cu accelerare 3D, emularea software produce rezultate sensibil mai slabe decât folosirea funcţiilor API dedicate implementate hardware în acceleratorul 3D.

Alt exemplu este tehnologia OLE DB pentru accesul la bazele de date. Această tehnologie este matură, testată şi optimizată şi este de preferat să o folosiţi în loc să vă definiţi propriul motor de acces la bazele de date.
De exemplu SQL Server este dedicat pentru execuţia de instrucţiuni SQL, şi va face această treabă mult mai repede decât aţi face-o d-voastră prin propriile rutine, indiferent de limbajul de programare folosit. O altă prolemă importantă pe care trebuie să o luaţi în considerare este sistemul de operare folosit. Windows NT şi succesorii lui merg mai rapid şi mai stabil decât sistemele de operare Windows pe tehnologie 9x. Deci, dacă se poate, ţintiţi sisteme de operare pe tehnologie NT, mai ales pentru serverele de aplicaţii şi pentru sistemele de acces la bazele de date.

Algoritmii pe care îi folosiţi în aplicaţia d-voastră pot să influenţeze foarte mult performanţa de ansamblu a aplicaţiei. Folosiţi cel mai bun algoritm care vă poate rezlva o anumită problemă. Implementaţi algoritmii şi în funcţie de cantitatea de date pe care respectivul algoritm o procesează.
Alegeţi cel mai bun raport între uşurinţa de implementare a algoritmului şi performanţele acestuia.

Pentru un set mic de date, a implementa un algoritm complex poate fi pierdere de timp. Luaţi în considerare tot timpul factorul timp şi costurile pe care implementarea unui anumit algoritm le implică. Nu veţi justifica costurile suplimentare sau întârzierea lansării aplicaţiei pentru un algoritm foarte complex, aplicat unui set mic de date, care nu produce performanţe vizibile mai mari decât un alt algoritm nu atât de complicat, dar mai rapid de implementat.

Biblioteca STL de obicei este însoţită de implementarea algoritmilor standard, deci puteţi folosi această bibliotecă pentru anumite scopuri. În acest fel aveţi la îndemână algoritmi de calitate deja implementaţi. Aici trebuie să aveţi grijă, pentru că unele implementări sunt foarte generice.
De obicei compilatorul de Visual C++ este capabil să recunoască de exemplu constantele dintr-o buclă şi să le scoată în afară, dar nu îi este clar care apeluri de funcţii sau metode sunt constante. Ori de câte ori aveţi ocazia, folosiţi bucle în care contorul descreşte, deoarece se simplifică în acest fel generarea codului pe măsură ce contorul scade, urmat de un salt dacă nu este zero. (în ASM, pentru acest salt se foloseşte instrucţiunea jnz)

Altă tehnică este folosirea operatorului ++ sau - -, de incrementare, respectiv decrementare, înaintea variabilei.
Ex, este mai bine să scrieţi:
Cod:
++ nVariabila,

sau
Cod:
-- nVariabila


decât:
Cod:
nVariabila ++,

sau
Cod:
nVariabila --


Această tehnică este utilă mai ales în cazul procesoarelor Pentium, unde incrementarea nu se poate face până când comparaţia nu este completă. Nucleul procesoarelor Pentium pot folosi register antialiasing pentru a începe incrementarea, folosind „load effective address”, pentru a nu ruina testul de comparaţie.

Exemple:

Pentru linia:
Cod:
for(i=0;i

Procesorul execută:
Cod:
inc ecx
cmp ecx, limit
jl loop_start


Pentru linia:
Cod:
for(i=limit+1;i>0;--i)

Procesorul execută:
Cod:
dec ecx
jgt loop_start


Pentru linia:
Cod:
for(i=0;i

Procesorul execută:
Cod:
cmp ecx,limit
lea ecx, [ecx+1] ; fără influenţă asupra regiştrilor
jl loop_start


Pentru linia:
Cod:
for(i=limit+1;i>0;i--)

Procesorul execută:
Cod:
test ecx
lea ecx, [ecx-1]
jl loop_start


Apelurile de funcţii în C/C++ - cum afectează acestea performanţa globală a aplicaţiei.

1. Funcţiile C
Apelul este simplu: pune argumentul pe stack, excută o instrucţie CALL şi apoi RET la sfârşitul apelului, după care extrage argumentul.
Apelurile de funcţii __fastcall sunt mai rapide pentru unul sau două argumente, deoarece aceştia sunt pasaţi în regiştrii.
2. Funcţii C++ nonvirtuale
Nu sunt mai lente decât funcţiile C, dar toate funcţiile au pointerul this, aşa că exită întotdeauna un argument pe care să-l pună sau să-l extragă (push/pop).
3. Membrii virtuali ai funcţiilor C++
Acestia ar trebui evitaţi de tot, în cazul în care este posibil.
4. Apeluri de funcţii din obiecte COM In Process
Presupunând că interfaţa COM poate fi accesată direct din threadul care o apelează, apelurile de funcţii COM nu au impact mai mare decât apelurile de funcţii virtuale, ceea ce şi sunt de fapt. Un alt aspect este că marshalingul parametrilor poate fi mai mare consumator de timp decât pasarea pointerilor.
5. Apelurile de funcţii API
Orice apel care rulează pe ring 3 (modul utilizator ), are acelaşi impact ca şi oricare alt apel al unei funcţii dintr-un fişier .DLL. Problema stă altfel dacă apelul se face de pe ring 0 (modul kernel ), iar un apel care forţează o tranziţie de ring necesită minim 600 de cicluri de tact.
Aliniamentul elementelor în structuri de date
Într-o structură, încercaţi să aliniaţi toate elementele la 4 sau 8 bytes. Pentru Visual C++ 6.0, prestabilit este 8 bytes, însă 4 bytes sunt la fel de buni pentru valorile pe 32 de biţi.
Aliniamentul pe 8 bytes este indicat pentru structuri cum ar fi fişierele sau structurile de reţea, însă aceste înregistrări ar trebui să folosească întregi pe 64 de biţi. Pentru orice altceva, rămâneţi la aliniamentul pe 4 bytes.

Software Pipelining
Această tehnică pipeline a fost implementată în procesoarele Merced de la Intel, aşa că, pentru a beneficia de avantajele pe care le oferă, este nevoie de compilatoare care să ştie să o implementeze în software.
Software pipelining este un concept de construcţie a buclelor în care fiecare iteraţie lucrează la o parte diferită din task. De exemplu la procesarea pipeline a imaginilor, un pixel poate fi transformat în timp ce altul este scris pe disk.
Această tehnică este bine să o lăsaţi în grija compilatorului, cu excepţia cazului în care lucraţi direct cu instrucţiuni în limbaj de asamblare.

Când să nu optimizaţi
Nu încercaţi să faceţi optimizări care nu au sens. De exemplu, unii încearcă să optimizeze interfaţa grafică (GUI), algoritmii de baze de date, etc. Nu pierdeţi timpul să creaţi de exemplu propriul motor de acces la bazele de date, decât dacă aveţi un motiv foarte serios. Motoare ca JET, ADO, DAO sunt implementate, optimizate şi testate de echipe întregi de programatori profesionişti. Deci folosiţi cât mai mult ceea ce deja există şi merge bine.

De exemplu, de ce nu este eficient să optimizăm update-ul meniurilor sau controalelor dintr-o interfaţă grafică? Păi hai să luăm în considerare şi factorul uman. O relatare interesantă am găsit-o într-un articol pe internet:

Utilizatorul execută un click cu mouse-ul. Să spunem că mouse-ul se află la aproximativ un metru de ureche. Se ştie că sunetul se propagă cu o viteză de 380 m/sec.
Asta înseamnă că este nevoie de aproximativ 2 ms pentru ca sunetul click-ului de mouse sau apăsării de tastă să ajungă la urechea umană.
Calea neurală de la vârful degetului până la creier este de aproximativ 1 m. Propagarea impulsului nervos este de aproximativ 100 m/sec, asta însemnând că senzaţia executării unui click sau a unei apăsări de tastă are nevoie de 10 ms pentru a ajunge la creier. Durata de percepţie în creier variază între 50 şi 250 ms sau chiar mai mult.
Deci, câte instrucţiuni de procesor Pentium se execută în 2 ms? Dar în 10 ms? Dar în 250 ms? În 2 ms, într-un procesor Pentium !!!/500Mhz au loc aproximativ 1.000.000 cicluri de ceas, timp în care se execută o mulţime de instrucţiuni!

Foarte interesant acest mod de abordare a problemei, nu-i aşa?
Toate acestea nu au împiedicat corporaţia Microsoft pentru a viola modelul obiectual al C++ referitor la tratarea mesajelor.
La apelul CWnd::OnCeva(...), în loc de a se apela funcţia DefWindowProc cu parametrii care îi specificaţi d-voastră, se refoloseşte parametrul ultimului mesaj pentru a apela ::DefWindowProc.
Aceasta are ca scop final, după spusele lui Microsoft, de a reduce dimensiunea librăriei runtime MFC. Acest lucru este un exemplu de optimizare care nu-şi are rostul, pentru că într-un DLL imens, care conţine mii de instrucţiuni, cum este runtime-ul MFC, micşorarea bibliotecii prin această tehnică este atât insesizabilă cât şi fără impact real asupra vitezei de rulare.

Concluzie
Optimizarea contează numai atunci când este nevoie de ea. Când este nevoie de ea, contează foarte mult, dar când nu este necesară, nu pierdeţi timp şi efort pentru a o implementa. Chiar dacă aţi ajuns la concluzia că este necesară, trebuie să studiaţi atent în ce loc anume este necesară. Toate acestea se fac testând cu date concrete aplicaţia d-voastră, în diferite situaţii. Dacă nu aţi definit concret partea aplicaţiei care trebuie optimizată, s-ar putea să optimizaţi ceea ce nu trebuie. Rezultatul acestui lucru va fi un cod obscur, greu de întreţinut şi depanat şi nu vă va rezolva adevărata problemă. Asta să nu mai vorbim de timpul şi de costurile suplimentare pe care toate acestea le implică.

Deci, atenţie ce optimizaţi şi mai ales când optimizaţi. În funcţie de capacitatea d-voastră de a identifica realele gâtuiri, optimizarea vă poate fi duşman sau aliat. Mult succes!

Exceptii C++

Un lucru foarte util la programarea C++ sint exceptiile. Acestea sint erori produse la executia programului cind controlul este preluat de codul de tratarea acestor exceptii, daca exista. In acest fel se poate preveni opriri bruste ale programelor la aparitia acestor erori, putindu-se lua masuri de genul eliberat resursele afisate, atentionat utilizatorul, scris detalii despre eroare in fisiere de log, etc.

Pentru a trata erorile se folosesc blocurile try .. catch, ca in exemplul de mai jos:

Cod:
#include
using namespace std;

int main () {
try
{
throw 20;
}
catch (int e)
{
cout << "Exceptie aparuta cu nr. " <<>

Sa luam pas cu pas exemplul. Tot codul de executat in care este posibil sa apara exceptiile e inclus in try {}. In acest exemplu este generata o exceptie cu numarul 20, care va fi tratata mai jos. Dupa codul din try{} urmeaza una sau mai multe instructiuni catch() pentru diverse tipuri de erori. In acest caz este prinsa doar eroarea de tip intreg.

De exemplu puteti avea asa:

Cod:
try {
// codul e aici
}
catch (int param) { cout << "Exceptie intreaga"; } catch (char param) { cout << "Exceptie de tip caracter"; } catch (...) { cout << "Orice alte exceptii"; }

Dupa cum se vede se poate specifica prin '...' orice tip de exceptii netratata anterior.
La aparitia unei erori sint analizate toate instructiunile catch() iar daca una se potriveste tipului de erorare este executata, dupa care programul continua cu instructiilile de dupa catch().

C++ Standard include o clasa pentru exceptii care poate fi folosita sau extinsa dupa necesitati. De exemplu:

Cod:
#include
#include
using namespace std;

class myexception: public exception
{
virtual const char* what() const
{
return "A aparut exceptia";
}
} myex;

int main () {
try
{
throw myex;
}
catch (exception& e)
{
cout <<>

Folosind 'exception& e' in catch() va prinde orice exceptie derivata din clasa exception, inclusiv cea definita de noi, 'myexception'.
Librariile C++ standard definesc citeva exceptii standard toate derivate din clasa 'exception' printre care bad_alloc, bad_cast, bad_exception, bad_typeid, etc.

Exista mult alte lucruri legate de exceptii, incepind cu exceptii standard ce le puteti trata pentru diverse situatii, pina la exceptii MFC (macrourile TRY .. CATCH) si multe altele.

Lucrul cu date in PHP

Lucrul cu tipul data in PHP nu este foarte complicat insa are citeva aspecte. Functiile referitoare la date sint: checkdate , date , getdate , gettimeofday , gmdate , gmmktime , gmstrftime , localtime , microtime , mktime , strftime , strtotime , time. Vedeti descrierea lor in manual cu paramaterii care ii au. Dupa cum vedeti nu sint foarte multe insa suficiente pentru majoritatea lucrurilor necesare.
Nu exista o functie la fel ca in VBScript DateAdd() care sa adauge sau sa scada o valoare dintr-o data existenta. Pentru asta vedeti functia de mai jos:

Cod:
function DateAdd($v,$d=null , $f="d/m/Y"){
$d=($d?$d:date("Y-m-d"));
return date($f,strtotime($v." days",strtotime($d)));
}

Aceasta este facuta sa functioneze pentru a aduna sau scadea zile, nu ore sau alte elemente ale datei. Se apeleaza simplu: echo DateAdd(2);

O sa afiseze data de peste 2 zile, in formatul zi/luna/an. Daca doriti sa afisati data incepind cu o alta referinta nu ziua curenta se folsoeste asa: echo DateAdd(-4,"05/05/2005");
O sa afiseze "01/05/2005", adica cu 4 zile in urma datei specificate.

Daca doriti sa schimbati formatul se poate face asa:
echo DateAdd(1,"05/05/2005","Y-m-d");

Sau pentru a folosi data curenta cu alt format se poate folosi:
echo DateAdd(1,0,"Y-m-d");

O alta functie utila prezenta in VBScript este DateDiff() care calculeaza diferenta intre 2 date in zile, ore, minute, etc. Dau mai jos o astfel de functie si pt. PHP:

Cod:
function DateDiff($d1,$d2,$f="d") {
switch($f) {
case "h":
return intval((strtotime($d1)-strtotime($d2))/3600);
break;
case "m":
return intval((strtotime($d1)-strtotime($d2))/60);
default:
return intval((strtotime($d1)-strtotime($d2))/86400);
break;
} }

Apoi se apeleaza simplu:
echo DateDiff("2005-05-05","2005-05-01"); // numar de zile: 4
echo DateDiff("2005-05-05 05:00","2005-05-01 06:00","h"); // numar de ore
echo DateDiff("2005-05-05 05:00","2005-05-01 06:00","m"); // numar de minute

Dupa cum vedeti e destul de simplu de manevrat informatiile de tip data si in PHP chiar daca uneori avem nevoie de functii construite de noi (sau altii :) ).

Struts2 - Redirecţionare externă

Pentru unul din ale mele S2 apps am avut nevoie pentru a redirecţiona către un site extern. Dacă cautati in Google cu privire la modul de a face acest lucru, veţi vedea multe exemple sub formă urmatoare:

<result name=”foo” type=”redirect”>${externalUrl}</result>

Care actualmente nu lucreaza, cel puţin nu în 2.0.11.2. În schimb,eu folosesc un tip httpheader rezultat pentru a face un redirect 301:

<result name=”foo” type=”httpheader”>
<param name=”status”>301</param>
<param name=”headers.Location”>${externalUrl}</param>
</result>


Noutăţi de la Windows 7 RC1

Primul şi probabil singurul Release Candidate de Windows 7 va fi lansat, din câte se pare, în luna aprilie. Spre deosebire de versiunea beta, pe care Microsoft a pus-o gratuit şi neîngrădit la dispoziţia utilizatorilor, RC1 nu va mai fi disponibilă pentru toată lumea, ci doar pentru testerii special aleşi de Microsoft. Între timp, până la inevitabila apariţie pe trackerele de BitTorrent, cei de la Microsoft au întocmit o mare listă cu funcţii noi sau modificări ce vor fi regăsite în Windows 7 RC1.

Din pagina kilometrică în care Microsoft enumeră şi explică noutăţile care se vor regăsi în Windows 7 RC1, am selectat ceea ce pare a fi mai interesant. Sunt foarte multe schimbări faţă de varianta Beta 1, însă majoritatea sunt fie amănunte grafice, fie facilităţi minore care nu au un impact important asupra utilizării sistemului de operare.

Desktop şi taskbar
  • Schimbarea ferestrelor cu ALT+TAB beneficiază acum de efectul Aero Peek (toate ferestrele devin transparente, cu excepţia celei selectate)
  • Ferestrele din taskbar care cer atenţia utilizatorului au acum efecte care le fac mai uşor de observat
  • Mai mult spaţiu pe taskbar - butoanele din taskbar au fost micşorate, pentru a încăpea mai multe (diferă în funcţie de dimensiunea selectată de utilizator: small icons, large icons)
  • Programele nou instalate sunt afişate, temporar, în partea de jos a listei
  • Pictogramele de pe desktop şi widget-urile sunt acum separate. Utilizatorul poate afişa pe desktop fie doar pictogramele, fi doar widget-urile
Multitouch
  • Efectul Aero Peek poate fi activat printr-un gest dedicat
  • A fost adăugată funcţia zoom în Windows Explorer
  • Un nou gest care corespunde click-ului dreapta de mouse
  • Simplificarea scroll-ului, selectării textului şi drag&drop-ul obiectelor
Configurare, setări
  • A fost simplificată selectarea profilurilor de Power pentru laptop-uri
  • Au fost adăugate mai multe drivere noi pentru plăcile audio
  • User Account Control se protejează acum singur - fiecare schimbare a nivelului UAC va necesita o confirmare suplimentară
Lista completă a modificărilor şi bug-urilor rezolvate în Windows 7 RC1 poate fi găsită aici. Această variantă va fi probabil şi ultima de test înaintea lansării versiunii finale. Acum rămâne doar de văzut dacă Microsoft se va grăbi şi va lansa Windows 7 în 2009 sau ne va lăsa să aşteptăm până la anul.

02.04.2009

Taskbar-ul in Windows 7

Cum puteti modifica felul in care arata Taskbar-ul in Windows 7 ? Articol pentru cei care nu au deslusit “dedesubturile” Windows 7. :)

Windows 7 vine la pachet cu un nr. relativ mare de modificari de design fata de sistemele de operare Windows care i-au precedat. Printre aceste modificari nu se poate sa nu fi remarcat taskbar-ul si caracterul sau “iconizat”. Desi pentru unii acest lucru este cat se poate de binevenit, sunt destui pe care aceasta caracteristica nu ii “coafeaza”, fie ca e vorba de obisnuinta sau de functionalitate (pe care fiecare o percepe in felul sau).
Deci, daca va numarati printre cei pe care taskbar-ul iconizat (sau patratos :P) ii pune in dificultate, si doriti sa “resuscitati” vechiul taskbar, puteti face acest lucru foarte simplu.

Dati click-dreapta pe Taskbar si selectati Properties din meniul afisat.

In fereastra afisata aveti mai multe optiuni, printre care si aceea de a customiza taskbar-ul. Mergeti la Taskbar buttons si selectati tipul de taskbar pe care il doriti:

  • Always combine, hide label (adica taskbar-ul standard pentru Windows 7, cel iconizat, care strange sub aceeasi iconita toate sesiunile unei aplicatii)
  • Combine when taskbar is full (sesiunile aceleiasi aplicatii sunt afisate distinct pe taskbar pana inmomentul in care taskbar-ul se aglomereaza; apoi se combina sub aceeasi iconita)
  • Never combine (taskbar-ul recapata obiceiul pe care il avea in Windows-urile anterioare, adica afiseaza sesiunile unei aplicatii distinct si nu le combina nici in cazul in care acesta se aglomereaza)
Apoi faceti click pe Apply si OK. Acum Taskbar-ul va arata asa cum doriti dvs.

Windows 7 - Dim the display

Windows 7 stie sa scada treptat nivelul luminozitatii ecranului. Exact ca un telefon. Dim the display este o optiune noua fata de Vista care apare in Windows 7 la Power Options. La fel ca si pentru celelalte doua optiuni (stingerea ecranului si intrarea in standby), se poate specifica un timp dupa care sa inceapa scaderea luminozitatii. Evidet, aceste optiuni sunt valabile doar pentru laptopuri si netbook-uri.

Pe cat bune sunt aceste functii noi pe care le descopar pe parcurs in Windows 7, pe atat de mult realizez ca ele ar fi trebuit sa faca parte din Window cu mult timp in urma. Ca si faptul ca in Windows 7 poti sa schimbi ordinea ferestrelor din taskbar cu un simplu drag&drop.

Javascript: Elementul Sinucidere

Un tip scurt de sinucidere in javascript. Sinucidere ? Ei bine ... adică are un element de elimina propiu. Am dat peste acest lucru ceva timp în urmă: un ‘read more’ link pe care ar trebui să se stabilească afişarea de proprietati a unui element de "block’" şi "remove itself" complet din DOM. Plain javascript, no frameworks. Iata la ce am ajuns:

this.parentNode.removeChild(this);

El nu are nevoie de o identitate, numele sau orice altceva. In plus, nu necesita chiar niki a sa-mamă de a o avea şi niki ID-ul! Acest lucru poate fi buimac, dar îmi place!

01.04.2009

Zece ponturi de securitate de la BitDefender

BitDdefender recomanda utilizatorilor zece ponturi pentru securitatea sistemelor IT, pornind de la un recent studiu* american care estimeaza pierderi de aproximativ 8.5 miliarde de dolari ale consumatorilor finali din SUA, cauzate de amenintarile informatice curente.
Desi, potrivit articolului mentionat, pierderile raportate sunt în scadere, specialistii BitDefender recomanda utilizatorilor finali o vigilenta constanta si o asigurare permanenta a protectiei prin folosirea celui mai bun produs de securitate împotriva amenintarilor zilnice.

BitDefender va recomanda:
1. Nu va bazati pe presupuneri. Gasiti putin timp pentru a va informa despre cum sa va protejati sistemul.
2. Cumparati si folositi un program antivirus fiabil. Alegeti un antivirus cu eficienta dovedita. Checkmark si AV-Test.org se numara printre cei mai respectati evaluatori independenti de software antivirus.
3. Folositi o solutie firewall de încredere. Din nou, mergeti pe mâna evaluatorilor independenti. Unele sisteme de operare sunt dotate cu un firewall care filtreaza traficul numai la intrare. Folositi un firewall care poate controla traficul Internet atât la intrare, cât si la iesire.
4. Nu deschideti e-mail-urile venite de la expeditori necunsocuti sau în care nu aveti încredere. Multi virusi se raspândesc prin mesajele e-mail, asa ca cereti o confirmare din partea expeditorului daca aveti îndoieli.
5. Nu deschideti fisierele atasate mesajelor care au un subiect suspect sau neasteptat. Daca doriti sa le deschideti, salvati-le mai întâi pe hard disc si scanati-le cu un program antivirus actualizat.
6. Stergeti orice e-mailuri în lant sau nedorite. Nu le trimiteti mai departe si nu raspundeti expeditorilor acestora. Acest tip de mesaje este considerat a fi spam, pentru ca nu este dorit si cerut si pentru ca duce la supraîncarcarea traficului de Internet.
7. Evitati instalarea serviciilor si a aplicatiilor care nu va sunt necesare pentru activitatile curente pe desktop role, cum ar fi: servere de transfer si partajare de fisiere, servere remote desktop (control la distanta) si altele asemenea. Aceste programe reprezinta pericole potentiale si nu ar trebui instalate decât daca sunt absolut necesare.
8. Actualizati-va sistemul si aplicatiile cât de des posibil. Unele siteme de operare si aplicatii pot fi setate sa se actualizeze automat. Folositi-va cu încredere de aceasta facilitate. În cazul în care nu instalati îndeajuns de des patch-uri pentru sistem, acesta poate deveni vulnerabil la pericole pentru care s-au gasit deja remedii.
9. Nu copiati nici un fisier daca nu-i cunoasteti sursa sau nu aveti încredere în aceasta. Verificati sursa (provenineta) fisierelor pe care le descarcati si asigurati-va ca programul antivirus a verificat deja fisierele.
10. Creati fisiere de rezerva ale documentelor personale importante (corespondenta, documente, imagini si altele asemenea) în mod regulat. Stocati aceste copii pe suporturi mobile, cum ar fi CD-uri sau DVD-uri.

Adio, My Computer!

Pictogramele My Computer si My Documents plasate pe desktop au fost unele dintre aspectele pe care le-am remarcat când am folosit Windows 95 pentru prima oara. Ambele au fost create cu scopul de a oferi accesul rapid la informatiile considerate cele mai importante pentru utilizator. Cu timpul, sistemele de operare Windows au suferit de o adevarata inflatie a directoarelor care incepeau cu "My". My Movies, My Pictures, My Webs sunt doar câteva dintre directoarele consacrate de Windows XP. In plus, mai multi producatori software si de jocuri au decis sa-si creeze propriile directoare de acest tip in My Documents, directoare care au rolul de a stoca fisierele create cu acele programe, respectiv salvarile jocurilor cu pricina. Personal nu am folosit decât intr-o mica masura aceste directoare, si anume in masura in care nu am avut de ales. Din aceasta cauza, am blamat intotdeauna incercarea Microsoft de a-mi limita optiunile si de a ma obliga sa folosesc anumite directoare. si sunt convins ca nu sunt singurul. In plus, My Documents nu poate fi sters sub nici o forma. In cel mai bun caz, continutul acestuia poate fi mutat eventual pe alta partitie. In aceste conditii, va exista intotdeauna pe partitia pe care a fost instalat sistemul de operare un director My Documents, fie el si gol.
Apreciate de unii, nefolosite de altii, directoarele cu pricina implinesc 10 ani in slujba sistemelor de operare care poarta semnatura Microsoft. si se pare ca gigantul din Redmond, cum este alintat ironic Microsoft, a decis ca directoarele respective sa ia o alta forma o data cu Longhorn. Microsoft a decis ca aceste directoare sa existe si in Longhorn, dar fara a mai fi precedate de "My". Astfel, My Computer va deveni Computer, My Documents - Documents si asa mai departe. Chiar daca anuntul facut de Microsoft pare ilar, acesta nu este nimic in comparatie cu justificarea deciziei. Ei bine, conform declaratiilor oficiale, pronumele posesiv "My" a avut rolul de a familiariza utilizatorii cu directoarele importante si cu tipurile de fisiere continute de acestea, iar acum, dupa 10 ani de folosire mai mult sau mai putin intensiva, utilizatorul este destul de matur pentru a-si gasi documentele, chiar daca directorul cu pricina se numeste doar Documents. Din aceasta justificare reiese ca Microsoft ia in calcul foarte multe aspecte inainte de a introduce sau a modifica anumite facilitati, cum ar fi profilul psihologic al utilizatorului de Windows. Dar oare aceasta justificare nu ascunde, de fapt, alte motive? Daca ar fi sa emitem supozitii, am putea gasi o legatura intre aceasta decizie si Recording Industry Association of America, care face eforturi mari pentru a impiedica schimbul de fisiere intre utilizatori. RIAA sustine ca, de fapt si de drept, continutul multimedia in format digital pe care l-am achizitionat nu este in totalitate al nostru si, prin urmare, nu putem efectua anumite operatiuni asupra acestuia. Iar un director ce poarta numele My Music ar justifica tocmai contrariul. De aceea, eliminarea pronumelor cu pricina din denumirea directoarelor in care sunt stocate fisierele multimedia ar putea fi vazuta si ca o incercare a celor de la Microsoft de a nu se amesteca in aceasta problema.
Indiferent daca este reala sau nu, justificarea oficiala a deciziei ar putea jigni multi utilizatori care nu au fost niciodata neajutorati fara aceste directoare. Personal, bucuros fiind ca m-am maturizat indeajuns ca utilizator de Windows si ca ma voi descurca si cu denumirea de Computer in loc de My Computer, astept cu nerabdare ca peste alti 10 ani sa fiu capabil sa deschid programele si in cazul in care va fi redenumit butonul Start.

Hack de 1 Aprilie

Salutare tuturor!
Azi e 1 Aprilie- "Ziua Umorului". Cu această ocazie am pregatit un mik truc. Va voi arata cum puteti edita orice pagina web. Pentru aceasta veti avea nevoi de un javascript. Acest script este usor de ţinut minte şi merge pentru orice pagina web. Iata codul de care aveti nevoie: javascript:document.body.contentEditable ='true'; document.designMode='on'; void 0 . Introduceţi acest cod in bara de adrese, tastati Enter si editati orice pagina doriti (Precum e aratat in video de mai jos) .



Trucul consta in faptul ca acele date care le veti schimba ele nu se vor memora :( .
De aceea la urmatoarea accesare a paginii web, ea se va deschide fara schimbari. Aceasta e o metoda buna de a va păcăli prietenii. HAVE FUN!!!

31.03.2009

Google Chrome - o nouă versiune vitezomană

În visul său de cucerire a Internetului şi a tuturor reclamelor care pot aduce bani, Google lucrează din răsputeri la preţiosul său browser Web. Google Chrome
beta vine cu câteva funcţii noi dar de departe cea mai importantă noutate este sporul de viteză pe care îl oferă.
Noua versiune beta de Google Chrome încarcă foarte repede paginile care au la bază mult cod JavaScript. În unele teste noua versiune este mai rapidă cu 25%, în timp ce în altele sporul de viteză atinge şi 35 de procente.
Dincolo de sporul de viteză primit, noua versiune de Google Chrome se mai laudă cu funcţia Form AutoFill care reţine şi completează automat câmpurile din cadrul formularelor online . De asemenea, pe lista noutăţilor se află opţiunea de zoom complet al unei pagini Web.

O facilitate extrem de practică pentru cei care au monitoare wide este tragerea în paralel a două tab-uri care să îşi împartă în mod egal suprafaţa disponibilă. Pentru explicarea acestei functii urmariti video oficial creat de Google.



Astfel Google adaugind in browser Web asa tip de functii, la prima vedere "inutile" pentru unii, google isi mai cistiga citiva admiratorul, si acest numar creste pe zi ce trece.

29.03.2009

Lista schimbarilor in Regedit

Aceasta e un lucru foarte actual deoarece de obicei userii doresc sa stie despre schimbarile efectuate in Regedit dupa instalarea unor anumite programe. Luind de exemplu o programa cu o perioada limita de rulare. Pentru a scoate aceasta limita de timp in rulare poate fi nevoie de a afla ce key se creza in Regedit (cu scopul de a le modifica sau sterge). Pentru aceasta putem sa ne folosim de exemplu de un soft complicat precum Redmon, insa noi vom merge pe o cale mai usoara si vom face download la un soft mic (arhiva cintareste doar 25 Kb) numit regshot.


Mod de utilizare:
  1. Lansam regshot.exe, alegem optiunea de salvare pentru logs (puteti face salvare in document txt precum si in HTML).
  2. Cream screenShot-ul initial Regedit, apasind tasta "1st shot".
  3. Instalam programa de care avem nevoie (acel soft care dorim sa vedem ce schimbari produce in regedit), o lansam in executie, o inchidem.
  4. Cream cel de-al doilea screenShot al Regedit-ului (tasta "2nd shot"), apasam tasta "Compare". Regshot va analiza schimbarile efectuate de programa in Regedit si va afisa raportul final care va contine informatia despre schimbarile efectuate si noile regiuni create de ea, incluzind calea catre key si cuprinsul lor.

26.03.2009

"Trial-Reset" - Prelungiţi Viata Softului

Pentru ce vă va folosi acest lucru? In genere, pentru a prelungi timpul de folosire a softului.
Un pic despre partea etica si cea legala a acestui mod. Ne intrand in amanunturile juridice, eu as dori doar sa spun ca: soft-ul, care are rolul de a readuce la viata programele "moarte", doar sterge key-le din reester, despre care utilizatorul nici nu avea ideie. Reesterul e al meu, si in el eu pot face tot ce doresc, pot sterge ori modifica key-le dupa propria dorinta. Si daca in urma acestui fapt unele programe lucreaza si dupa trecerea timpului destinat trial incercarii, atunci ... eu nu am nici o vina :).

Mod de utilizare:
1. Download-am programa Trial-Reset.
2. Pornim programul si alegem din meniu "Protection -> All -> Scan".
3. Gasim in lista key-lor acele key, in numele carora este mentionata numele programului sau a companiei care a creat-o, si le stergem, alegind in meniu clickului drept functia "Clear Key".
4. Lansam programul, si daca el nu se ruleaza in urma acestei proceduri, gasim in lista key-lor acele key care sunt facute dupa acelas principiu de protectie ca si acel key sters de noi inainte de acesta( care sistema de protectie a creat key-le reesterului se poate de aflat privind in coloana System ). De exemplu daca noi recent am sters key creat de protectorul VBox, atunci stergem toate key-le asemanatoare.
Pentru a nu incepe sa stricati totul din jur dearece nu tineti minte tipul care era sau ca nu a isit ceva asa cum ati dorit va propun plasati bifa de autosalvare: "Options -> Auto backup". Dupa aceasta pentru toate key-le existente va fi creat un backup care se va pastra in directoriul programei Trial-Reset.

Sfat: Pentru a nu astepta ore intregi pentru a se termina scanarea computerului de tot tipul de programe cu diferite tipuri de protectie, ar trebui de constrins portiunea de cautare. Pentru acesta vom avea nevoie de programa PEid, care poate detecta tipul de protectie a softului sau date despre protectorul folosit, care nu e greu de gasit pe net. Cunoscind tipul protectorului, scanarea reesterului se poate de facut doar pentru acel tip de protectie (" Protectors -> Nume_protector -> Scan ").
Trial-Reset va poate folosi nu doar pentru trezirea la viata a softului dar si pentru eliminarea protectorului. De exemplu, el foarte mi-a ajutat la scoaterea protectorului VBox de pe Photoshop CS.

22.03.2009

Convertiţi videoclipurile YouTube

Exista multe site-uri care ofera uneltele necesare pentru descarcarea videoclipurilor de pe YouTube. Un mare neajuns al acestora insa este faptul ca materialele video sunt salvate in formatul FLV, prin urmare este nevoie de un program separat pentru a le rula, deoarece majoritatea dispozitivelor de redare media nu ofera suport pentru acest format. De asemenea, multi utilizatori folosesc aplicatii de conversie a fisierelor FLV in formate populare precum AVI sau MPEG. Vixy.net vine sa simplifice lucrurile, permitand convertirea online a fisierelor in formatele dorite, fara a mai fi nevoie de utilizarea unui program dedicat.

1. Vizitati YouTube.com
2. Cautati materialul video dorit si dati clic pe el.
3. Copiati linkul din bara de adrese.
4. Accesati adresa www.vixy.net
5. Copiati in cimpul URL linkul din YouTube (cu ajutorul combinatiei de taste [CTRL] + P).
6. Din sectiunea Converts to selectati orice format de fisiere in care doriti sa fie disponibil clipul video. Iata citeva exemple de astfel de formate:
  • AVI - un format Windows standart.
  • MOV - necesita aplicatia Quicktime player pentru a rula. Este formatul preferat al sistemului Mac.
  • MP4 - format utilizat de iPod-uri si alte media playere portabile
  • 3GP - cel mai bun format pentru transferul de materiale video pe telefonul mobil. Reduce considerabil marimea fisierului, in detrimentrul calitatii insa.
  • MP3 - Formatul audio potrivit doar daca fisierul incarcat pe youtube.com este un fisier audio. Puteti, de asemenea, sa-l folosoti pentru a separa fisierul audio de cel video.
7. Odata selectat formatul corespunzator, clic pe Start.
8. Conversia materialului video se realizeaza online; veti gasi un link intitulat: Download the converted video.
9. Selectati o locatie pentru a descarca videoclipul, iar apoi clic pe Save.

15.03.2009

Dezactivati functia AutoComplete (IE 7)

Uneori Internet Explorer-ul are prea multa initiativa proprie si devine iritant.
Sa luam, de pilda, functia AutoCompleate, care ne sâcâie ori de cite ori manifectăm intenţia de a introduce termeni in bara de căutare, prezentînd, sub forma unei liste derulante, o suite şi expresii înrudite cu termenii respectivi. Unii o găsesc utilă, alţii însă o detestă. Daca vă numărţi printre cei din ultima cartegorie, iată câţiva paşi prin care-i puteţi veni de hac:
1. Poate fi parţial dezactivata dînd clic pe Tool | Internet options
2. Selectati registrul Content
3. In sectiunea AutoComplete dati clic pe Settings sau in sectiunea Personal information dati clic pe AutoComplete
4. Debifati toate casutele si apoi dati clic pe OK. Totusi, IE face tot posibilul sa va reaminteasca, din cind in cind, sa reactivati acest serviciu. Asa ca, pentru o dezactivare complet, va trebuie sa intrati in Registry Editor.
  1. Dati clic pe Start | Run
  2. Scrieti "regedit" si apoi dati clic pe OK.
  3. In editorul de registru, dati clic pe HKEY_CURREN_USER | Software | Policies | Microsoft.
  4. Clic-dreapta pe Microsoft si selectati New | Key.
  5. Denumiti noul director-cheie Internet Explorer.
  6. Creati un nou director-cheie in sectiunea Internet Explorer | Control Panel, utilizind aceeasi tehnica.
  7. Dati clic-dreapta pe spatiul alb din Control Panel si selectati New | DWord Value.
  8. Denumiti valoarea FormSeuggest.
  9. Dublu-clic pe acest fisier si dati-i valoarea "1", dupa care, clic pe OK.

14.03.2009

Detectarea metodei de protectie CD

Problema crearea unei copii a unui disc licenziat nici pe departe nu e noua – dovada acestui fadt este multimea de programe si posibilitati de trecere a acestei protectii de copiere. Metoda corecta de determinare a metodei de protectie a unui disc licenziat ne da posibilitatea de a alege calea corecta de inscriere si copiere a acelui CD, ne atragind atentia la faptul ca e licenziat.

Pentru a crea o copie valida a CD-ului trebuie sa efectuam urmatorii pasi:
1. Download-am softul “Copy Protection Detection” ultima versiune. Interfata e simpla si usor de inteles asa ca mergem mai departe.
2. Alegem locatia CD-ului si apasam pe butonul « Detect ». In portiunea « Protection found: » se va afisa una din posibilile protectii folosite : LaserLock, SafeDisk, SecuROM, CD-Cops, DiskGuard, DummyFiles sau Overburn.
3. Metoda de lupta cu fiecare din ele o puteti gasi in Internet, sau folosindu-va de indiciile soft-ului : apasam tasta « How ? » si alegam din lista metoda de protectie care a fost detectata.

11.03.2009

Instalare Ubuntu pe USB

Acest ghid vă permite să instalaţi, boot-ati şi rula Ubuntu Linux de la USB. Când faceti boot-ing Ubuntu în mod persistent, el foloseşte o "Casper-rw" partitie pentru a va salva modificările înapoi la drive-ul, restaurindule la fiecare "boot".

Instalare Ubuntu pe USB Instructiuni:
1. Download Ubuntu 6.10 Edgy ISO şi puneti-o pe un CD
2. Reporniţi computerul dumneavoastră în Ubuntu de la Live CD
3. Introduceţi o unitate flash USB de 1GB sau mai mare
4. Deschideţi o fereastră de tip terminal şi tapati "sudo su"
5. Tapati "fdisk -l" pentru a lista disponibilele unităţi / partiţii. Noteaza care aparat este flash drive dvs. de exemplu: / dev / sda). Pe parcursul acestui ghid, înlocuiţi x cu litera unitatii flash. De exemplu, dacă flash drive-ul este sdb, înlocuiţi x cu b.
6. Tapati "umount / dev/sdx1"
7. Tapati "fdisk / dev / sdx"
* Tapati p pentru a afişa partiţii existente şi d pentru a şterge
* Tapati p din nou, pentru a arăta orice partiţii (dacă există partiţii, repetaţi pasul anterior)
* Tapati n pentru a face o nouă partiţie
* Tapati P pentru partiţiea primară
* Tapati 1 pentru a face acesta, prima partiţie
* Apasati Enter pentru a utiliza implicit 1 cilindru
* Tapati +700M pentru a seta dimensiunea partiţiei
* Tastati a pentru a face această partiţie activă
* Tapati 1 pentru a selecta partiţia 1
* Tapati T pentru a schimba tipul de partiţie a filesystem-ului
* Tapati 6 pentru a selecta sistemul de fişiere FAT16
* Tapati n pentru a face o altă nouă partiţie
* Tapati P pentru partiţiea primară
* Tapati 2 pentru a face acesta cea de-a doua partiţie
* Apasati Enter pentru a utiliza implicit cilindru
* Apasati Enter din nou pentru a utiliza implicit ultimul cilindru
* Tip W pentru a scrie o noua tabelă de partiţii

8. Tapati "umount / dev/sdx1" pentru a te asigura ca 1 partiţie este unmounted
9. Tapati "mkfs.vfat-F 16-n usb / dev/sdx1" pentru a formata prima partiţie
10. Tapati "umount / dev/sdx2" pentru a te asigura ca a 2-a partiţie este unmounted
11. Tapati "mkfs.ext2 b-4096-L Casper-RW / dev/sdx2" pentru a formata cea de-a doua partiţie
12. Scoateţi şi Re-introduceţi flash drive-ul
13. Înapoi la terminal, tapati "sudo apt-get install syslinux mtools"
14. Tapati "syslinux-SF / dev/sdx1"
15. Descărcaţi acest fişier usyslinux.tar folosind arhiva de manager şi extrage syslinux.cfg fişierul pe "USB" flash drive
16. Tastati "cd / cdrom "
17. Tapati "cp-rf Casper disctree dists instala pics piscina preseed. Disc isolinux / * md5sum.txt README.diskdefines ubuntu.ico Casper / vmlinuz Casper / initrd.gz install/mt86plus / media / usb /"
18. Reporniţi computerul şi să vă stabiliţi sistem BIOS pentru a face procedura de "boot" de la USB-HDD sau USB-ZIP. De asemenea, setati "boot" prioritatile, dacă este necesar.

Dacă totul a mers cum trebuie, ar trebui să aveţi posibilitatea să porniţi cu Ubuntu de la USB flash dispozitiv şi ar trebui să vă fi salvat schimbările, restaurindule de la "boot".

Codaţi Conţinutul Hard-Discului

Cred ca stiti ce inseamna un “криптоконтейнер”. Sub acest termen se intelege o parte a hard-discului de o marime anumita care se foloseste pentru pastrarea informatiei confidentiale care e codata complet de un anumit algoritm. Criteriile principale la alegerea unui astfel de soft sunt stabilitarea algosa si onfortul de moderare cu conteinerile cripturilor. Acum va voi spune cum puteti sa va pastrati in siguranta datele dvs. Pentru acesta vom folosi programa Disk Cryptor care este raspindita gratis si nu are functii in plus care sa ne incurce.

1. Download-am programa de pe site-ul http://www.discryptor.net/
2. Instalam draiverele programei pentru Windows si facem reboot.
3. Pornim programa si alegem portiunea de hard-disc care ne intereseaza si tastam “Encrypt”.

4. Alegem algoritmul de codare, introducem codul (cu cit mai complicat cu atit mai bine) si lansam procedura de criptare, care va duce ceva timp in dependenta de marimea discului.

5. Permisiunea la datele codate puteti obtine doar cu ajutorul programului. Anume – montam partea aleasa (« Mount »), introducem parola ..... si aveti acces.

08.03.2009

Turbo Pascal Tutorial 2.2



Un alt tutorial legat de programarea in Turbo Pascal. In acest video se explica tema "Programe cu siruri de caractere". Este un video "prelungire" a aceastei teme. Vor urma si altele....

Turbo Pascal Tutorial 2.1



Un alt tutorial legat de programarea in Turbo Pascal. In acest video se explica tema "Programe cu siruri de caractere". Este un video "prelungire" a aceastei teme care am prezentat-o la general in Tutorial 2. Vor urma si altele....

07.03.2009

Turbo Pascal Tutorial 2



Un alt tutorial legat de programarea in turbo pascal. In acest video se explica tema "Programe cu siruri de caractere". Este un video de introducere in aceasta tema. Vor urma si altele....

Dezinstalarea corecta a antivirusurilor

Daca la instalarea programelor de antivirus ele se ispravesc bine atunci la dezinstalarea lor apar unele dificultati. Se intimpla ca atunci cind doriti sa stergeti un antivirus prin metoda obisnuita folosita in windows ea nici de cum nu doreste acest lucru, incepind sa apara diferite ferestre care preintimpina aparitia unor erori sau uneori chiar ignoreaza comenzile userului. Anume pentru astfel de situatii, creatorii de antivirusuri au creat utilite speciale si instructiuni pentru ele.

Kaspersky Anti-Virus
Pentru stergerea corecta a produselor « Kaspersky Lab » a fost creata utilita Kaspersky Anti-Virus Remover ( http://support.kaspersky.com/faq/?qid=208279463 ). Acest soft trebuei doar pornit, trebuei de introdus codul de siguranta de pe foto si de apasat pe butonul Remove. Dupa incheierea lucrului programei va fi nevoie de restartat computerul.

Avast ! Antivirus
Cu o metoda asemanatoare au venti si colaboratorii din ALWIL Software compilind un fail « aswClear.exe » pentru stergerea automata a zeci de programe produse de ei. Sa copiati acesta programa este posibil in orice timp de pe linkul urmator :
http://www.avast.com/eng/avast-uninstall-utility.html.



BitDefender
Pentru a sterge momentat antivirului elaborat de romani este folosita utilita BitDefender Uninstall Tool ( http://www.bitdefender.com/uninstall 1.17 Mb). Ea automat sterge versiunile de BitDefender 7.x, 8.x, 9.x, 10, 11 si 12. Iarasi nu uitati ca dupa acesta este nevoie de restartat computerul.

Conversia FAT în NTFS

FAT (File Allocation Table)
Un sistem de fişiere utilizat de MS-DOS şi de alte Windows bazate pe sisteme de operare pentru a organiza şi gestiona fişiere. File Allocation Table (FAT) este o structură de date care Windows o creează atunci când formataţi un volum utilizând FAT sau FAT32 sistemelor de fişiere. Windows stochează informaţii despre fiecare fişier FAT, astfel încât să poată prelua fişierul mai târziu.

FAT32
Un derivat de la FAT (File Allocation Table) sistem de fişiere. FAT32 acceptă dimensiuni mai mici, de grup şi de volume mai mari decât FAT, ceea ce duce la alocarea mai eficientă a spaţiului pe volumele FAT32.

Sistemul de fişiere NTFS
Un avansat sistem de fişiere care oferă performanţă, securitate, fiabilitate şi caracteristici complexe care nu sunt găsite în oricare versiune de FAT.De exemplu, NTFS garantează volum consistent prin utilizarea standarda a tranzacţie de logare şi tehnici de recuperare. Dacă un sistem nu reuşeşte, NTFS utilizează fişierul său jurnal şi informaţiile de control pentru a restaura consistenţa sistemului de fişiere.În Windows 2000 şi Windows XP, NTFS oferă, de asemenea, facilităţi avansate, cum ar fi permisiunea pentru fişiere şi foldere, criptarea, cotele de disc, şi compresia.

Conversia FAT în NTFS
Pentru a converti o partiţie FAT în NTFS, efectuaţi următorii paşi.
Faceţi clic pe Start -> Programe -> Command Prompt. În Windows XP faceţi clic pe Start -> Run -> tastati CMD si apasati OK. În fereastra nou deschisa tastati CONVERT [litera_discului]: / FS: NTFS. Convert.exe va incerca sa converteasca partitia in NTFS.

Maresteti viteza de conexiuni la Internet, fără un nou modem

Tot mai multa si mai multa lume se conecteaza rapid la internet cu ajutorul mai multor posibilitati de conexiune cum ar fi prin cablu sau ADSL, ceea ce il face pe un simplu utilizator de dial-up modem sa observe o schimbare rapida din World Wide Web in World Wide Wait. Aici va ofer un truc care va poate ajuta sa va mariti viteza modemului curent fara a fi nevoie sa va cheltuiti.

Exista o optiune in windows registru numita “Maximum Transfer Unit (MTU)”. Aceasta determină mărimea de pachete de date trimise între dvs. şi serverul dvs. In Windows 95, aceasta optiune avea o valoare de 1.500 bytes pe cind marimea pachetului actual de internet este de 1.000 bytes. Acesta uneori poate pune lucrurile la pamint. Pentru a remedia situatia, pur si simplu urmariti pasii de mai jos:

În Registry Editor (Start > Run > regedit.exe), navigati catre HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans. In fisierul NetTrans trebuie sa gasiti alt fisier numit “000x” in care x reprezinta un sfert de cifre. Faceti Click dreapta pe fisierul “000x” si selectati “New and StringValue”. Redenumiti itemul care apare pe panou in partea dreapta in “MaxMTU”, apoi executati un dublu click pe acesta pentru a face posibila aparitia ferestrei “Edit String” si da-i o valuare de 1002.

Tineti minte ca trebuie sa va “jucati” cu valoarea MaxMTU-lui pina cind observati ca conexiune la internet sa marit destul de mult. Multe peroane cistiga foarte mult utilizind acest truc, in timp ce altii abia observa o diferenta. In orice caz, cu siguranta merita sa incerci.

06.03.2009

Google Search Tricks



In acest video va propun pentru utilizare niste miki trucuri care va vor face cautare in google mai eficienta. Aici va voi arata cum sa utilizati urmatoarele trucuri:
1.Definitii
2.Gasirea unui Zbor
3.Conversii
4.Vremea (Timpul de afara)
5.Proxy

Mozilla Firefox Tips & Tricks ( Începători )

1. Zoom in, Zoom out
  • "CTRL" + "+" Pentru Zoom in
  • "CTRL" + "-" Pentru Zoom out
2. Încercaţi niste Tab Tricks
  • "CTRL" + "T" Deschideţi un nou Tab
  • "CTRL" + "W" Închide un Tab
  • "CTRL" + "Shift" + "T" Redeschideţi un Tab închis

3.Adauga Marcaje, cu un singur clic
Fiti la curent cu noutatile de pe saitul
care va place (Si salvati timpul). Cu un
singur click acum va puteti marca site-ul
care va placut. Trebuie doar să faceţi clic
pe "icon stea" în bara de locaţie.


4. Scurtează calea succesului tau
  • "CTRL" + "L" Mutaţi cursorul în locaţia barii
  • "CTRL" + "K" Mutaţi cursorul în caseta de căutare
  • "Space Bar" Derulaţi în jos pagina
  • "Space Bar" + "Shift" Derulaţi în sus pagina
  • "CTRL" + "R" Actualizează pagina
  • "Alt" + "<=" Înapoi
  • "Alt" + "=>" Înainte

Moderarea opţiunii CD Autorun



Acest video vă va ajuta sa intelegeti cum puteti dezactiva sau activa optiunea CD Autorun in cazul in care nu era activata.

Pagini in Google Chrome

In noul Browser Google Chrome sunt niste pagini about: foarte interesante, care ne dezvaluie multa informatie despre componentele interne ale acestui soft.


Iata unele din ele:
  • about:memory
  • about:stats
  • about:network
  • about:internets
  • about:histograms
  • about:dns
  • about:cache
  • about:plugins
  • about:version

Tetris in μTorrent



Pentru a acesa joaka Tetris in uTorrent trebuei doar sa alegeti de pe bara de comenzi butonul "Ajutor" -> Despre uTorrent -> Apoi tastati simplu litera T.

Cum se instalează Opera fără privilegii de administrator

Pentru a instala Browser-ului Opera la calculator nu e nevoi de a avea privilegii de administrator al acelui computer. Este posibil instalarea si de pe un account alternativ.
Tehnologia este foarte simpla. Pentru a evita aparitia ferestrei Windows care ne comunica despre incalcarea dreptului la acces, este necesar ca in timpul rularii procesului de instalare sa alegeti optiunea de instalare « conform alegerii proprii » apoi tastati enter. In fereastra nou deschisa trebuie sa alegeti directoriul de instalarea urmatorul “C:\Documents and Settings\Numele_de_utilizator_cu_care_sunteti_logat\Application Data\Opera” si trebuie sa scaoteti bifa de la optiunea “ Opera profiluri individuale pentru fiecare utilizator pe acest computer” apoi tastati enter.


Daca toate operatiunile au fost efectuate corect instalarea Browser-ului Opera trebuie sa continuie ne atragind atentia la faptul ca nu aveti privilegii de administrator.

05.03.2009

Strange Things




In acest video veti vedea 2 lucruri "ciudate" care intr-un fel sau altul nu le poate face calculatorul desi ar trebui sa le fac. Primul e faptul ca este imposibil sa creezi un folder cu denumirea "CON", oriunde in calculator. Iar al 2 ...... urmariti video si veti vedea.

C++ Tutorial 2 ("Numarul de cuvinte")



Un alt tutorial C++ . Tema programului "Numarul de cuvinte".
Crearea acestui program in C++va va ajuta atunci cind veti avea de creat un anumit document cu un numar limitat de cuvinte. Acest program va calcula cite cuvinte, rinduri si litere ati tastat.

04.03.2009

Calculator in Dev-C++



In acest video va voi arata cum sa creati un calculator in cazul in care nu dispuneti de unul la indemina dar aveti mare nevoie de el. Pentru acesta veti avea nevoie doar de Dev-C++ si un mik cod care il veti compila in el. Acest cod in C++ va va ajuta sa creati un calculator care va contine 4 elemente de calcul (+, -, *, / )

Crearea de imagini tridimensionale (3D)

O tehnologie interesanta a prezentat a tot cunoscuta Universitate Stanford: programa Make 3D ( http://make3d.stanford.edu/code.html ) ne permite de a crea o fotografie obisnuita bidimensionala in una extraordinara tridimensionala.


La fel ca majoritatea lucrarilor universitare, Make 3D se distribuie cu un cod deschis in conformitate cu licenta Creative Commons Attribution-Noncommercial 3.0 unported license. Cei care nu pot compila codul pe calculatorul propriu se pot folosi de web-interfata grafica ( http://make3d.stanford.edu/account/login ) atasata programei. Dupa inregistrare (care se efectuaza gratis) aici veti putea incarca imagini pe de calculatorul propriu sau sa aratati linkul catre imaginea care sta pe serverul Flickr. Mai multe lucrari din partea utilizatorului nu se cere, programul mai departe isi face lucru, iar dupa ceva timp va veti putea bucura de rezultat (despre finalizarea imaginii care ati incarcat-o veti primi un mesaj de anunt pe email).
Imaginea primita tridimensionala o veti putea apropia, departa si roti cu ajutorul mouse-lui (o astfel de posibilitate este datorata folosirei tehnologiei VRML). Dar in cazul in care nu aveti la dispozitie o imagine proprie puteti sa admirati imaginile altor utilizatori aflate in galeriea site-ului.

03.03.2009

CMD Tricks & Hacks

"How to Get around proxies"

1. Start -> Run
2. Type CMD
3.Type ping
4. Hit Enter
5. Take the ip (like in the picture)
6.Open your Internet Browser

7. Type the ip address in
6. Have fun !

"Changing XP account passwords"
(even if you are not admin)

1. Start -> Run
2. Type CMD
3.Type net user
4. Hit Enter
5. Type net user "accountname" * (so for this I'd type - net user foster1 * )
6. Hit Enter
7. Now type the new pass and confirm (P.S. It won't show for security reason)
8. Have fun !

27.02.2009

Google Secrets 1





Un mic video in care se arata mici secrete google pe care le poti folosi in fiecare zi pentru o eficienta a lucrului mai buna.

26.02.2009

Sistemul de baiţi

Sistemul international de unitati (SI) pentru multiplii şi submultiplii octetului

18.02.2009

Web Page as desktop background



Pentru iubitorii de net. Cream ca wallpaper o pagina de web.
Web Page as desktop background

17.02.2009

Hidden Internet Browser



Va prezint o modalitate de a gasi si lucra cu un browser ascuns.
Hidden Internet Browser. Computer secret.

16.02.2009

Crazy CMD



Asigurati-va un CMD nebun.
Make your CMD crazy. Computer trick

15.02.2009

PopUp Message



Va prezint o modalitate de a crea "PopUp Message" (Sub forma de fereastra).

11.02.2009

Tablouri Bidimensionale in TP



Prezentarea temei "Tablouri Bidimensionale in Turbo Pascal". Date generale.

09.02.2009

On-Screen Keyboard



I show how to Get An On-Screen Keyboard

06.02.2009

Invisible Folder



Have a folder you want to hide, or something you dont want others to see? With this trick, now you can. Step by step guide to make a normal desktop folder INVISIBLE!

05.02.2009

Turbo Pascal Tutorial 1 ("Hello World!")



Un Tutorial (Initial) Turbo Pascal. Tema programului "Hello World".

C++ Tutorial 1 ("Hello World!")



Un Tutorial (Initial) C++ . Tema programului "Hello World".

01.02.2009

Star Wars in CMD




Un video despre posibilitatea vizionarii unui film ascuns (Star Wars) in CMD.

    Blog din Moldova    FastCounter 

 
Copyright © 2008-2010 Foster1. All rights reserved.