Oleh Narenda Wicaksono
Arsitektur sistem operasi Windows Mobile 2003 terdiri dari empat layer (lapisan). Pemisahan layer
ini bertujuan untuk memudahkan pengembangan aplikasi smartphone. Empat layer tersebut
adalah: aplikasi/UI (User Interface),
logic, core API (Application Programming Interface), dan Radio Stack. Gambar arsitektur Windows Mobile 2003 dapat dilihat pada
Gambar berikut.

![]()
![]()
![]()
![]()
![]()
![]()
![]()
Arsitektur Sistem
Operasi Windows Mobile
Layer aplikasi/UI terdiri dari komponen yang mendukung
aplikasi yang berinteraksi langsung dengan pengguna smartphone. Komponen tersebut antara lain adalah: Dialer, Control Panel, Toolkit UI, dan Inbox. Aplikasi yang berinteraksi
langsung dengan pengguna yang memanfaatkan komponen dari layer aplikasi/UI misalnya: Phone
Dialer, SMS Manager, dan Pocket
Internet Explorer. Layer logic
terdiri dari sistem logic aplikasi
yang digunakan oleh layer
aplikasi/UI. Komponen dari layer ini
adalah: Synchronize Engine, Connection
Manager, dan Toolkit. Contoh
fungsinya adalah untuk kontrol dari koneksi jaringan dan sinkronisasi.
Layer core
APIs memberikan interface
antara komponen tingkat rendah dalam arsitektur ini (radio stack) dan layer logic.
Layer ini terdiri dari empat komponen,
yaitu: Telephone Application Programming
Interface (TAPI), Wireless Application Protocol (WAP), SIM, dan Short Message Service (SMS). Khusus
untuk SIM dan SMS, hak akses dari kedua komponen tersebut sangat tergantung
kepada kebijakan pembuat piranti smartphone.
Layer radio stack bertanggungjawab terhadap kontrol untuk
transmisi data dan suara yang melalui jaringan radio (GSM/CDMA).
Sistem operasi menyediakan lingkungan yang memungkinkan
aplikasi untuk berjalan diatasnya. Sistem operasi smartphone menyediakan stack yang
besarnya maksimal 58 Kilobytes untuk pemrosesan bagi setiap aplikasi yang
berjalan. Stack memori yang
digunakan oleh sebuah aplikasi dapat bertambah seiring dengan bertambahnya
penggunaan thread baru. Mengingat smartphone adalah sebuah piranti yang
memiliki sumber daya yang terbatas, maka setiap proses yang berjalan harus
menggunakan sumber daya seminimal mungkin. Cara yang dapat dilakukan adalah
dengan meminimalisasi penggunaan stack. Strategi
yang digunakan ada dua, yaitu:
1. Meminimalisasi penggunaan kode.Penggunaan kode yang minim akan menekan ukuran executable file. Jika ukuran executable
file kurang dari 58 Kilobytes,
maka aplikasi hanya akan menempati sebuah stack
yang disediakan oleh memori.
2. Tidak menggunakan thread. Hal ini dilakukan agar aplikasi tidak menghabiskan sumber daya
terlalu banyak karena hanya menempati sebuah stack saja.