Ngesikhathi uLinus Torvalds edala iLinux ngo-1991, ikhompyutha ayesebenza kuyo, njengaleyo yangaleso sikhathi, yayine-floppy disk drive . Manje ukusekelwa kwayo sekuphelile . Eposini lakamuva, umdali wesistimu yokusebenza evulekile edumile umemezele ukuyeka ukugcinwa komshayeli we-floppy disk drive.
Ukubheka nxazonke kuvumela, ngokwezinga elithile, ukuqonda leli nothi lolwazi. Empeleni, kwanele ukuqaphela ukuthi ama-laptops amaningi ngisho namakhompiyutha wedeskithophu afakwa emakethe namuhla awanayo idrayivu yedrayivu.
“Izinsizakusebenza zalolu hlobo emakethe namuhla kuya ngokuba nzima ukuthola. Leyo esatholakala ezitebeleni isuselwe kwi-USB. Ngokuphazima kweso umshayeli wokuqala akasabe esaseshwa, ”kusho uTorvalds.
Ngalokhu, ngeke kusaba khona muntu ophethe ukusekela umshayeli we-floppy disk we-Linux, okungenani okwamanje , njengoba i-Linus ithatha ithuba lokuheha abantu besithathu abanentshisekelo.
Kodwa-ke, umshayeli uhlala etholakala ukuqinisekisa ukuxhaswa kwemishini ebonakalayo esencike kuyo.
Ezizukulwaneni ezintsha ezingajwayelene nama- floppy disk, ngingakutshela ukuthi lena yindlela yokugcina idatha yamagnetic , equkethe ishidi elincane eliyindilinga (idiski) lezinto ezikwazi ukushintshwa futhi eziguquguqukayo (yingakho libizwa kanjalo), elifakwe ebhokisini lepulasitiki eliyisikwele noma elingunxande, elalisetshenziswa kumakhompyutha, isibonelo: njengediski yokuqalisa, ukudlulisa idatha nolwazi kusuka kwenye ikhompyutha kuya kwenye, noma nje ukugcina nokuvikela amafayela.
Lezi zifana nalezi ezisesithombeni:

Isidingo sokuqhubeka nokuqinisekisa le ngxenye ezuze ikhodi yomthombo yomshayeli uthando lomlondolozi kuze kube namuhla. Iqiniso ukuthi i-floppy drive virtualization idala izinkinga ezingaveli ngenguqulo yehadiwe.
“Idrayivu yedrayivu yehardware ihamba kancane kakhulu ukuqala izimo zokufinyelela ngasikhathi sinye. Ngakolunye uhlangothi, i-floppy drive ebunjiwe iletha okuningi ebusweni ngoba iyashesha kakhulu, "kusho uJiri Kosina kokuthunyelwe okwashicilelwa eminyakeni engu-9 eyedlule.
Ikhodi yomthombo yalesi sishayeli iyatholakala kubathuthukisi abafuna ukwesekwa kwe-Linux floppy drive futhi banganikeza ulwazi uma kudingeka.
abashayeli / vimba / floppy.c raw_cmd-> kernel_data = floppy_track_buffer; okuluhlaza_cmd-> ubude = 4 * F_SECT_PER_TRACK; uma (! F_SECT_PER_TRACK) kubuya; / * vumela cishe ama-30ms wokuthuthwa kwedatha ngethrekhi ngayinye / / head_shift = (F_SECT_PER_TRACK + 5) / 6; @@ -3230,8 +3233,12 @@ static int set_geometry (unsigned int cmd, struct floppy_struct * g, int cnt; / * sanity checking for parameters. * / Uma (g-> ihlelo <= 0 || g-> ikhanda <= 0 || uma ((int) g-> ihlelo <= 0 || (int) g-> ikhanda <= 0 || / * hlola ukuchichima ku-max_sector * / (int) (g-> sect * g-> ikhanda) <= 0 || / * hlola zero ku-F_SECT_PER_TRACK * / (unsigned char) ((g-> sect << 2) >> FD_SIZECODE (g)) == 0 || g-> track <= 0 | | g-> ithrekhi> UDP-> amathrekhi >> STRETCH (g) || / * hlola ukuthi ngabe izingcezwana ezibekiwe zisethwe * / (g-> stretch & ~ (FD_STRETCH | FD_SWAPSIDES | FD_SECTBASEMASK))! = 0) @@ - 3375,6 +3382,24 @@ static int fd_getgeo (struct block_device * bdev, struct hd_geometry * geo) return 0;} static bool valid_floppy_drive_params (const short autodetect [8], int native_format) {size_t floppy_type_size = ARRAY_SI; = 0; for (i = 0; i <8; ++ i) {if (autodetect [i] <0 || autodetect [i]> = floppy_type_size) buyela amanga;} uma (native_format <0 || native_format> = floppy_type_size) buyisela amanga; buyela t i-rue; } static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int cmd, unsigned param param) {@@ -3501,6 +3526,9 @@ static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int SUPBOUND (size, size, str str) (const char *) outparam) + 1); break; case FDSETDRVPRM: if (! valid_floppy_drive_params (inparam.dp.autodetect, inparam.dp.native_format)) buyela -EINVAL; * UDP = inparam.dp; break; icala FDGETDRVPRM: @@ -3698,6 +3726,8 @@ static int compat_setdrvprm (int drive, return -EPERM; if (copy_from_user (& v, arg, sizeof (struct compat_floppy_drive_params))) buyela -EFAULT; uma (! Valid_floppy_drive_params (v.autodetect, v. native_format)) buyela -EINVAL; mutex_lock (& floppy_mutex); UDP-> cmos = v.cmos; UDP-> max_dtr = v.max_dtr;
Ama-floppy disk ayingxenye ebalulekile yomlando wekhompyutha, kodwa kumelwe sivume ukuthi ayingxenye yomlando. Kodwa-ke, ukuze kugcizelelwe lokhu, kuphakama umbuzo: lokhu akulona yini isithiyo ezizukulwaneni ezizayo?
Ukushoda kwehardware futhi kusho ukuthi ukulungiswa kokuhlola uhla lwe-ioctl kungenzeka ukuthi kuhambisane kakhulu nanoma ngubani osebenzisa amafloppy endaweni ebonakalayo.
Ngaphezu kwalokho, kungaphikiswa ukuthi, ngenxa yokuvuleka kwayo, iLinux iseyindlela yokusebenza ekhethwayo kubantu abafuna ukuzama imishini ethathwa njengengasebenzi.