Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Čest práci a straně, Soudruzi! Jo a taky nejnovějším socialistickým výdobytkům technologie jako jsou rotační magnetické kotouče/média1.
Rád bych se ještě na skok vrátil k mému předchozímu dotazu potažmo zápisku. Vyhrabal jsem další jednotku, vyčistil ji a zprovoznil. Tentokráte s tím úmyslem že ji připojím k nějakému renálnému FDC. Bohužel už pár let doma nemám nic (funkčního) s konektorem pro floppynu na desce a tak jsem v práci vyhrabal další šrot, vyčistil ho od nánosu prachu (viz foto v příloze; o to jsem se musel podělit), vypojil původní 3½″ jednotku a připojil místo ní svoji 5¼″ disketovku. Překvapivě funguje.
Na první problém jsem narazil v BIOSu. Ten sice dovoluje přepnout typ jednotky, ale buď to špatně detekuje a nebo už vůbec nenabízí, protože vše co je možné zvolit je:
Tzn. v BIOSu jsem nic neměnil. Bohužel ji pak špatně detekuje i jádro samotné:
[ 6.678486] Linux agpgart interface v0.103 [ 6.698403] Floppy drive(s): fd0 is 1.44M [ 6.717097] FDC 0 is a post-1991 82077 [ 6.732878] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1Což vytvoří klasické zařízení /dev/fd0 a věřte-nevěřte funguje. Přečte první track (vypadne mi xxdečkem i obsah pár prvních sektorů) a pak kvůli rozdílnosti geometrie mezi rozdílnými jednotkami vyblije kýbl I/O errorů:
[ 126.567801] print_req_error: I/O error, dev fd0, sector 9 [ 127.235623] print_req_error: I/O error, dev fd0, sector 22 [ 127.569548] print_req_error: I/O error, dev fd0, sector 24 [ 129.406121] print_req_error: I/O error, dev fd0, sector 9 [ 129.406313] Buffer I/O error on dev fd0, logical block 1, async page read [ 130.407881] floppy0: sector not found: track 1, head 0, sector 7, size 2 [ 130.741779] floppy0: sector not found: track 1, head 0, sector 7, size 2 [ 130.741788] print_req_error: I/O error, dev fd0, sector 32 [ 131.075677] floppy0: sector not found: track 1, head 1, sector 2, size 2 [ 131.075685] print_req_error: I/O error, dev fd0, sector 40 [ 131.409591] floppy0: sector not found: track 1, head 1, sector 10, size 2 [ 131.409599] print_req_error: I/O error, dev fd0, sector 48 [ 131.743505] print_req_error: I/O error, dev fd0, sector 56 [ 132.077416] print_req_error: I/O error, dev fd0, sector 64 [ 132.411322] print_req_error: I/O error, dev fd0, sector 72 [ 132.745198] floppy0: sector not found: track 3, head 0, sector 3, size 2 [ 132.745207] print_req_error: I/O error, dev fd0, sector 80 [ 133.079126] floppy0: sector not found: track 3, head 0, sector 11, size 2 [ 133.079135] print_req_error: I/O error, dev fd0, sector 88Vím že jde o poměrně archaickou technologii, ale má ještě někdo páru jak se to vlastně zapojuje? Mám zapojit tu „třiapůlpalcovku“ a teprve za ni tu „pětipacovou“ mechaniku, tzn. klasickou konfiguraci A: a za ni B: A nebo se to přepíná nějakým jumperem na mechanice samotné? A nebo je prostě BIOS už moc nový a už na to můžu rovnou zapomenout? Dodám že jsem si samozřejmě pročetl dokumentaci a přišel na to že při načítání modulu je možné ručně nastavit CMOS, což hodně fajn no radši bych byl když by to zvládl i BIOS, protože z takové diskety bych mohl následně i bootovat (to nejde, to už jsem zkoušel) a vůbec tak nějak bych byl s funkčností asi víc spokojený.
Další věc je jak se vlastně nastavuje typ média? Myslím Double/Quad/High Density. Při čtení to nějak detekuje automaticky, ale co když ji chci naformátovat? Má někdo páru? Dělal vůbec ještě někdo s pětipalcovkou na Linuxu?
Dík a formátování zdar.
Jestli to bude A: nebo B: se ridilo podle toho, jestli mechanika byla na kabelu pred prekrizenim nebo za nim (https://www.google.com/search?q=floppy+cable). Predpokladam, ze v linuxu bude platit A: = /dev/fd0, B: = /dev/fd1.Jo, jo. Ono je mi to vcelku jedno která jak bude, spíš mi jde o to zvýšit pravděpodobnost té detekce tak aby A: = 1,44MB – B: = 1,2MB.
Podle fotek mas moc mlady BIOS, ktery 5.25" mechaniky uz nepamatuje a proto ti ji nenabizi. Zkus najit neco starsihoTak jsem si to myslel. Nevím kde už bych hrabal. To bych musel fakt vyloženě na smeťák. Jenže ono to zvládne, akorát jak jsem říkal musí se při načítání modulu ručně přehodit CMOS:
root@arch ~ # modprobe floppy "floppy=0,2,cmos" root@arch ~ # dmesg | tail [ 198.790628] audit: type=1130 audit(1543839469.769:30): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=gpm comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 233.249455] floppy0: setting CMOS code to 2 [ 233.250209] Floppy drive(s): fd0 is 1.2M [ 233.267900] FDC 0 is a post-1991 82077Což je na pytel. Radši bych byl když by si to detekovalo samo. Takže jedna před twistem, druhá za ním. Srozuměno. Jdu na to.
Další věc je jak se vlastně nastavuje typ média? Myslím Double/Quad/High Density.V tomhle je master počítač a slave mechanika (i když je to složitější). Ovladač (na základě tvých parametrů třeba u formátování) řekne řadiči jakou rychlostí mají číst a posílat data. Ovládání je přes IO registr 3f7h, ale některé hodnoty může nastavit BIOS do superIO (a OS o nich neví, ten jen bere standardizované hodnoty z cmos) - proto je dost pech, když BIOS nabízí jen 3.5" mechaniku. Řadič pošle přes pin 2 informaci o tom jak rychle se budou posílat data (asynchronně) a mechanika si podle toho nejspíš nastaví filtraci, zesílení, magnetizaci apod. Ale pozor mám za to, že v mechanice je "density" senzor (mikrospínač na díru v 3.5" a na výřez v 5.25"), ale nevím jak posílá mechanika zpátky info o tom, že má v sobě disketu která má jinou hustotu zápisu než chce řadič. Faktem je, že nějak to jde, protože řadič může ohlásit chybu "příliš vysoká rychlost" ... nejspíš mu mechanika na datovém výstupu pošle něco jako samý nuly apod (tipuju). Dost možná se některé mechaniky dají i přinutit aby zapisovaly vysokohustotní data na nízkohustotní disketě a to i bez dělání děr (asi záleží na tom kolik toho výrobce řadiče a disketovky ořezal). BTW programování řadiče disketovky je dost oříšek. Ty čipy jsou strašně dumb, ale musí posílat synchronizační pole, mezery mezi sektory, kódovat data apod. (protože disketovka je jen zesilovač hlav a motorek), takže komunikace s FDC řadičem vypadá skoro jako kdybys mu posílal instrukční slova. Rozhodně to není jako u ATA disku, kde do jednoho registru zapíšeš LBA sektor MCU na disku si samo dopočítá geometrii a pak jen sosáš data.
Dělal vůbec ještě někdo s pětipalcovkou na Linuxu?Měl jsem na ní jen tak ze srandy namountovanej FTP server pro kámoše.
Nejkurióznější je že ono je v té nabídce volba pro 3,5inch i když na tom kabelu není připojeno vůbec nic.Tak to jsem měl už na svém prvním kompu, nějaká 386 nebo 486sx. Asi se nikomu za těch 30 let nechtěla udělat pořádná autodetekce.
Konkrétně přenos dat je dvakrát tak rychlejší než má 1.44MB.Yup. Zde specifikace toho čip. Má to přenosovou rychlost až 1Mbps. Co je ovšem ještě zajímavější že krom rotačních médií je ten FDC čip určen i k zápisu na média lineární – kazetové jednotky. Tzn. valná většina počítačů (IBM PC kompatibilnách) řekněme od toho roku 1990 umí používat i kazetové jednotky. Přitom na vlastní oči jsem to běžet ještě nikdy neviděl, ba co ví ani o tom netušil.
Linuxový ovladač diskety má zaregistrovanou celou řadu minor čísel, podle kterých pozná, jakou geometrii chce uživatel po disketě.
Pro jednotlivá čísla byla předvytvořená zařízení ve stylu /dev/fd0u1722. Pak ještě bylo obecné /dev/fd0, které mělo být schopné rozpoznat správnou geometrii (nevím podle čeho), ale tahle automatika mi nikdy nefungovala pro jiné než 1.44HD diskety formátované na 1.44 nebo o něco méně.
Před několika lety z udevu (nebo kernelu?) specializovaná zařízení odebrali, protože je „nikdo nepotřebuje“.
Formátování pak probíhalo nástrojem fdformat, kterému se předalo nejlépe specializované zařízení.
Ohledně bootování ale musí být nějaká podpora v BIOSu. Což asi bude ono nastavování velikosti v SETUPu. Mám dojem, že když člověk chtěl 1722KB formát na 1.44HD médiu a bootovat z něj, tak se dělala taková zvěrstva, jako že první stopa byla naformátována s klasickým počtem sektorů, aby BIOS dokázal načíst boot sektor, ale ostatní stopy už byly hustší a souborový systém měl naopak označenou první stopu jako nepoužitelnou, aby se nepokusil neexistující sektory na jejím konci číst.
Pro jednotlivá čísla byla předvytvořená zařízení ve stylu /dev/fd0u1722.No to jsem četl v manuálu pro fdformat, ale právě že nic takového nikde nemám. Jenom /dev/fd0. Takže mknod a pěkně ručně?
protože je „nikdo nepotřebuje“.To bych se měl asi někde hlásit.
Takže mknod a pěkně ručně?Jj minor hodnota toho device se použije jako index do tohodle pole. Ale není to 1:1, nějak se v tom shiftujou bity a nechce se mě procházet ten archaickej kód s globálníma proměnnýma (ale aspoň je to popsaný jaký má jakej formát parametry). Tady je příklad některých hodnot, ale určitě jsi už nějaký našel sám. Na symbolickém jménu nodu celkem nezávisí, klidně si to můžeš pojmenovat /dev/grunt
Takže mknod a pěkně ručně?Nebo vytvořit pravidlo/a pro udev.
Ohledně bootování ale musí být nějaká podpora v BIOSu. Což asi bude ono nastavování velikosti v SETUPu. Mám dojem, že když člověk chtěl 1722KB formát na 1.44HD médiu a bootovat z něj, tak se dělala taková zvěrstva, jako že první stopa byla naformátována s klasickým počtem sektorů, aby BIOS dokázal načíst boot sektor, ale ostatní stopy už byly hustší a souborový systém měl naopak označenou první stopu jako nepoužitelnou, aby se nepokusil neexistující sektory na jejím konci číst.No to je mi jasné. Když nic, BIOS musí být schopný načíst první sektor a předat mu řízení. Když jsme u toho, jak se vlastně dělá bootovací disketa? Předpokládám že na GRUB můžu zapomenout. FAT12 má k tomu určen právě bootsektor. Je k jeho zaplnění nějaký nástroj?
V dosfstools jsou nástroje pro vytvoření souborového systému FAT, který do bootsektoru strčí x86 kód, který vypíše, že tohle není bootovací disketa a buď se zacyklí nebo po stisku Enteru reboouje stroj. Jinak je bootování z diskety stejné jako z disku. Vlastně lepší. V případě diskety máte celých 512 bajtů na vlastní zavaděč. Na disku se ještě musíte podělit s tabulkou rozdělení disku.
V případě Linuxu, se myslím používalo LILO (nebo syslinux?). Stará verze nebo nějaký fork uměl instalaci na disketu a v podstatě načetl obraz jádra (spolu s initramdiskem v jednom obrazu) do paměti a dekompresi obrazu pak už prováděl Linux. Jiná možnost byla normání dosová bootovací disketa, na který se přikopírovalo jádro a loadlin.exe. DOS spustil autoexec.bat, ten spustil loadlin.exe a ten načetl do paměti Linux, přepnul do reálného režimu a skočil na začátek Linuxu.
Od té doby, co se ale ani komprimovaný Linux nevejde na disketu, to jaksi všechno postrádá smysl. Poslední, co jsem takto používal byla distribuce Tomsrtbt (Linux 2.2), která právě potřebovala disketu formátovanou na 1722 KB.
Pak ještě bylo obecné /dev/fd0, které mělo být schopné rozpoznat správnou geometrii (nevím podle čeho)Myslím, že to vezme default, kterej je nastavenej BIOSem. CMOS adresa 10h. V kernelu to 1:1 odpovídá první položce v tabulce zde. Načítání hodnot z CMOS je zde.
Tiskni
Sdílej: