Tentukan apa yang Anda maksud dengan hal-hal tingkat tinggi. Menulis driver dan semua jenis perangkat lunak lain yang berkomunikasi dengan perangkat keras mungkin adalah apa yang kebanyakan orang pikirkan ketika Anda menyebutkan perangkat lunak tertanam. Sementara itu adalah bagian dari itu, itu hanya sebagian kecil. Setelah Anda memiliki semua pengaturan itu, masih ada seluruh aplikasi untuk menulis yang mungkin tidak pernah benar-benar berbicara dengan perangkat keras secara langsung dan lebih dari kemungkinan dalam kebanyakan kasus ini adalah sebagian besar upaya pengembangan. Ini pada tingkat tertentu dapat dibandingkan dengan pemrograman tingkat "lebih tinggi". Namun, di dunia tertanam Anda mungkin bekerja di bawah beberapa kendala terutama dalam hal daya komputasi dan memori. Berikut adalah daftar hal yang saya pikirkan setiap hari yang mungkin kurang penting dalam pengembangan tingkat yang lebih tinggi dalam banyak kasus.
- Konkurensi utas (perlindungan dan pengaturan waktu)
- Alokasi memori dan alokasi dan penggunaan
- Manajemen tumpukan (menghindari fragmentasi)
- Memenuhi tenggat waktu nyata
- Prioritas utas
- I / 0 kinerja
- Transfer DMA
- Ukuran Stack
- Kinerja perpustakaan
- Fitur bahasa (pengecualian mengasapi kode Anda)
Juga, platform tertanam cenderung sangat terspesialisasi untuk mencapai satu tujuan spesifik yang bertentangan dengan PC yang dirancang untuk menjadi platform untuk komputasi heterogen yang umum. Ini berarti bahwa Anda mungkin memiliki banyak kode khusus yang mungkin atau mungkin tidak portabel.
Saya menduga Anda sedang melihat pekerjaan di mana "tertanam" berarti "komputer di dalam kotak", umumnya yang melakukan satu tugas tertentu. Sangat mungkin menjalankan sebagian besar distro Linux atau Microsoft OS, tetapi itu akan cukup lengkap dan Anda akan dapat menggunakan IDE GUI standar dan sebagainya. Bagian yang tertanam benar-benar muncul ketika perangkat dikirimkan sebagai perekam video multi-saluran, perangkat streaming media atau alarm pencuri.
Hari-hari ini Anda dapat melakukan banyak pemrosesan dalam perangkat 1W, sehingga definisi tertanam telah berkembang. Tetapi bahkan 20 tahun yang lalu kami memiliki perangkat tertanam bertenaga baterai yang menjalankan DOS yang cukup standar dan membangun program untuk mereka menggunakan IDE saat itu (pemindai barcode simbol memiliki perpustakaan untuk C dan Pascal, misalnya, jadi kami menggunakan Turbo Pascal pada Win3.1 untuk membangun executable). Tetapi kami juga mengirimkan "PC industri" yang mem-boot DOS kemudian perangkat lunak kami, dan inputnya terbatas pada beberapa tombol besar tahan air yang dipasang pada kotak stainless steel. LCD 15 "di belakang kaca dalam kotak itu berarti kami memiliki banyak opsi output, tetapi memasang keyboard berarti membuka kotak (di dalam pabrik makanan). Itu mungkin dianggap tertanam dari beberapa perspektif. Sebagian besar pengguna memiliki beberapa opsi pemulihan kesalahan - siklus daya atau tidak.
sumber