Hop til hovedindhold

2024-07-27

SQLite: 35% hurtigere end filsystemet

  • SQLite læser og skriver små blobs (f.eks. miniaturebilleder) 35% hurtigere end ved brug af individuelle filer på disken og bruger omkring 20% mindre diskplads.
  • Effektiviteten tilskrives færre open() og close() systemkald og strammere datapakning, med forventning om forbedret ydeevne i fremtidige versioner.
  • Tests viser, at SQLite generelt overgår direkte fil-I/O, især på Windows med antivirussoftware aktiveret, selvom ydeevnen kan variere baseret på hardware og operativsystem.

Reaktioner

  • SQLite er 35% hurtigere end traditionelle filsystemer på grund af færre open/close systemkald og ingen behov for filsystemattributter eller metadata-kontroller.
  • Ydelsesforbedringen er især betydelig på Windows, hvor filsystemkald er iboende langsommere.
  • På trods af nogle begrænsninger, såsom en maksimal blobstørrelse på 2 GB og udfordringer med hierarkiske data, gør SQLite's hastighed og enkelhed det fordelagtigt til logfiler og anden datalagring.

Linux Kernel Modul Programmeringsguide

  • Linux Kernel Module Programming Guide giver en omfattende introduktion til at skabe og administrere kerne-moduler, som er dynamisk indlæselige kode-segmenter, der forbedrer kernens kapaciteter uden at kræve en genstart.
  • Vigtige værktøjer og kommandoer til at arbejde med kerne moduler inkluderer modprobe, insmod, depmod, lsmod og cat /proc/modules.
  • Guiden dækker væsentlige emner såsom modulinitialisering og oprydning, håndtering af kommandolinjeargumenter, styring af enhedsdrivere, interaktion med /proc og sysfs filsystemerne, samt undgåelse af almindelige faldgruber i kerneprogrammering.

Reaktioner

  • Linux Kernel Module Programming Guide fremhæver brugen af QEMU til kernel hacking og foreslår at opdatere bøger om Linux enhedsdrivere.
  • Greg KH bekræftede, at der ikke vil være en 4. udgave af bogen Linux Device Drivers, hvilket har udløst diskussioner om alternative ressourcer som "The Linux Memory Manager" og "Linux Insides."
  • Brugere delte erfaringer med QEMU til debugging og WireGuard test suite til udvikling af kernelmoduler, og understregede vigtigheden af menneskelig gennemgang i skrivning.

Domstole lukker smuthullet, der lader myndighederne gennemsøge din telefon ved grænsen

  • En føderal dommer har afgjort, at Customs and Border Protection (CBP) ikke kan søge i elektronik ved grænsen uden en kendelse, hvilket adresserer en smuthul i det fjerde forfatningstillæg.
  • Dommer Nina Morrison udtalte, at ransagninger af mobiltelefoner er 'ikke-rutinemæssige' og kræver sandsynlig grund og en kendelse, idet hun sammenlignede dem med kropsvisitationer på grund af deres betydelige indvirkning på privatlivet.
  • Domstolens afgørelse, som støttes af borgerrettighedsforkæmpere, anses for at være afgørende for pressefrihed og privatlivsrettigheder, i tråd med lignende beslutninger i andre kredse og distrikter.

Reaktioner

  • En distriktsdomstol i New York har afgjort, at ransagninger af mobiltelefoner uden kendelse ved grænsen er "ikke-rutinemæssige" og mere indgribende end andre typer ransagninger, idet de sammenlignes med kropsvisitationer.
  • Denne beslutning er ikke en bindende præcedens og står i kontrast til afgørelser fra andre Circuit Courts, hvilket indikerer en potentiel mulighed for, at Højesteret vil tage stilling til spørgsmålet på grund af den eksisterende "circuit split."
  • Dommerens afgørelse afspejler de igangværende debatter om privatlivsrettigheder og statens beføjelser, især i forbindelse med grænsesikkerhed og det fjerde forfatningstillæg.

I begyndelsen var kommandolinjen (1999)

  • I Neal Stephensons essay 'In the Beginning was the Command Line' udforskes udviklingen af operativsystemer (OS) og deres markedsdynamik med fokus på Apple og Microsoft.
  • Microsoft opnåede markedsdominans ved at sælge operativsystemer som forbrugsvarer, med vægt på bekvemmelighed og brugervenlighed, hvilket resonerede med bredere kulturelle tendenser, der værdsatte enkelhed frem for kompleksitet.
  • På trods af fremkomsten af overlegne, gratis alternativer som Linux og BeOS, foretrak de fleste forbrugere Microsofts velkendte produkter, hvilket fremhæver en samfundsmæssig præference for medierede oplevelser gennem grafiske brugergrænseflader (GUIs).

Reaktioner

  • I Neal Stephensons essay "In the Beginning Was the Command Line" (1999) fremhæves fordelene ved kommandolinjegrænseflader (CLI) over grafiske brugergrænseflader (GUI), idet der lægges vægt på deres kortfattethed og lette kommunikation.
  • Essayen sammenligner udviklingen af operativsystemer med biler og understreger den stabilitet og bruger kontrol, som CLI'er giver, på trods af populariteten af GUI'er.
  • Det dykker også ned i de kulturelle og filosofiske implikationer af teknologiske grænseflader og tilbyder et bredere perspektiv på, hvordan vi interagerer med teknologi.

OTP-tokens på mit håndled med det smarteste dumme ur

  • Sensor Watch har udgivet et nyt erstatningslogikkort til den klassiske Casio F-91W, som opgraderer uret med en ARM Cortex M0+ processor, mens det originale LCD, knapper og piezo-summer bevares.
  • Det opgraderede board er programmerbart, hvilket gør det muligt at tilpasse urskiver og hjælpeprogrammer, herunder funktioner som 2FA-tokens, ratemeter, verdensur og mere.
  • Uret er nemt at hacke, med en wasm-baseret emulator til testning, og der er detaljeret dokumentation tilgængelig for dem, der er interesserede i at modificere eller bygge deres egne urskiver.

Reaktioner

  • En diskussion på Hacker News fremhæver brugen af TOTP (Time-baseret engangskode) tokens på Casio-ure, specifikt modellerne F-91W og A158W, til tofaktorgodkendelse (2FA).
  • Projektet indebærer at ændre urets firmware for at vise TOTP-koder, med bidrag fra fællesskabet til at forbedre funktioner som brugerjustering og endda skabe spil til uret.
  • Bekymringer rejses om sikkerheden ved at have TOTP-koder synlige på et ur, med nogle der foreslår alternativer som FIDO2-hardware-nøgler for bedre beskyttelse mod phishing-angreb.

Den ultimative guide til netværksydelse i Linux

  • Guiden giver en dybdegående gennemgang af optimering af Linux-netværksydelse og dækker emner fra netværksstakken til avancerede pakkehåndteringsteknikker.
  • Vigtige indstillingstrin inkluderer justering af NIC-ringbufferstørrelser, interrupt-coalescence, IRQ-affinitet og brug af værktøjer som AF_PACKET, DPDK og XDP til højtydende pakkehåndtering.
  • Overvågning og justering af netværksindstillinger med værktøjer som ethtool, sysctl og netstat er afgørende for at opretholde optimal ydeevne.

Reaktioner

  • "Den ultimative guide til netværksydelse i Linux" er en omfattende ressource til optimering af netværksydelse ved brug af Linux, særligt nyttig for dem, der arbejder med højhastighedsnetværk.
  • En bruger delte en succeshistorie om at opbygge et omkostningseffektivt 10Gbps krypteret netværk ved hjælp af kommercielt tilgængelig standardhardware (COTS) og Wireguard, hvilket betydeligt underbød kommercielle hardwareløsninger.
  • Diskussioner i kommentarerne inkluderer praktiske tips, såsom justering af TCP-bufferstørrelser, og værktøjer til automatisk ydeevneoptimering, som Oracles bpftune.

Windows-gendannelsesmiljø og bootbar USB-skaber i 200kb

  • Windows Deployment Image Customization Kit er et kommandolinjeværktøj designet til at tilpasse og implementere Windows-billeder.
  • Det giver en indbygget løsning for IT-professionelle og systemadministratorer til at effektivisere implementeringsprocessen.
  • Vejledninger og yderligere information er tilgængelige på platforme som YouTube og Microsofts officielle dokumentation.

Reaktioner

  • Et nyt shell-baseret værktøj til at skabe et Windows-gendannelsesmiljø og bootable USB er blevet udgivet, og det fylder kun 200 kilobyte.
  • Værktøjet, skrevet som en stor batchfil med 3.085 kodelinjer, viser imponerende dedikation og effektivitet, især i betragtning af tilgængeligheden af mere moderne scriptsprog som PowerShell.
  • Projektet er inspireret af clockworkmod recovery til Android og sigter mod at bruge "live-of-the-land" kommandoer, hvilket betyder, at det har nul afhængigheder og fungerer udelukkende under Windows.

Kriminelle omgik Googles e-mailverifikation for at oprette Workspace-konti, adgang

  • Google har rettet en autentificeringssvaghed, der tillod kriminelle at omgå e-mailbekræftelse for at oprette Google Workspace-konti og udgive sig for at være domæneindehavere.
  • Problemet blev løst inden for 72 timer, og yderligere detektionsforanstaltninger blev implementeret for at forhindre fremtidigt misbrug.
  • Angriberne havde til hensigt at udgive sig for domæneindehavere over for tredjepartstjenester, ikke at misbruge Googles tjenester, og den ondsindede aktivitet involverede et par tusinde Workspace-konti oprettet uden domæneverifikation.

Reaktioner

  • Angribere omgik Googles e-mailverifikation for at oprette uautoriserede Workspace-konti, hvilket førte til potentielle sikkerhedsbrud og uventede velkomstmails for uregistrerede domæner.
  • Disse uautoriserede konti blev brugt til at udnytte "Log ind med Google" på tredjepartswebsteder, hvilket forårsagede ofrene vanskeligheder med at generobre deres domæner.
  • Den hændelse understreger sårbarheder i Googles system og de risici, der er forbundet med sociale logins, hvilket fremkalder opfordringer til forbedringer som obligatorisk DNS-verifikation.

Gratis DDNS med Cloudflare og en Cronjob

  • Dette projekt tilbyder et gratis alternativ til betalte dynamiske DNS-tjenester ved at automatisere DNS-opdateringer på Cloudflare ved hjælp af en gratis konto og en cronjob.
  • Brugere skal klone repositoryet, oprette konfigurationsfiler (keys.json og records.json), og opsætte en cronjob eller tilsvarende opgaveplanlægger til at køre scriptet med regelmæssige intervaller.
  • Scriptet opdaterer DNS-poster på Cloudflare med maskinens aktuelle IP-adresse, hvilket gør det til en omkostningseffektiv løsning til dynamiske DNS-behov.

Reaktioner

  • Et GitHub-projekt tilbyder en gratis Dynamic DNS (DDNS) løsning ved hjælp af Cloudflare og en cron-job, hvilket tiltrækker betydelig interesse fra tech-fællesskabet.
  • Brugere diskuterer fordele og ulemper ved at bruge Cloudflare til DDNS, herunder potentielle lokke- og byttemetoder samt begrænsninger som obligatorisk TLS-terminering og uploadrestriktioner.
  • Alternativer og lignende projekter nævnes, såsom brug af Cloudflare-tunneler, Tailscale og andre DDNS-klienter, hvilket fremhæver de mange løsninger, der er tilgængelige for at håndtere dynamiske IP-adresser.

Introduktion til maskinlæringsinterviews bog

  • "Introduktion til Maskinlæringsinterviews Bogen" giver en omfattende guide til ML-interviewprocessen, der dækker roller, virksomhedstyper, interviewformater og spørgsmålstyper.
  • Den indeholder over 200 vidensspørgsmål og 30 åbne spørgsmål, der sigter mod at hjælpe både kandidater og ansættelsesledere med at forstå og forberede sig til ML-interviews.
  • Skrevet af Chip Huyen, som har omfattende erfaring med interviews hos store teknologivirksomheder og startups, samler bogen praktiske indsigter og forberedelsesstrategier.

Reaktioner

  • Der diskuteres om bogen "Introduction to Machine Learning Interviews" af Huyen Chip, med blandede meninger om dens effektivitet til forberedelse til ML-interviews.
  • Enkelte brugere foreslår, at bogens spørgsmål er lettere sammenlignet med faktiske ML-interviews, og andre anbefaler bogen "Deep Learning Interviews" som mere engagerende og repræsentativ.
  • Der er en debat om relevansen af at bruge standardspørgsmål fra bogen, hvor nogle går ind for at skabe personlige projekter i stedet.

Sqlitefs: SQLite som et filsystem

  • sqlite-fs gør det muligt for Linux- og MacOS-brugere at montere en SQLite-databasefil som et almindeligt filsystem, hvilket letter filoperationer gennem en database.
  • Kræver det nyeste Rust programmeringssprog (≥ 1.38) og libfuse (Linux) eller osxfuse (MacOS) for funktionalitet.
  • Understøtter forskellige filoperationer såsom oprettelse, læsning, skrivning, sletning af filer og mapper, ændring af attributter og håndtering af fil-låse, med streng fejlhåndtering.

Reaktioner

  • SQLiteFS er et projekt, der bruger SQLite som et filsystem, hvilket vækker interesse for dets unikke tilgang til filopbevaring.
  • Konceptet minder om Microsofts aflyste WinFS-projekt, som havde til formål at bruge SQL Server som et filsystem.
  • På trods af humoren og de teoretiske diskussioner overvejes praktiske anvendelser som at bruge SQLiteFS til in-memory operationer eller caching.

Oscar Zariski var en af grundlæggerne af moderne algebraisk geometri

  • Oscar Zariski (1899-1986) var en central skikkelse inden for moderne algebraisk geometri, kendt for sin indflydelsesrige bog "Algebraic Surfaces" og sine betydelige bidrag til feltet.
  • På trods af at han startede sin akademiske karriere senere end normalt, forblev Zariski aktiv ind i firserne med bemærkelsesværdigt arbejde med holomorfe funktioner og en rig akademisk rejse gennem prestigefyldte institutioner.
  • En interessant anekdote fra hans liv inkluderer, at han næsten missede sit eget bryllup, fordi han var dybt optaget af et matematisk problem, hvilket understreger hans intense dedikation til matematik.

Reaktioner

  • Oscar Zariski er anerkendt som en grundlægger af moderne algebraisk geometri.
  • Brugere delte anekdoter og diskuterede forskellige emner, herunder matematikeren Kalle Väisäläs humoristiske hændelse og 'imagination factor', som måler tid brugt i den virkelige vs. den imaginære verden.
  • Diskussionen gik også ind i historiske og politiske emner, såsom den russiske revolution og debatter om kommunisme vs. kapitalisme.

Bril: Et mellemsprog til undervisning i kompilatorer

  • Bril, det store røde mellemsprog, blev skabt for at forenkle undervisningen i kompilatorer ved at prioritere brugervenlighed og enkelhed frem for ydeevne og kodestørrelse.
  • Bril-programmer er JSON-dokumenter, hvilket gør dem tilgængelige med ethvert programmeringssprog og nemme at dele.
  • Bril-økosystemet er blevet udvidet med studenterbidrag, herunder værktøjer og sprogudvidelser, selvom dets SSA (Static Single Assignment) form har brug for forbedring.

Reaktioner

  • Bril er et mellemsprog (IL) designet til undervisning i kompilatorer, udviklet af Cornell University.
  • Diskussioner fremhæver behovet for at omarbejde Brils Static Single Assignment (SSA) form og sammenligninger med andre IL'er som ANF (A-Normal Form) og CPS (Continuation-Passing Style).
  • Some argue that existing ILs like LLVM are sufficient for educational purposes, while others emphasize Bril's unique approach to teaching compiler concepts.

Drivende kompilatorer

  • Serien sigter mod at udfylde hullet i litteraturen om brug af værktøjer til at omdanne programmer til eksekverbare filer, med fokus på kernekoncepter frem for at undervise i et sprog eller hvordan man skriver en compiler.
  • Det giver reproducerbare trin ved hjælp af bintools og driverens verbose-tilstand (-v) for at hjælpe læserne med at udforske ud over grundlæggende eksempler, forudsat en Linux-platform med gcc- eller clang-kompilatorer.
  • Serien er opdelt i fem dele: Driver, cpp (forprocessor), cc (kompilator), ld (linker) og Loader, hvilket tilbyder en struktureret tilgang til at forstå kompilationsprocessen.

Reaktioner

  • Artiklen giver en fremragende introduktion til C- og C++-værktøjskæden med fokus på Linux- og ELF-baserede platforme.
  • Vigtige præciseringer inkluderer, at C++ standardbiblioteket er bredere end STL, og ::operator new() er en del af runtime, ikke kun en skabelon.
  • Artiklen bør bedre skelne mellem OS-kernel-loaderen og brugerrummets dynamiske loader.

At lære om PCI-e: Driver og DMA

  • Indlægget beskriver implementeringen af en grundlæggende PCI-e (Peripheral Component Interconnect Express) enhedsdriver med fokus på hukommelseskortlægning og DMA (Direct Memory Access) operationer.
  • Det forklarer oprettelsen af en struct pci_driver, opsætningen af en tegnhedsdriver til interaktion med brugerrummet og brugen af MSI (Message Signalled Interrupts) til håndtering af asynkrone DMA-overførsler.
  • Indlægget er betydningsfuldt for sin praktiske guide til udvikling af en PCI-e enhedsdriver, inklusive kodeeksempler og henvisninger til kerne-dokumentation, hvilket gør det værdifuldt for nye softwareingeniører.

Reaktioner

  • Diskussionen centrerer sig om at bruge en FPGA (Field-Programmable Gate Array) til at bygge en displayadapter, med fokus på PCI-e (Peripheral Component Interconnect Express) hard IP (Intellectual Property).
  • Forskellige overkommelige FPGA-kort anbefales, herunder Spartan 6, Artix, Screamer PCIe Squirrel og Litefury, som understøtter PCIe og digital video output.
  • Indlægget fremhæver også ressourcer og designs til at skabe videokort og nævner den potentielle brug af Displayport Alt mode og UVC-type USB3-webkameraer til videooutput.