Linus Torvalds Floppy Drive haydovchisini qo'llab-quvvatlaydi

floppi haydovchi

Linus Torvalds 1991 yilda Linuxni yaratganida u ishlayotgan kompyuter shu kabi davr floppi haydovchi bilan jihozlangan. Y endi buni qo'llab-quvvatlash nihoyasiga yetdi. Yaqinda nashr etilgan nashrida taniqli ochiq kodli operatsion tizim yaratuvchisi floppi drayverlarga texnik xizmat ko'rsatishni to'xtatishni e'lon qiladi.

Atrofga nazar tashlash ma'lum darajada ushbu ma'lumot yozuvini tushunishga imkon beradi. Aslida, shuni ta'kidlash kerakki, bugungi kunda bozorga chiqarilgan noutbuklarning aksariyati va hattoki statsionar kompyuterlar disketka ega emas.

"Bugungi kunda bozorda ushbu turdagi uskunalarni topish tobora qiyinlashmoqda. Savdo do'konlarida hali ham mavjud bo'lgan narsa USB-ga asoslangan. To'satdan asl haydovchini endi qidirishmaydi », - deydi Torvalds.

Shu bilan endi qo'llab-quvvatlashni qo'llab-quvvatlaydigan mas'ul kishi bo'lmaydi Linux uchun floppi drayveri uchun, Hech bo'lmaganda bir lahzagaLinus fursatdan foydalanib, manfaatdor uchinchi tomonlarni jalb qilmoqda.

Biroq, haydovchi hanuzgacha unga bog'liq bo'lgan virtual mashinalarni qo'llab-quvvatlashini ta'minlash uchun mavjud bo'lib qoladi.

Disketlar haqida bilmagan yangi avlodlar uchun yoki floppi Sizga shuni aytishim mumkinki, bu magnitlangan ma'lumotlarni saqlash vositasi, magnitlangan va egiluvchan materialning (shu sababli uning nomi) yupqa dumaloq varag'i (disk) tomonidan hosil qilingan, bu kompyuterda ishlatilgan to'rtburchaklar yoki to'rtburchaklar shaklidagi plastik qopqoq bilan yopilgan, masalan: yuklash diskida, ma'lumotlar va ma'lumotlarni uzatish uchun bitta kompyuterdan boshqasiga yoki oddiygina fayllarni saqlash va himoya qilish uchun.

Bular rasmdagi kabi:

floppy_disk

 

Haydovchining manba kodini bugungi kungacha texnik xizmat ko'rsatuvchi mehrini qozongan ushbu komponentni kafolatlashni davom ettirish zarurati. Haqiqat shundaki, floppi diskini virtualizatsiya qilish apparat versiyasida yuzaga kelmaydigan muammolarni keltirib chiqaradi.

"Dasturiy ta'minot disketi bir vaqtning o'zida kirish holatlarini keltirib chiqarish uchun juda sekin. Boshqa tomondan, virtualizatsiya qilingan floppi diskka juda ko'p narsa olib keladi, chunki u tezroq ", - deydi Jiri Kosina 9 yil oldin chop etilgan postida.

Ushbu drayver uchun manba kodi mavjud Linux floppi diskini qo'llab-quvvatlashni istagan ishlab chiquvchilar uchun va agar kerak bo'lsa ma'lumot beradi.

Drivers / block / floppy.c raw_cmd-> kernel_data = floppy_track_buffer; xom_cmd-> uzunlik = 4 * F_SECT_PER_TRACK; agar (! F_SECT_PER_TRACK) qaytish; / * bir trek uchun ma'lumot tashish uchun taxminan 30ms ruxsat bering * / head_shift = (F_SECT_PER_TRACK + 5) / 6; @@ -3230,8 +3233,12 @@ statik int set_geometry (unsigned int cmd, struct floppy_struct * g, int cnt; / * aql-idrok parametrlarini tekshirish. * / If (g-> sect <= 0 || g-> head <= 0 || agar ((int) g-> sect <= 0 || (int) g-> head <= 0 || / * max_sector * / (int) (g-> sect * g->) ichida to'lib toshganligini tekshiring bosh) <= 0 || / * F_SECT_PER_TRACK * / (unsigned char) ((g-> sect << 2) >> FD_SIZECODE (g)) == 0 || g-> track <= 0 | da nolni tekshiring | g-> track> UDP-> tracks >> STRETCH (g) || / * ajratilgan bitlar o'rnatilganligini tekshiring * / (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_S_0_ty__e_ty__E_E_EE_E_E_EE_EE_EE_EE_EE_EE_EE_EE_EE_E_EE_E_EE_E_E_EE_E_E_E_E_E_E_E_E_E_E_E_E_E E E E IZ IZ uchun (i = 0; i <8; ++ i) {if (autodetect [i] <0 || autodetect [i]> = floppy_type_size) false return;} if (native_format <0 || native_format> = floppy_type_size) return false; qaytish t rue; } static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int cmd, unsigned long param) {@@ -3501,6 +3526,9 @@ static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int SUPBOUND (size, (const char *) outparam) + 1); break; case FDSETDRVPRM: if (! valid_floppy_drive_params (inparam.dp.autodetect, inparam.dp.native_format)) return -EINVAL; * UDP = inparam.dp; break; case FDGETDRVPR: @@ -3698,6 +3726,8 @@ static int compat_setdrvprm (int disk, qaytish -EPERM; agar (copy_from_user (& v, arg, sizeof (struct compat_floppy_drive_params))) return -EFAULT; agar (! Valid_floppy_drive_params (v.etod, v.etod native_format)) return -EINVAL; mutex_lock (& ​​floppy_mutex); UDP-> cmos = v.cmos; UDP-> max_dtr = v.max_dtr;

Disketalar kompyuterlar tarixining muhim qismidir, ammo ular tarixning bir qismi ekanligini tan olishimiz kerak. Ammo, ta'kidlash uchun, bir savol tug'iladi: bu kelajak avlodlar uchun emasmi?

Uskunaning etishmasligi, shuningdek, ioctl oralig'idagi tekshiruvlar virtual muhitda floppi ishlatadigan har bir kishi uchun ko'proq ahamiyatga ega ekanligini anglatadi.

Bundan tashqari, ochiqligi tufayli Linux hali ham eskirgan deb hisoblanadigan uskunalarda tajriba o'tkazishni istagan odamlar uchun tanlangan operatsion tizimdir.


Maqolaning mazmuni bizning printsiplarimizga rioya qiladi muharrirlik etikasi. Xato haqida xabar berish uchun bosing bu erda.

Birinchi bo'lib izohlang

Fikringizni qoldiring

Sizning email manzilingiz chop qilinmaydi.

*

*

  1. Ma'lumotlar uchun javobgardir: Migel Anxel Gaton
  2. Ma'lumotlarning maqsadi: SPAMni boshqarish, izohlarni boshqarish.
  3. Qonuniylashtirish: Sizning roziligingiz
  4. Ma'lumotlar haqida ma'lumot: qonuniy majburiyatlar bundan mustasno, ma'lumotlar uchinchi shaxslarga etkazilmaydi.
  5. Ma'lumotlarni saqlash: Occentus Networks (EU) tomonidan joylashtirilgan ma'lumotlar bazasi
  6. Huquqlar: istalgan vaqtda siz ma'lumotlaringizni cheklashingiz, tiklashingiz va o'chirishingiz mumkin.