Home | Info | Komunitas | Pengembangan | myReactOS | Hubungi Kami

  1. Home
  2. Info
  3. Komunitas
  4. Pengembangan
  5. myReactOS

  1. Pendahuluan
  2. Bagaimana untuk turut serta
  3. Whitepaper
  4. Mengkompilasi ReactOS
  5. FAQ Pengembang
  6. "Properti Intellektual"
  7. Peta Pengembang
  8. SVN Server
  9. Bugzilla
  10. Doxygen
  11. RosCMS
  12. Status Website
  13. Terjemahkan Website
  14. ReactOS CIA

Pengembangan ReactOS > FAQ Pengembang

FAQ Pengembang

tentang FAQ (Frequently Asked Questions) PengembangReactOS. Jika anda mempunyai pertanyaan yang lebih umum, baca FAQ Pemakai.

 

Umum

Bagaimana anda menghindari teks "Microsoft" sulit dihindari melalui ReactOS?

Kami percaya bahwa ini masih dalam penggunaan yang fair. Juga tidak diperlukan kecuali dalam registri.

Akankah drivers yang dibuat untuk Windows bekerja pada ReactOS?

Beberapa drivers telah diketahui bekerja, tetapi dalam hal ini tidak ada jawaban definitif karena beberapa fasilitas dalam ruang kernel yang tidak diimplementasikan.

Apa yang saya perlukan untuk mengkompilasi ReactOS dari sumbernya?

Rujuk halaman Membangun Lingkungan untuk informasi bagaimana cara mengkompilasi ReactOS dari sumbernya.

Mengapa sebaliknya anda tidak membantu proyek Wine?

Sebenarnya kami bekerja sangat erat dengan proyek Wine. Wine mungkin mempunyai banyak kemiripan dengan ReactOS daripada dengan Linux. Proyek Wine mempunyai tujuan mengimplementasikan seluruh windows API terhadap WineServer. Hanya ada sedikit dll WINE yang tidak bisa digunakan dalam ReactOS. Ini adalah NTDLL, USER32, KERNEL32, GDI32, dan ADVAPI. Sisa dari DLL WINE berbagi dengan ReactOS. Kami mempunyai beberapa pengembang baik dari proyek WINE dan ReactOS yang bekerja pada isu kompatibilitas silang diantara kedua proyek itu. Adalah pandangan kami bahwa Linux + Wine tidak pernah bisa menjadi pengganti dari Microsoft(R) Windows(R). ReactOS mempunyai potensi lebih tinggi derajatnya pada kompatibilitas - terutama driver Microsoft(R) Windows(R) - yang tidak ditangani oleh WINE.

IDE apa yang harus saya gunakan untuk mengembangkan ReactOS?

Lihat Menggunakan IDE untuk informasi pada editor kode yang didukung.

Bagaimana mengenai apa yang disebut SEH-problem?

Structured exception handling (SEH) digunakan dalam pemrograman ReactOS karena ia digunakan dalam pemrograman untuk OS/2 atau Microsoft(R) Windows(R) NT. SEH merupakan permainan yang dimainkan antara OS dan Kompilator (Kata kunci: __try, __except, __finally). ReactOS sendiri adalah SEH-aware dan menyediakan infrastruktur. Tetapi sampai sekarang, GNU-compiler yang digunakan tidak mampu membuat kode SEH aware. Maka seseorang tidak bisa mengkompilasi driver atau program yang menggunakan SEH dengan the GNU-Compiler.

 

Subsistem Grafis

Mengapa subsistem grafis tidak dalam Ring 3 tetapi dalam Ring 0?

Jawaban singkatnya adalah bahwa karena Microsoft mengerjakannya dengan cara itu, dan untuk membantu kompatibilitas driver, kami harus mengerjakannya dengan cara yang sama.

Mengapa Microsoft menyimpan GUI dalam Ring 0?

Karena ini memberikan sedikit keuntungan dalam hal kecepatan. Sebaliknya untuk GUI-server, yang berjalan dalam prosesnya sendiri, Tidak ada perubahan konteks yang diperlukan saat melakukan operasi GUI. Ini membuat arsitektur kurang bersih tentunya, dan ketika GUI rusak, maka keseluruhan sistem rusak. Diskusi yang sama terjadi di Redmond, ketika GUI masuk ke dalam kernel dalam Microsoft(R) Windows(R) NT 4.0. Menghasilkan kesimpulan bahwa GUI sudah matang, oleh karenanya tidak akan ada yang salah kecuali terjadi kesalahan driver, dan konsekuensinya mirip ketika sesuatu menjadi salah dalam mode pemakai.

Apakah ReactOS mempunyai masalah keamanan sama seperti Microsoft(R) Windows(R)?

Microsoft(R) Windows(R) NT dan penerusnya tidak benar-benar sistem yang tidak aman. Kami percaya bahwa Microsoft membuat sistem aman menjadi tidak aman sebagai hasil dari beberapa keputusan tidak baik. Sebagai contoh, Windows XP memberikan pemakai hak Administrator standarnya. Beberapa layanan diimplementasikan dengan buruk dan kemudahan dari penggunaan sering menjadi prioritas daripada keamanan. Kami bisa, mengatur ulang prioritas ini dalam ReactOS. Apa yang akan menjadi problematik adalah bahwa Microsoft tidak menekan para pembuat software untuk membiarkan produknya berjalan dengan hak normal pemakai.

GUI mana yang bisa saya gunakan?

Untuk menjawab ini, seseorang harus mengerti bagaimana fungsi GUI dalam ReactOS/Microsoft(R) Windows(R):
- DIB Engine (dalam subsistem grafis), bersamaan dengan driver kartu video anda, menyediakan perenderan primitif, seperti persegi panjang, garis, dan operasi BitBlit.
- Lalu ada subsistem Win32 (CSRSS), yang menyediakan fungsionalitas jendela, termasuk jendela konsol.
- Librari USER32.DLL menyediakan jendela lebih kompleks, seperti tombol dan kotak centang.
- Librari COMCTL32 bahkan menyediakan jendela lebih canggih, seperti dialog membuka file.
- Shell (contohnya Explorer) adalah program biasa, yang dimulai saat bootup. Ia membuat desktop dengan ikonnya, dan menu mulai. Ini adalah komponen terakhir yang bisa diubah dengan shell lain. Ada banyak "pengganti Explorer" open source seperti LiteStep dan BlackBox tersedia, yang ingin kami dukung.

 

Sistem File

ReactOS menggunakan driver sistem file seperti yang dilakukan Microsoft(R) Windows(R) NT. Untuk alasan itu, diimplementasikan IFS-interface yang kependekan dari Installable File System. Oleh karena itu, ReactOS akan bisa memanggil dan menggunakan driver-IFS. Pada saat penulisan ReactOS masih tidak bisa memanggil Microsoft(R) Windows(R) NT-asli IFS-drivers. Tetapi suatu saat, ReactOS akan bisa memanggil bahkan NTFS-driver asli.

Bisakah kami mengimplementasikan versi FreeDOS dari sistem file FAT32?

ReactOS telah mendukung FAT32 sejak lama. Tidak perlu untuk mengimplementasikan yang lainnya.

Apakah ReactOS mendukung VFAT dan nama yang panjang?

ReactOS secara aslinya mendukung nama file panjang dan unicode. Tergantung pada driver sistem file bagaimana bertindak dengannya. FAT-driver dikirimkan dengan ReactOS yang mendukung VFAT (=nama panjang pada FAT).

Mengapa anda tidak mengimplementasikan Ext2/3 daripada memfokuskan pada NTFS?

Karena NTFS adalah fitur utama yang harus didukung untuk beberapa saat. Ext2/3 tentu saja merupakan topik bagi kami, tetapi sudah ada proyek yang tujuannya mengimplementasikan Ext2/3 untuk NT. Kami akan menggunakan driver ini saat ia sudah cukup baik.

Dimana saya bisa menemukan Ext2/3-IFS untuk NT?

Anda bisa mencarinya disini: http://uranus.it.swin.edu.au/~jn/linux/ext2ifs.htm http://sys.xiloo.com/projects/projects.htm#ext2fsd http://ashedel.chat.ru/ext2fsnt/.

Bisakah saya membantu pemrograman driver installable file system?

Ya, ada banyak pekerjaan yang harus dikerjakan mengenai IFS-drivers. Tetapi sangat sulit untuk memprogramnya. Bisa dikatakan bahwa pemrograman driver adalah sulit tetapi pemrograman driver sistem file adalah disiplin raja. Jika anda benar-benar hacker kernel, silahkan ke daftar maling kami dan umumkan diri anda sendiri.

Bisakah kami menggunakan Ext2/3 daripada bertahan dalam NTFS?

Ya, itu tergantung anda sistem file mana yang ingin anda gunakan. Untuk sekarang, bagaimanapun, baik Ext2/3-IFS maupun NTFS-IFS kami yang siap untuk digunakan untuk baca dan tulis. Oleh karenanya masih banyak pekerjaan yang harus dikerjakan dan opsinya hanya FAT-IFS.

Mengapa anda tidak membuat pengguaan sumber proyek Linux-NTFS?

Sumber ini berguna, tetapi karena dengan semua implementasi NTFS (kecuali satu dari Microsoft) ialah kurangnya dukungan penulisan. Dan masih ada area besar dari NTFS yang tidak didokumentasikan/tidak dikenal. Kami bekerja sama dengannya - atau untuk sekarang - hanya menggunakan kode mereka. Sampai saat ini, tidak ada prioritas untuk NTFS, maka kontribusi aktif dalam area ini masih tersendat.

Seberapa kritis dukungan NTFS untuk ReactOS agar sukses?

Proyek ReactOS akan melihat dukungan NTFS sebagai prioritas, tetapi untuk saat ini, Tidak ada alasan kritis untuk mempunyainya. NTFS adalah sistem file hard disk primer, maka satu-satunya alasan seseorang membutuhkannya jika anda ingin mengakses partisi fisik yang diformat NTFS ketika menggunakan ReactOS. Sistem file lain akan bisa menyediakan fitur NTFS lanjutan (penjurnalan, ACLs, kompresi, hard links, dll.) jika kompatibilitas NTFS langsung bukanlah suatu kebutuhan. Semua software datang dengan media CD atau DVD (ISO-9660 atau UDFS), atau mungkin pada disket (FAT). Media eksternal (compact flash, memori sticks, dll.) cenderung diformat FAT.

Sumber JFS (juga untuk OS/2) bebas untuk di-download. Mengapa membuat sistem file standar JFS dalam ReactOS?

Ya, setidaknya IFS sudah direncanakan. Karena JFS masih merupakan sistem file dengan penjurnalan bagus, file besar dan ukuran partisi, ACLs dan atribut diperluas dan hard links, akan cukup memuaskan ReactOS. Kami sedang bekerja untuk itu tetapi anda diharapkan untuk membantu.

Bagaimana anda memperlakukan sensitifitas huruf (contoh. ext2) ?

Sensitifitas huruf bukan masalah dari sistem file sendiri. Itu adalah aspek dari driver terkait. Manajer objek yang menyediakan seluruh namespace mendukung sensitifitas huruf secara mendasar. Maka IFS-drivers memperoleh tanda huruf khusus yang masing-masing harus mereka tangani. Driver sistem file yang dipindahkan harus bisa menangani keduanya, (tidak)sensitif huruf.

Apakah sistem file 64-bit berjalan pada mesin 32-bit?

Ya. Ada bagian 64-bit yang hanya pengalamatan saja pada disk. Tidak ada kaitan dengan eksekutabel yang berisi driver. Eksekutabel tersebut mempunyai banyak bit seperti yang dipunyai seluruh sistem operasi.

Sistem file apa yang didukung ReactOS sekarang?

FAT(12/16/32) plus VFAT, ISO-9660 - CD-ROM, NPFS - named pipe file system (internal FS), MSFS - mailslot file system (internal FS)

Sistem file apa yang akan didukung ReactOS?

Sasaran kami adalah mendukung sebanyak mungkin sistem file. IFS-drivers bisa dikembangkan setidaknya sistem file disk yang tersedia dengan Linux. Tetapi sulit memprogram driver sistem file kompatibel/bekerja. Oleh karenanya memerlukan waktu. Akan ada setidaknya: FAT(12/16/32) plus VFAT, ISO-9660 - CD-ROM, Higher FS seperti ext3, NTFS atau JFS, NPFS - named pipe file system (internal FS), MSFS - mailslot file system (internal FS)

Saya mempunyai ide: Mengapa tidak membuang saja huruf drive yang aneh?

Ini adalah ide lama. Microsoft mungkin sudah mempunyai ide ini, tetapi mereka belum menerapkannya. Dalam tim ReactOS ada juga yang berpikir mengenai isu ini. Tetapi sampai sekarang tidak cukup kesimpulan pada topik ini. Ada ide seperti mempunyai sistem file berdasarkan memori atau membuka ruang nama manajer objek ke aplikasi win32 atau kata drive, tetapi setiap pendekatan mempunyai kelemahan. Catatan: ReactOS/Microsoft(R) Windows(R) NT Kernel tidak bekerja dengan huruf drive. Ini adalah peninggalan dari DOS (atau haruskah saya katakan CP/M) dalam Win32.

Apa sih Redirector?

Ini adalah bentuk khusus dari IFS driver. Ia tidak menerapkan sistem file pada-disk. Sebaliknya ia bergantung pada tumpukan jaringan kernel dan menyediakan banyak waktunya sistem file jarak jauh (contoh. SMB shares).

Apa sih pengenal sistem file?

Driver sistem file sebenarnya adalah kelas berat. Memanggilnya hanya untuk melihat bahwa disana tida ada partisi yang bisa di-mount adalah buang-buang waktu. Untuk alasan ini Dave Cutler membuat apa yang disebut recognizer driver. Ada lebih atau kurang bagian integral dari arsitektur driver. Driver ini dipanggil dan mencari partisi untuk sistem file bersamaan IFS yang mampu membaca. Jika menemupkan partisi seperti itu, ia memanggil bersama IFS untuk me-mount-nya.

SEH-Problem

Structured exception handling (SEH) digunakan dalam pemrograman ReactOS karena dipakai dalam pemrograman untuk OS/2 atau Microsoft(R) Windows(R) NT. SEH adalah permainan yang dimainkan antara OS dan Kompilator (kata kunci: __try, __except, __finally). ReactOS sendiri adalah SEH-aware dan menyediakan infrastruktur. Tetapi sampai sekarang, kompilator GNU-compiler yang digunakan tidak mampu menghasilkan kode SEH aware. Maka tidak bisa mengkompilasi driver atau program yang menggunakan SEH dengan GNU-Compiler.

 

Debugging

Bagaimana saya menelusuri eksepsi tidak tertangani dalam mode pemakai?

Telusuran terlihat mirip seperti ini: (KERNEL32:process/create.c:328) Proses diakhiri secara abnormal karena eksepsi tidak tertangani (KERNEL32:process/create.c:329) Alamat: 761a13e0 (KERNEL32:process/create.c:334) Frame: (KERNEL32:process/create.c:338) 761a2be9 Lihat di reactos/baseaddress.cfg, cari alamat dibawah yang sama dengan alamat yang sedang anda coba telusuri. Buka file .map untuk DLL terkait dalam viewer dan carilah ofsetnya.


ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.