CPU Revolusioner, Intel 80386
(xtof.info)- Intel 80386 bukan sekadar CPU 32-bit pertama dalam keluarga x86, tetapi juga menyediakan memori flat 4GiB sekaligus kompatibilitas dengan x86 yang sudah ada, sehingga menjadi fondasi sistem operasi modern untuk PC
- Pada awalnya Intel lebih memprioritaskan arsitektur lain seperti iAPX 432 dan P7, tetapi pertumbuhan pasar PC dan kompatibilitas perangkat lunak x86 membuat penyelesaian 386 menjadi prioritas utama
- Pada 386, Intel tidak mengizinkan produksi second source oleh IBM atau AMD dan menjadi pemasok tunggal, sementara Compaq Deskpro 386 mengguncang arus standar PC yang berpusat pada IBM
- Kinerjanya tidak jauh lebih unggul dibanding chip RISC sezamannya, tetapi MMU yang hadir di semua model 386 dan mode Virtual 8086 menjadi kunci transisi ke UNIX, OS/2, Windows, NT, dan Linux
- Ketika PC berbasis 386 diproduksi massal, MMU pun menyebar hingga ke PC pengguna umum, dan populernya Windows serta lahirnya Linux juga sangat terkait dengan penyebaran 386
x86 32-bit yang awalnya tidak diinginkan Intel
- Intel 80386 adalah CPU 32-bit pertama dalam keluarga x86, tetapi bukan bagian inti dari rencana awal Intel
- Pada akhir 1970-an, proyek terpenting Intel adalah iAPX 432, yang dimaksudkan sebagai desain utama mereka untuk era 1980-an
- iAPX 432 adalah CPU ambisius yang mencoba menyediakan pemrograman berorientasi objek dan alokasi penyimpanan lewat perangkat keras, disesuaikan untuk bahasa tingkat tinggi seperti ADA
- Karena terlihat bahwa pematangan desainnya akan memakan waktu lama, Intel memulai 8086 pada 1976 sebagai desain sementara
- Keluarga 8086 memenangkan kontrak IBM PC, sedangkan iAPX 432 baru muncul terlambat pada 1981 dan kinerjanya mengecewakan
- Dalam benchmark, kecepatannya hanya sekitar 1/4 dari 80286 yang jauh lebih murah pada frekuensi yang sama
- Bahkan pada 1982, Intel masih belum sepenuhnya mengakui pentingnya platform PC dan kompatibilitas biner perangkat lunak, dan 80286 pun masih terasa seperti CPU sementara lainnya
- Setelah menyadari kegagalan keluarga 432, para insinyur Intel mulai menyiapkan arsitektur RISC 32-bit baru bernama P7
Penetapan arah desain 80386
- Bob Childs, salah satu perancang 286, secara informal merangkum gagasan perluasan 32-bit untuk 286
- Sekitar 6 bulan kemudian, Intel memutuskan bahwa keluarga x86 memerlukan satu iterasi lagi sebelum P7 siap, lalu menyetujui pengembangan 386
- Tim awalnya kecil dan anggarannya terbatas
- Hasil peninjauan kebutuhan pelanggan x86 menunjukkan bahwa model memori segmented pada 8086 banyak dikeluhkan, dan 80286 juga belum mampu menghilangkannya
- Ketika UNIX menjadi semakin penting pada workstation yang lebih murah, tim 386 menargetkan CPU yang cocok untuk UNIX
- Kebutuhan paling penting adalah pengalamatan memori flat
- Untuk mempertahankan kompatibilitas dengan x86 yang ada, 386 tetap mempertahankan struktur segmen
- Karena setiap segmen kini bisa mencapai 4GiB, keberadaan segmen secara praktis menjadi jauh kurang menonjol
- Penyediaan paging dan memori virtual juga diputuskan pada masa ini
- Kumpulan instruksi dan register yang ada diperluas menjadi 32-bit untuk mempertahankan kompatibilitas biner
- Intel tidak memilih pendekatan menaruh kumpulan instruksi yang sepenuhnya berbeda di balik “mode header” terpisah
- Namun, kelemahan x86 berupa jumlah register yang sedikit juga tidak bisa diperbaiki
- Penggunaan bus baru untuk P7 sempat dipertimbangkan, tetapi dibatalkan karena terlalu berbeda dari bus 286 dan akan menuntut desain ulang motherboard serta chip pendukung
- Sebagai gantinya dipilih pendekatan yang kurang ambisius, yaitu memperluas bus yang ada menjadi 32-bit
- Sekitar 1984, ketika pasar PC tumbuh, Intel mulai memahami pentingnya keluarga x86, dan penyelesaian 80386 menjadi tugas paling utama
- Proyek P7 berlanjut menjadi i960 pada 1988, dan targetnya dialihkan ke pasar embedded agar tidak memangkas penjualan 386
Strategi Intel sebagai pemasok tunggal 386
- 80386 diumumkan pada Oktober 1985
- Saat itu, lazim bagi perusahaan perancang chip seperti Intel untuk melisensikan CPU agar juga bisa diproduksi perusahaan lain sebagai second source
- Pelanggan dapat menghindari kekurangan CPU meski pemasok utama mengalami masalah yield
- Intel dan AMD telah mempertahankan hubungan kerja sama yang panjang sejak era 8085 dan saling melakukan cross-license produk
- IBM juga sejak 1983 memiliki lisensi untuk memproduksi sendiri 808x dan 80286
- Pada 80386, praktik ini berubah
- Intel memandang bahwa untuk mengendalikan langsung CPU, komponen paling bernilai dalam PC, menjadi pemasok tunggal adalah hal penting
- IBM lebih tertarik berinvestasi besar pada 286 daripada pada 386 masa depan
- Kesepakatan Intel dan IBM dinegosiasikan ulang agar memuaskan IBM untuk 286, tetapi IBM tidak dapat memproduksi 386
- AMD juga tidak terlalu tertarik memproduksi 386, dan kesepakatan second source dengan AMD tidak diperluas ke 386
- Pada waktu yang hampir sama, putusan dalam perkara NEC vs Intel menyatakan bahwa microcode dilindungi hak cipta dan tidak bisa disalin tanpa lisensi khusus dari Intel
- Walaupun NEC mungkin bisa merekayasa balik microcode 8086, 386 dianggap hampir mustahil karena kompleksitasnya
- Setelah arus ini, Intel bersama Microsoft berada pada posisi untuk mengendalikan masa depan pasar PC
Compaq Deskpro 386 dan kemenangan PC klon
- IBM PC memakai komponen siap pakai agar cepat masuk ke pasar, dan akibatnya perusahaan lain juga bisa membeli komponen yang sama untuk membuat mesin kompatibel
- Perusahaan klon yang paling sukses dan ambisius adalah Compaq
- Pada saat itu Compaq adalah perusahaan yang paling cepat mencapai pendapatan 100 juta dolar
- Compaq mengumumkan Deskpro 386 pada September 1986, hampir 1 tahun setelah Intel merilis 80386
- Deskpro 386 adalah komputer 386 pertama
- Ini juga merupakan PC pertama yang tidak mengikuti arus upaya IBM merebut kembali kendali pasar PC lewat PC/AT berbasis 286
- Bill Gates mengatakan bahwa IBM tidak mempercayai 386, dan Microsoft mendorong Compaq untuk membuat mesin 386
- Peristiwa ini menjadi titik balik yang menunjukkan bahwa bukan hanya IBM yang bisa menetapkan standar; perusahaan seperti Compaq dan Intel juga dapat melakukan hal baru
- Compaq Deskpro 386 pada awalnya sangat mahal, tetapi penjualannya cukup baik dan menunjukkan bahwa IBM tidak lagi berada di posisi terdepan
- IBM baru merilis komputer 386 pertamanya, PS/2 model 80, hampir 1 tahun kemudian
- Lini PS/2 mencoba merebut kembali kendali dengan memperkenalkan bus proprietari yang sangat maju pada zamannya
- Namun IBM tidak lagi berada dalam posisi untuk memaksakan caranya, dan lini PS/2 gagal mencapai tujuan itu
Lingkungan persaingan dan kinerja 386
- Pada 1985, pesaing utama keluarga x86 Intel adalah keluarga Motorola 680x0
- Banyak orang memandang 68000 sebagai chip yang jauh lebih unggul daripada 8086, dan menganggap 80286 telah melewatkan kesempatan untuk berevolusi menjadi arsitektur yang bersih
- 68020 adalah evolusi 32-bit yang alami dari CPU Motorola
- Dengan 80386, Intel untuk pertama kalinya memiliki pesaing yang benar-benar serius
- Melalui MMU terintegrasi dan ruang alamat flat 4GiB, Intel juga bisa membidik pasar workstation yang menguntungkan
- Di pasar workstation, banyak perusahaan mulai mengadopsi desain RISC
- Daya tarik RISC adalah bisa dibuat lebih cepat dan lebih murah
- 386 adalah desain CISC yang bergantung pada microcode tebal untuk menangani kumpulan instruksi x86 yang kompleks dan mode pengalamatan 80286
- Dalam benchmark, 386 menunjukkan kinerja rata-rata
- Intel 80386 16MHz menghasilkan 4 MIPS, dan 25MHz menghasilkan 6 MIPS
- Motorola 68030 25MHz juga menghasilkan 6 MIPS
- Mips R2000 16MHz menghasilkan 16 MIPS, Motorola 88000 16MHz menghasilkan 17 MIPS, dan Intel i960CA 33MHz menghasilkan 66 MIPS
- Kinerjanya memang tidak revolusioner, tetapi fiturnya cukup untuk tetap bersaing
386SX dan penyebaran perangkat lunak 32-bit
- Setelah sepenuhnya berkomitmen pada 386, Intel memperkenalkan 386SX pada 1988
- 386SX secara internal sama dengan 386 asli, dan 386 asli kemudian diganti namanya menjadi 386DX
- Bus data eksternalnya 16-bit
- Disediakan dalam kemasan plastik yang lebih murah
- Bisa dipasang pada motherboard 16-bit yang murah
- Tujuan utama 386SX adalah menggantikan 286 pada kisaran harga yang serupa
- 286 masih memiliki pemasok second source
- Pada awal 1990-an, basis terpasang 386 sudah cukup besar sehingga lebih banyak vendor perangkat lunak dapat memanfaatkan fitur 32-bit dan fitur modern
- Yang menentukan adalah semua model 386, termasuk kelas bawah, memiliki MMU terintegrasi
MMU yang mengubah manajemen memori
- MMU adalah singkatan dari Memory Management Unit, perangkat keras yang secara otomatis menerjemahkan alamat virtual menjadi alamat fisik
- Program-program awal dapat melihat seluruh ruang alamat mesin
- Ini masih bisa dikelola saat ruang alamat kecil, tetapi ketika banyak program berjalan sekaligus dan sistem operasi tak lagi bisa tinggal di ROM, masalah isolasi menjadi besar
- Salah satu solusi awal adalah segmentasi
- Register segmen bertindak sebagai alamat dasar
- Saat program mengakses alamat, nilai 16-bit ditambahkan ke register segmen untuk membentuk alamat fisik
- Jika melampaui batas ukuran segmen, akan terjadi fault sehingga isolasi antaprogram menjadi mungkin
- 8086 menggunakan pendekatan segmen untuk akses memori
- 80286 memiliki MMU segmen yang kaya fitur dan mendukung manajemen memori yang lebih kompleks, serta dapat mengakses hingga 16MiB memori
- OS/2 1.x memanfaatkan MMU ini untuk memberikan pengalaman yang lebih modern
- Bagi programmer PC, memori tersegmentasi sangat membatasi dan sulit ditangani
- Desain MMU yang lebih modern berpusat pada paging
- MMU membagi ruang alamat virtual menjadi halaman berukuran tetap
- Saat halaman diakses, page descriptor dibaca untuk memperoleh informasi translasi alamat fisik
- Karena page descriptor biasanya berada di memori, cache TLB yang menyimpan descriptor yang baru diakses digunakan demi kinerja
- Banyak OS modern, terutama port UNIX, jauh lebih cocok dengan paging
- Workstation berbasis 68000 kadang memakai MMU eksternal paging buatan sendiri alih-alih MC68451
- Motorola kemudian memperkenalkan 68851, MMU eksternal untuk 68020
Struktur dan pembeda MMU 80386
- 386 harus cocok untuk OS modern, tetapi tetap kompatibel dengan 8086, 80286, dan perangkat lunak x86 yang ada
- Untuk itu, MMU 386 disusun hampir seperti dua perangkat yang terpisah
- Satu perangkat untuk mode segmen
- Satu lagi untuk mode paging
- Kedua perangkat bekerja secara berantai
- Alamat logis terlebih dulu melewati perangkat segmen dan dihitung menjadi alamat linear
- Jika paging dimatikan, alamat linear ini langsung menjadi alamat fisik
- Jika paging dinyalakan, TLB atau memori digunakan untuk mengambil page descriptor dan menghasilkan alamat fisik yang sebenarnya
- Perangkat segmen tidak bisa dinonaktifkan, tetapi dapat digunakan seperti memori flat dengan merepresentasikan seluruh ruang memori sebagai segmen 4GiB yang dimulai dari alamat 0
- Perangkat paging membagi segmen menjadi halaman 4KiB
- 80386 memperkenalkan empat tingkat hak akses yang disebut rings
- Ini digunakan untuk melindungi memori berhak akses dari operasi baca-tulis tanpa hak
- Menjadi salah satu elemen dasar yang dipakai OS proteksi modern
- MMU juga terlibat dalam mode Virtual 8086
- Program 8086 berjalan seolah mengendalikan satu 8086 penuh dengan memori hingga 1MiB
- Beberapa mesin virtual V86 dapat berjalan secara bersamaan
- Tindakan seperti akses ke sumber daya terlindungi akan memicu interupsi, lalu ditangani perangkat lunak berhak akses
- MMU 386 dirancang sebagai bagian CPU yang terintegrasi dan rapi
- Dalam kondisi ideal, ia tidak memengaruhi kinerja akses memori
- MC68851 selalu menambahkan setidaknya jeda 1 siklus
- Pada keluarga 68000, MMU tidak selalu hadir
- 68020 memerlukan MMU eksternal
- Versi EC murah dari 68030 dan 68040 tidak memiliki MMU terintegrasi
- 80386 menyertakan MMU di semua model, bahkan 386SX kelas bawah
- Program yang memanfaatkan MMU dan mode operasi lanjutan dapat berjalan di 386 mana pun
Transisi sistem operasi yang dibuka oleh 386
- Dampak nyata 386 bukan pada kinerja mentah, melainkan pada kemampuannya memungkinkan sistem operasi modern di PC
-
Xenix
- Xenix adalah salah satu port UNIX awal untuk mikrokomputer yang lahir dari kerja sama Microsoft dan SCO
- Port 8086 diumumkan pada 1980, tetapi tanpa MMU sejati, perlindungan memori dan pemisahan ruang pengguna-ruang kernel tidak mungkin dilakukan
- Versi 286 memanfaatkan protected mode dan menjadi lebih dekat dengan UNIX pada workstation
- Port 386 pada 1987 menggunakan paging untuk mempersempit kesenjangan, dan menjadi OS 32-bit modern pertama yang berjalan di x86
-
OS/2
- OS/2 pada awalnya dikembangkan bersama oleh Microsoft dan IBM, lalu Microsoft keluar untuk berfokus pada Windows
- Dirilis pada 1987, tetapi versi awal menargetkan 286
- Ini karena banyak mesin dalam lini IBM PS/2 memakai 286
- OS/2 memanfaatkan protected mode dengan baik dan dianggap sebagai OS canggih pada masanya
- OS/2 baru menjadi OS 32-bit pada versi 2.0 tahun 1992
- Sebelumnya, dukungan aplikasi DOS-nya kurang baik karena pendekatan memori tersegmentasi dan tidak adanya mode Virtual 8086, sehingga tertinggal dari Windows/386
- OS/2 2.0 adalah OS 32-bit pertama yang digunakan luas pada komputer pribadi
-
Windows
- Windows menyediakan lingkungan operasi khusus 80386 mulai dari Windows/386 pada 1987
- Windows/386 masih merupakan OS 16-bit dan tidak mengekspos ruang memori flat 32-bit
- Sebagai gantinya, ia menggunakan fitur 386 untuk memvirtualisasikan sesi DOS dalam mode Virtual 8086
- Banyak sesi DOS dapat berjalan paralel tanpa saling menyadari
- Ini penting bagi banyak perusahaan yang masih bergantung pada perangkat lunak DOS
- Berkat MMU, memori tambahan juga disediakan melalui driver protected mode yang mengemulasikan EMS
- Arah ini disempurnakan pada Windows 3.0 dan Windows 3.1, dan Windows 3.1 menjadi sukses besar
- Windows for Workgroups 3.11 tahun 1993 menghentikan dukungan untuk CPU di bawah 386, dan akses file serta banyak driver menjadi 32-bit
- Windows 95 benar-benar memanfaatkan MMU 386
- Mengekspos ruang memori flat
- Menggunakan paging dan memori virtual
- Sebagian kode masih 16-bit, tetapi DOS hampir menyusut menjadi sekadar bootloader
-
Windows NT
- Windows NT pertama dirilis pada Juli 1993
- Berbeda dari Windows 95 yang berkembang dari Windows 3.11 sambil mempertahankan sebagian kode warisan 16-bit, NT dikembangkan sejak awal sebagai Windows 32-bit yang “murni”
- Salah satu ciri utama NT adalah kemandirian terhadap perangkat keras, tetapi port terpentingnya adalah untuk 80386
- NT sepenuhnya memanfaatkan paging, supervisor mode, dan perlindungan memori
- NT berbagi API yang hampir sama dengan Windows 95 sehingga dapat menjalankan banyak aplikasi Win32
- NT4 mulai memengaruhi pasar Workstation UNIX pada pertengahan 1990-an
- Windows 11 adalah keturunan langsung dari kernel NT
-
Linux
- Sistem operasi yang paling erat terkait dengan 386 adalah Linux
- Linus Torvalds membeli PC 386 baru sekitar Januari 1991
- Linus, seorang puris komputer yang tumbuh dengan chip 68008, tidak menyukai PC, tetapi mengatakan bahwa kemunculan 386 membuat PC mulai tampak menarik
- 386 bisa melakukan apa yang dilakukan 68020
- Pada 1990, berkat produksi massal dan hadirnya klon murah, harganya menjadi jauh lebih rendah
- PC 386 ini cocok untuk menjalankan Minix, klon UNIX kecil untuk mengajarkan bagian dalam sistem operasi
- Linus tidak puas dengan emulator terminal Minix dan mulai menulisnya sendiri
- Terminal yang bagus penting untuk mengakses komputer universitas
- Ia menulisnya secara bare-metal untuk mempelajari perangkat keras 386
- Ia membuat fungsi input keyboard dan output layar
- Saat merancang di sekitar dua thread independen, ia menulis task switcher kecil
- Untuk mengunduh program, diperlukan driver disk agar bisa menyimpannya, dan sedikit demi sedikit fitur ditambahkan hingga terbentuk sistem operasi yang kemudian dikenal sebagai Linux
- Pada pertengahan 1991, Linus meminta salinan spesifikasi POSIX, dan pada 25 Agustus 1991 ia mengumumkan di newsgroup comp.os.minix bahwa ia sedang mengerjakan sistem operasi baru
- Ungkapan saat itu adalah “just a hobby, won’t be big and professional like gnu”
Dampak jangka panjang 80386
- 80386 dinilai sebagai CPU terpenting dalam keluarga x86
- Secara teknis 80386 adalah chip yang bagus, tetapi dari sisi kinerja tidak revolusioner dan tertinggal dari chip RISC sezamannya
- Intinya terletak pada MMU modern yang cepat dan berbagai mode operasi
- Ia dapat mengakses memori flat 4GiB
- Ia mempertahankan kompatibilitas dengan perangkat lunak x86 yang ada
- Windows dapat dimodernisasi secara bertahap
- Kemampuan pengelolaan memori 386 sudah cukup baik, sehingga CPU penerusnya menjadi lebih kuat tetapi hampir tidak menambah banyak hal besar di area ini selama hampir 20 tahun
- Mainline Linux baru menghentikan dukungan i386 pada 2013
- Secara komersial pun 386 sangat penting
- Intel awalnya tidak percaya pada permintaan x86 32-bit, tetapi kemudian menyadari bahwa x86 adalah masa depan
- Perubahan ini memberi sinyal ke pasar bahwa x86 akan terus berlanjut
- Adopsi 386 oleh para pembuat klon utama menyingkirkan IBM dan menunjukkan bahwa ada alternatif terbuka yang andal
- Intel menjadi satu-satunya pemasok CPU x86 terkuat dan mengambil langkah penting menuju dominasi pasar CPU
- Ketika mesin berbasis 386 diproduksi massal, harga turun cepat dan akses ke MMU menjadi arus utama
- Windows memperkenalkan komputasi modern kepada ratusan juta orang
- Kernel NT menunjukkan bahwa OS yang tangguh bisa berjalan bahkan di PC “beige” yang murah
- Linux begitu kuat kaitannya dengan 386 sehingga masuk akal untuk mengatakan bahwa Linux tidak akan ada tanpa 386
1 komentar
Opini Hacker News
Menurut saya, desain akhir 80386 banyak terbantu oleh Motorola 68000 dan penerusnya m68020
Kalau Motorola tidak merilis CPU 32-bit sejati tanpa kompromi, besar kemungkinan Intel akan mengeluarkan satu solusi sementara lagi setelah 80286. 80286 sendiri juga tidak dimaksudkan sebagai penerus yang benar-benar layak bagi 8086/8088
Sebenarnya 80386 juga penuh kompromi. Selain antrean prefetch instruksi 16-byte, sama sekali tidak ada cache, sementara m68020 punya cache instruksi 256-byte. Juga tidak ada instruksi atomik, dan
LOCKtidak terlalu berguna di sini, sehingga banyak OS modern mendukung 80486 tetapi tidak 80386. Karena kompatibilitas 8086 menuntut mode real atau VM86, butuh waktu cukup lama sampai perangkat lunak benar-benar memanfaatkan fitur baru 80386Meski begitu, ini tetap chip penting, dan juga menunjukkan tanda-tanda awal pola yang kemudian akrab di Intel. Misalnya upaya yang tidak bersaing dengan x86 atau malah mengorbankan x86 demi menciptakan pasar lain (iAPX 432, 20 tahun kemudian Itanic), fitur yang ditambahkan terburu-buru seperti pada 80286 lalu harus terus dibawa sebagai dukungan legacy selamanya, serta kebiasaan terlambat mengejar saat vendor lain sudah punya fitur yang semua orang inginkan (dukungan 32-bit flat saat itu, dukungan 64-bit 20 tahun kemudian)
Pada masa itu Intel sedang berada dalam krisis besar, dan nasib seluruh perusahaan bergantung pada chip ini keluar dengan sangat baik
Mereka bisa saja meleset dengan mudah seperti Data General, Honeywell, CDC, AST, Tandy, Olivetti, Xerox, DEC Rainbow, AT&T Hobbit, Wang 2200, atau Unisys. Ada survivorship bias yang kuat di sini. Banyak raksasa pada masanya seperti SDS, SDC, dan Fairchild kini nyaris terlupakan
Sejarah Intel pada dasarnya lebih dekat ke produsen memori. Bahkan sekarang pun bisa dibilang posisinya sedang sulit lagi. Pangsa pasar mobile dan elektronik konsumen mereka praktis 0%, dan di basis pertahanan inti yang tersisa pun NVIDIA, AMD, dan ARM terus menekan seperti sedang menjarah benteng. Semoga kali ini juga mereka bisa lolos
“Kesuksesan dalam bisnis mengandung benih kehancurannya sendiri. Kesuksesan melahirkan rasa puas diri. Rasa puas diri melahirkan kegagalan. Hanya yang paranoid yang bertahan hidup”
Manajemen Intel pada 2010-an tidak cukup memperhatikan hal ini
DEC seharusnya mengemas LSI-11 sebagai mesin konsumen. Perangkat lunaknya sudah lengkap dan kualitasnya juga sangat tinggi. Saya punya H-11, dan itu mesin yang luar biasa
Fakta bahwa Switch masih memakai chipset Tegra era 2015 juga kemungkinan karena bahkan perusahaan sebesar Nintendo pun tidak bisa cukup menekan NVIDIA untuk mengeluarkan desain baru. ARM tidak membuat CPU server yang bisa dibeli luas oleh publik, dan produk yang ada pun diserap habis oleh penyedia cloud. Di luar Mac, juga tidak ada CPU desktop/laptop ARM yang benar-benar layak. Qualcomm merusak pasar itu selama bertahun-tahun
Kecuali ARM menghadirkan solusi yang bisa menyaingi Rosetta, dan Qualcomm keluar dari pola pikir “asal nyala lalu rilis” yang mungkin masih bisa diterima vendor ponsel tetapi tidak cocok untuk pasar PC/desktop, adopsi ARM di pasar itu tampaknya akan sulit
Pada akhirnya satu-satunya ancaman yang tersisa bagi Intel adalah AMD, tetapi AMD tidak punya kapasitas produksi fab yang cukup untuk benar-benar mengancam moat Intel. Kondisi persaingan di komputasi umum ini bisa terasa sangat membuat frustrasi, atau mungkin juga tidak
Saya harap orang berhenti menempelkan tafsir belakangan bahwa 386 adalah soal “32-bit datar”. Itu jelas bukan tujuan utamanya, dan lebih dekat pada upaya mengadopsi fitur penting arsitektur berbasis kapabilitas yang saat itu dianggap sebagai masa depan
Ini adalah konteks sebelum gagasan seperti Unix/C/RISC/model supervisor tunggal menyingkirkan 30 tahun riset OS mainframe dan minikomputer sebelumnya di bidang seperti keamanan
Hal yang tidak dijelaskan dengan cukup jelas oleh tulisan ini adalah bahwa register segmen kini pada dasarnya menjadi indeks selektor ke tabel yang memiliki field alamat dasar+panjang (dalam satuan halaman atau byte) dan kontrol hak eksekusi. Dan selektor-selektor ini bersama GDT/LDT/IDT/TSS/call gate/task gate semuanya dirancang untuk mendukung 4 tingkat hak akses, misalnya pengguna/library/driver/kernel
Dengan saling bertukar selektor akses, hal-hal seperti pembatasan ukuran struktur data juga bisa dipaksakan, dan untuk itu FS/GS ditambahkan agar setiap register serbaguna bisa memiliki mask izin sendiri
Jika dipikir lagi, pointer (kapabilitas, yaitu selektor) bisa memiliki batas yang ditegakkan hardware selain alamat dasar, dan model perizinannya bisa membuat fungsi seperti
strcpy()tidak dapat menulis ke memori selain buffer tujuan atau ruang kerjanya sendiri. Bahasa dan OS juga bisa memaksa agar fungsi yang dipanggil tidak dapat menulis ke stack pemanggil, atau bahkan berjalan di stack yang sepenuhnya terpisah. Ini baru permulaanBahkan setelah hampir 40 tahun, industri masih berupaya pulih dari kesalahan merancang OS dan bahasa pemrograman di sekitar model memori datar dan model izin pengguna/supervisor yang sederhana. 386 menyediakan dukungan hardware untuk menulis fitur OS yang bahkan sekarang pun masih jarang. Lihat saja CHERI sebagai contoh
https://forums.grsecurity.net/viewtopic.php?f=7&t=3046
https://pax.grsecurity.net/docs/PaXTeam-H2HC12-PaX-kernel-se...
Saya ingin menekankan betapa pentingnya 386SX. Ayah saya ingin PC untuk saya dan meminta temannya merakit klon 286, tetapi temannya itu malah memberi 386SX
Katanya, “harganya hampir sama dengan 286, tetapi yang kamu dapat sekarang jelas CPU 32-bit,” dan itu benar. Dengan itu saya bisa menjalankan Win 3.11. CPU 32-bit yang bisa dibeli seharga 286 dan cukup terjangkau; produk yang benar-benar jenius
286 juga layak mendapat sedikit pengakuan di sini. 286 adalah chip yang cukup diremehkan karena throughput instruksi per clock-nya jauh lebih baik dibanding generasi sebelumnya, dan inilah yang menjadi cacat utama 386
Saat menjalankan kode 16-bit yang sudah ada, throughput instruksi per clock 386 pada dasarnya sama dengan 286, dan clock awalnya juga hanya 12MHz sehingga terasa kurang menarik. Sebelum clock benar-benar naik dan orang mulai memakai fitur 32-bit, nilainya tidak jauh lebih besar daripada sekadar pesaing DOS/286 yang mahal
Saya membeli komputer pertama saya saat remaja, tak lama setelah 386 dirilis. Saat itu di pasar ada PC 286 dan 386, tetapi 386 punya premium harga yang besar
Waktu itu saya belum paham bedanya, jadi saya membeli sistem 286, lalu dalam beberapa tahun tahu perbedaannya dan sangat menyesal tidak menabung lebih banyak untuk membeli 386. Tak lama kemudian saya mulai menulis assembly tingkat rendah seperti bootstrap sistem untuk OS mainan, tetapi saya tidak bisa memakai protected mode 32-bit. Selain itu, pada titik tertentu mulai muncul game khusus 386, jadi saya merasa cukup tertinggal sampai membeli 486 pertama saya
Intel mengembangkan lini x86 setelah 386 hingga Pentium Pro dan amd64, jadi saya penasaran kenapa Motorola tidak melakukan hal yang sama pada 68k
Saya pernah melihat pembahasan yang memperlakukannya seolah premis bahwa 68k sudah usang dan harus digantikan oleh PowerPC, tetapi itu tampak seperti dugaan. Saya belum pernah melihat argumen teknisnya, dan 68k tampak seperti arsitektur yang lebih rapi untuk dibawa maju dibanding x86 pasca-286
Intel sendiri setidaknya dua kali mencoba pindah ke i860 atau Itanic dan gagal. Karena itu, pilihan yang menang adalah terus memperbaiki x86
https://news.ycombinator.com/item?id=37796469
Itu adalah upaya membuat bus berbasis standar yang bisa bekerja lintas vendor dan juga cocok untuk CPU 88k. Tidak terlalu sukses besar, tetapi cukup berhasil sampai batas tertentu
Ungkapan “yang paling penting” terdengar sedikit seperti tafsir belakangan. Kalau 8086/8088 tidak kebetulan menjadi universal lewat IBM PC, mungkin tidak akan ada 80286, apalagi 80386
Meski begitu, 386 tetap merupakan pencapaian rekayasa yang mengubah dunia. Saya pikir dalam linimasa yang lebih adil dan setara, 68030 akan menguasai dunia, tetapi itu tidak mengurangi apa yang berhasil dicapai Intel
386 adalah yang pertama di keluarganya yang mendukung memori virtual demand paging, dan itu benar-benar membuka banyak hal yang bisa dilakukan OS. Secara pribadi saya menganggap ini fitur terpenting yang diberikan 386
PC kedua saya adalah 386 yang menjalankan SCO UNIX. PC pertama saya adalah Heathkit H-8 berbasis 8080 yang menjalankan CP/M
Bagian yang menyebut Bob Childs adalah salah satu perancang 286, dan secara tidak resmi memikirkan ide perluasan 32-bit untuk 286 selama sekitar 6 bulan, terasa mengejutkan
Bagaimana hal seperti itu bisa terjadi? Selama 30 tahun bekerja, saya belum pernah sekalipun punya tempat kerja yang tidak mencekik leher saya untuk menghasilkan sesuatu yang terlihat setiap beberapa hari