Jedan Microsoftov programer vjeruje da ReactOS ne bi mogao bez posuđivanja Windows koda

Axel Rietschin, Microsoftov inženjer koji razvija jezgru Windowsa, doveden u pitanje mogućnost razvoja operativnog sustava ReactOS bez posuđivanja koda iz Windowsa. Po njegovom mišljenju, programeri ReactOS-a koristili su kod iz jezgre Windows Research, čiji je izvorni kod bio licenciran sveučilištima. Curenja ovog koda objavljena su na raznim mjestima, uključujući GitHub.

Ritchen je uvjeren da je fizički nemoguće napisati jezgru ReactOS-a od nule kako je sada napisana, koristeći samo dostupnu javnu dokumentaciju. Konkretno, nazivi internih struktura i funkcija u jezgri ReactOS-a podudaraju se sa sličnim imenima u jezgri Windows Research, dok se ti nazivi ne izvoze tijekom sklapanja i ne pojavljuju se nigdje osim u izvornom kodu. Isto vrijedi i za nazive i parametre makronaredbi, čija se imena ne mogu točno reproducirati bez gledanja izvornog Windows koda.

Podsjetimo da je 2006. ReactOS imao otkriveno uključujući oko 100 redaka sklopovskog koda dobivenog dekompiliranjem Windowsa. Nakon toga, razvoj je obustavljen na otprilike mjesec dana kako bi se izvršila revizija mogućih raskrižja. Od tada su programeri ReactOS-a posebno pažljivo provjeravali izvorne kodove predložene za uključivanje u projekt.

Prilikom obrnutog inženjeringa u skladu sa američkim zakonima o autorskim pravima, projekt ReactOS koristi dvosmjerni dizajn, u kojem jedan istraživač analizira rad i proizvodi dokumentaciju na temelju toga, a drugi programer koristi tu dokumentaciju za stvaranje nove implementacije za ReactOS. Moguće je da se u fazi analize izvorni kodovi sustava Windows dobiveni kao rezultat curenja mogu koristiti i da sastavljena dokumentacija odražava iste nazive funkcija i struktura, ali s razvojnom shemom koja se koristi u ReactOS-u, implementacija će biti potpuno drugačija i stvoren od nule.

Štoviše, već bile činjenicama publikacije o nadzoru sklopova kernela NT i W2K s neočišćenim informacijama o ispravljanju pogrešaka, uključujući podatke o nazivima internih varijabli. Mnogi nazivi struktura i funkcija također se nalaze u datotekama zaglavlja uključenim u SDK/DDK, a struktura sistemskih poziva može se odrediti analizom komponenti kao što je COM runtime. Bez čišćenja simboličkih tablica naziva, ažuriranja hitnih popravaka često se objavljuju. Osim toga, neki Windows programi i upravljački programi koriste nejavne, nedokumentirane pozive, a mnoge skrivene značajke Windowsa otkrivaju se tijekom prilagodbe pokretanja u virtualizacijskim sustavima i emulatorima.

Programeri ReactOS-a mogli bi koristiti ove komponente u procesu obrnutog inženjeringa.

Izvor: opennet.ru

Dodajte komentar