Ga naar hoofdinhoud

2024-07-27

SQLite: 35 % raskere enn filsystemet

  • SQLite leser og skriver små blobs (f.eks. miniatyrbilder) 35 % raskere enn ved bruk av individuelle filer på disk, og bruker omtrent 20 % mindre diskplass.
  • Effektiviteten tilskrives færre open() og close() systemkall og tettere datapakking, med forventet ytelsesforbedring i fremtidige versjoner.
  • Tester viser at SQLite generelt overgår direkte fil-I/O, spesielt på Windows med antivirusprogramvare aktivert, selv om ytelsen kan variere basert på maskinvare og operativsystem.

Reacties

  • SQLite er 35 % raskere enn tradisjonelle filsystemer på grunn av færre åpne/lukke systemanrop og ingen behov for filsystemattributter eller metadata-sjekker.
  • Ytelsesforbedringen er spesielt betydelig på Windows, hvor filsystemanrop er iboende tregere.
  • Til tross for noen begrensninger, som en maksimal blob-størrelse på 2 GB og utfordringer med hierarkiske data, gjør SQLite's hastighet og enkelhet det fordelaktig for logger og annen datalagring.

Linux Kernel Module Programmeringsveiledning

  • Linux Kernel Module Programming Guide gir en omfattende introduksjon til å lage og administrere kjernemoduler, som er dynamisk lastbare kodebiter som forbedrer kjernefunksjonene uten å kreve en omstart.
  • Viktige verktøy og kommandoer for å arbeide med kjernemoduler inkluderer modprobe, insmod, depmod, lsmod og cat /proc/modules.
  • Guiden dekker essensielle emner som initialisering og opprydding av moduler, håndtering av kommandolinjeargumenter, administrasjon av enhetsdrivere, interaksjon med /proc- og sysfs-filsystemene, og unngåelse av vanlige fallgruver i kjerneprogrammering.

Reacties

  • Linux Kernel Module Programming Guide fremhever bruk av QEMU for kjerne-hacking og foreslår å oppdatere bøker om Linux-enhetsdrivere.
  • Greg KH bekreftet at det ikke vil bli en 4. utgave av boken Linux Device Drivers, noe som utløste diskusjoner om alternative ressurser som "The Linux Memory Manager" og "Linux Insides."
  • Brukere delte erfaringer med QEMU for feilsøking og WireGuard test suite for utvikling av kjernemoduler, og understreket viktigheten av menneskelig gjennomgang i skriving.

Domstoler tetter smutthullet som lar føderale myndigheter søke gjennom telefonen din ved grensen

  • En føderal dommer avgjorde at Customs and Border Protection (CBP) ikke kan søke i elektronikk ved grensen uten en ransakingsordre, og adresserte dermed et smutthull i det fjerde grunnlovstillegget.
  • Dommer Nina Morrison uttalte at ransaking av mobiltelefoner er 'ikke-rutinemessig' og krever sannsynlig grunn og en ransakingsordre, og sammenlignet dem med kroppsvisitasjoner på grunn av deres betydelige innvirkning på personvernet.
  • Avgjørelsen, støttet av borgerrettsforkjempere, anses som avgjørende for pressefrihet og personvernrettigheter, etter lignende beslutninger i andre kretser og distrikter.

Reacties

  • En distriktsdomstol i New York avgjorde at ransaking av mobiltelefoner uten ransakingsordre ved grensen er "ikke-rutinemessig" og mer inngripende enn andre typer ransakinger, og sammenlignet dem med kroppsvisitasjoner.
  • Avgjørelsen er ikke bindende presedens og står i kontrast til avgjørelser fra andre kretsdomstoler, noe som indikerer en potensiell mulighet for at Høyesterett vil ta opp saken på grunn av den eksisterende "kretsdelingen."
  • Avgjørelsen reflekterer pågående debatter om personvernrettigheter og statens makt, spesielt i konteksten av grensesikkerhet og det fjerde grunnlovstillegget.

Begynnelsen var kommandolinjen (1999)

  • Innledningen til Neal Stephensons essay "In the Beginning was the Command Line" utforsker utviklingen av operativsystemer (OS) og deres markedsdynamikk, med fokus på Apple og Microsoft.
  • Microsoft oppnådde markedsdominans ved å selge operativsystemer som forbruksvarer, med vekt på bekvemmelighet og enkelhet, noe som resonerte med bredere kulturelle trender som verdsatte enkelhet over kompleksitet.
  • Til tross for fremveksten av overlegne, gratis alternativer som Linux og BeOS, foretrakk de fleste forbrukere Microsofts kjente produkter, noe som fremhever et samfunnsmessig preferanse for medierte opplevelser gjennom grafiske brukergrensesnitt (GUIer).

Reacties

  • Neal Stephensons essay "In the Beginning Was the Command Line" (1999) fremhever fordelene med kommandolinjegrensesnitt (CLI) over grafiske brukergrensesnitt (GUI), og understreker deres kortfattethet og enkelhet i kommunikasjon.
  • Essayet sammenligner utviklingen av operativsystemer med biler, og understreker stabiliteten og brukerkontrollen som tilbys av kommandolinjegrensesnitt til tross for populariteten til grafiske brukergrensesnitt.
  • Den går også inn på de kulturelle og filosofiske implikasjonene av teknologigrensesnitt, og gir et bredere perspektiv på hvordan vi samhandler med teknologi.

OTP-tokens på håndleddet mitt med den smarteste dumme klokken

  • Sensor Watch har lansert et nytt erstatningslogikkort for den klassiske Casio F-91W, og oppgraderer den med en ARM Cortex M0+ prosessor samtidig som den beholder den originale LCD-skjermen, knappene og piezo-summeren.
  • Det oppgraderte kortet er programmerbart, noe som gjør det mulig å tilpasse urskiver og verktøyapper, inkludert funksjoner som 2FA-tokens, ratemeter, verdensklokke og mer.
  • Klokken er enkel å hacke, med en wasm-basert emulator for testing, og detaljert dokumentasjon er tilgjengelig for de som er interessert i å modifisere eller lage sine egne urskiver.

Reacties

  • En diskusjon på Hacker News fremhever bruken av TOTP (Time-based One-Time Password) tokens på Casio-klokker, spesielt modellene F-91W og A158W, for tofaktorautentisering (2FA).
  • Prosjektet innebærer å modifisere klokkens firmware for å vise TOTP-koder, med bidrag fra fellesskapet som forbedrer funksjoner som brukerkalibrering og til og med å lage spill for klokken.
  • Det er bekymringer for sikkerheten ved å ha TOTP-koder synlige på en klokke, og noen foreslår alternativer som FIDO2-maskinvarenøkler for bedre beskyttelse mot phishing-angrep.

Linux Network Performance Ultimate Guide

  • Guiden gir en grundig oversikt over optimalisering av nettverksprestasjoner i Linux, og dekker emner fra nettverksstakken til avanserte pakkebehandlingsteknikker.
  • Viktige innstillingstrinn inkluderer justering av NIC-ringbufferstørrelser, avbruddskoalescens, IRQ-affinitet og bruk av verktøy som AF_PACKET, DPDK og XDP for høyytelses pakkehåndtering.
  • Overvåking og justering av nettverksinnstillinger med verktøy som ethtool, sysctl og netstat er essensielt for å opprettholde optimal ytelse.

Reacties

  • Den «Linux Network Performance Ultimate Guide» er en omfattende ressurs for å optimalisere nettverksytelse ved bruk av Linux, spesielt nyttig for de som arbeider med høyhastighetsnettverk.
  • En bruker delte en suksesshistorie om å bygge et kostnadseffektivt 10Gbps kryptert nettverk ved å bruke kommersielt tilgjengelig hyllevare (COTS) og Wireguard, som betydelig undergikk kommersielle maskinvareløsninger.
  • Diskusjoner i kommentarene inkluderer praktiske tips, som å justere TCP-bufferstørrelser, og verktøy for automatisk ytelsesjustering, som Oracles bpftune.

Windows-gjenopprettingsmiljø og oppstartbar USB-oppretter i 200kb

  • Windows Deployment Image Customization Kit er et kommandoskallverktøy designet for å tilpasse og distribuere Windows-avbildninger.
  • Det gir en native løsning for IT-profesjonelle og systemadministratorer for å effektivisere distribusjonsprosessen.
  • Veiledninger og tilleggsinformasjon er tilgjengelig på plattformer som YouTube og Microsofts offisielle dokumentasjon.

Reacties

  • Et nytt verktøy basert på shell for å lage et Windows-gjenopprettingsmiljø og oppstartbar USB har blitt utgitt, og det passer inn i bare 200 kilobytes.
  • Verktøyet, skrevet som en stor batch-fil med 3 085 kodelinjer, viser imponerende dedikasjon og effektivitet, spesielt gitt tilgjengeligheten av mer moderne skriptspråk som PowerShell.
  • Prosjektet er inspirert av clockworkmod recovery for Android og har som mål å bruke "live-of-the-land"-kommandoer, noe som betyr at det har null avhengigheter og fungerer utelukkende under Windows.

Svindlere omgått Googles e-postverifisering for å opprette Workspace-kontoer, tilgang

  • Google fikset en autentiseringssvakhet som tillot kriminelle å omgå e-postverifisering for å opprette Google Workspace-kontoer og utgi seg for å være domeneinnehavere.
  • Problemet ble løst innen 72 timer, og ytterligere deteksjonstiltak ble implementert for å forhindre fremtidig misbruk.
  • Angriperne hadde som mål å utgi seg for domenebrukere overfor tredjepartstjenester, ikke å misbruke Googles tjenester, og den ondsinnede aktiviteten involverte noen tusen Workspace-kontoer opprettet uten domenebekreftelse.

Reacties

  • Angripere omgått Googles e-postverifisering for å opprette uautoriserte Workspace-kontoer, noe som førte til potensielle sikkerhetsbrudd og uventede velkomst-e-poster for uregistrerte domener.
  • Disse uautoriserte kontoene ble brukt til å utnytte «Logg inn med Google» på tredjeparts nettsteder, noe som forårsaket vanskeligheter for ofrene med å gjenvinne sine domener.
  • Incidentet understreker sårbarheter i Googles system og risikoene forbundet med sosiale pålogginger, noe som fører til oppfordringer om forbedringer som obligatorisk DNS-verifisering.

Gratis DDNS med Cloudflare og en Cronjob

  • Dette prosjektet gir et gratis alternativ til betalte dynamiske DNS-tjenester ved å automatisere DNS-oppdateringer på Cloudflare ved hjelp av en gratis konto og en cronjob.
  • Brukere må klone depotet, opprette konfigurasjonsfiler (keys.json og records.json), og sette opp en cronjobb eller tilsvarende oppgaveplanlegger for å kjøre skriptet med jevne mellomrom.
  • Scriptet oppdaterer DNS-poster på Cloudflare med maskinens nåværende IP-adresse, noe som gjør det til en kostnadseffektiv løsning for dynamiske DNS-behov.

Reacties

  • Et GitHub-prosjekt tilbyr en gratis Dynamic DNS (DDNS)-løsning ved bruk av Cloudflare og en cron-jobb, og tiltrekker seg betydelig interesse fra teknologisamfunnet.
  • Brukere diskuterer fordeler og ulemper ved å bruke Cloudflare for DDNS, inkludert potensielle lokke- og byttetaktikker og begrensninger som obligatorisk TLS-terminering og opplastingsbegrensninger.
  • Alternativer og lignende prosjekter nevnes, som å bruke Cloudflare-tunneler, Tailscale og andre DDNS-klienter, og fremhever mangfoldet av løsninger som er tilgjengelige for å administrere dynamiske IP-adresser.

Introduksjon til intervjuer om maskinlæring bok

  • Introduksjon til maskinlæringsintervjuer-boken gir en omfattende guide til ML-intervjuprosessen, og dekker roller, selskaps typer, intervjuformater og spørsmålstyper.
  • Den inneholder over 200 kunnskapsspørsmål og 30 åpne spørsmål, med mål om å hjelpe både kandidater og ansettelsesansvarlige med å forstå og forberede seg til ML-intervjuer.
  • Skrevet av Chip Huyen, som har omfattende erfaring med intervjuer hos store teknologiselskaper og oppstartsbedrifter, samler boken praktiske innsikter og forberedelsesstrategier.

Reacties

  • Det diskuteres om boken "Introduction to Machine Learning Interviews" av Huyen Chip, med blandede meninger om dens effektivitet for å forberede seg til ML-intervjuer.
  • Enkelte brukere antyder at spørsmålene i boken er enklere sammenlignet med faktiske ML-intervjuer, og andre anbefaler boken "Deep Learning Interviews" som mer engasjerende og representativ.
  • Det er en debatt om relevansen av å bruke standardspørsmål fra boken, med noen som argumenterer for å lage personlige prosjekter i stedet.

Sqlitefs: SQLite som et filsystem

  • sqlite-fs gjør det mulig for Linux- og MacOS-brukere å montere en SQLite-databasefil som et vanlig filsystem, noe som letter filoperasjoner gjennom en database.
  • Trenger det nyeste Rust programmeringsspråket (≥ 1.38) og libfuse (Linux) eller osxfuse (MacOS) for funksjonalitet.
  • Støtter ulike filoperasjoner som å opprette, lese, skrive, slette filer og kataloger, endre attributter og håndtere fillåser, med streng feilhåndtering.

Reacties

  • SQLiteFS er et prosjekt som bruker SQLite som et filsystem, og vekker interesse for sin unike tilnærming til fil-lagring.
  • Konseptet minner om Microsofts kansellerte WinFS-prosjekt, som hadde som mål å bruke SQL Server som et filsystem.
  • Til tross for humoren og de teoretiske diskusjonene, blir praktiske anvendelser som å bruke SQLiteFS for operasjoner i minnet eller caching vurdert.

Oscar Zariski var en av grunnleggerne av moderne algebraisk geometri

  • Oscar Zariski (1899-1986) var en sentral skikkelse innen moderne algebraisk geometri, kjent for sin innflytelsesrike bok "Algebraic Surfaces" og sine betydelige bidrag til feltet.
  • Til tross for at han startet sin akademiske karriere senere enn vanlig, forble Zariski aktiv inn i åttiårene, med bemerkelsesverdig arbeid med holomorfe funksjoner og en rik akademisk reise gjennom prestisjetunge institusjoner.
  • En interessant anekdote fra livet hans inkluderer at han nesten gikk glipp av sitt eget bryllup på grunn av at han var dypt oppslukt i et matematisk problem, noe som fremhever hans intense dedikasjon til matematikk.

Reacties

  • Oscar Zariski er anerkjent som en grunnlegger av moderne algebraisk geometri.
  • Brukere delte anekdoter og diskuterte ulike emner, inkludert matematikeren Kalle Väisäläs humoristiske hendelse og "fantasifaktoren," som måler tid brukt i virkelige vs. imaginære verdener.
  • Diskusjonen gikk også inn på historiske og politiske temaer, som den russiske revolusjonen og debatter om kommunisme vs. kapitalisme.

Bril: Et mellomliggende språk for undervisning i kompilatorer

  • Bril, det store røde mellomliggende språket, ble opprettet for å forenkle undervisningen i kompilatorer ved å prioritere brukervennlighet og enkelhet fremfor ytelse og kode størrelse.
  • Bril-programmer er JSON-dokumenter, noe som gjør dem tilgjengelige med ethvert programmeringsspråk og enkle å dele.
  • Bril-økosystemet har utvidet seg med studentbidrag, inkludert verktøy og språkforlengelser, selv om dets SSA (Static Single Assignment) form trenger forbedring.

Reacties

  • Bril er et mellomliggende språk (IL) designet for å lære kompilatorer, utviklet av Cornell University.
  • Diskusjoner fremhever behovet for å omarbeide Brils Static Single Assignment (SSA)-form og sammenligninger med andre IL-er som ANF (A-Normal Form) og CPS (Continuation-Passing Style).
  • Noen hevder at eksisterende IL-er som LLVM er tilstrekkelige for pedagogiske formål, mens andre understreker Brils unike tilnærming til å lære bort kompilatorkonsepter.

Å kjøre kompilatorer

  • Serien har som mål å fylle gapet i litteraturen om bruk av verktøy for å gjøre programmer om til kjørbare filer, med fokus på kjernebegreper i stedet for å lære et språk eller hvordan man skriver en kompilator.
  • Den gir reproduserbare trinn ved bruk av bintools og driverens verbose-modus (-v) for å hjelpe leserne med å utforske utover grunnleggende eksempler, forutsatt en Linux-plattform med gcc- eller clang-kompilatorer.
  • Serien er delt inn i fem deler: Driver, cpp (forprosessor), cc (kompilator), ld (linker) og Loader, og tilbyr en strukturert tilnærming til å forstå kompilasjonsprosessen.

Reacties

  • Artikkelen gir en utmerket introduksjon til C- og C++-verktøykjeden, med fokus på Linux og ELF-baserte plattformer.
  • Viktige avklaringer inkluderer at C++ standardbiblioteket er bredere enn STL, og ::operator new() er en del av kjøretiden, ikke bare en mal.
  • Artikkelen bør bedre skille mellom OS-kernel-lasteren og brukerspace-dynamisk laster.

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

  • Innlegget beskriver implementeringen av en grunnleggende PCI-e (Peripheral Component Interconnect Express) enhetsdriver, med fokus på minnekartlegging og DMA (Direct Memory Access) operasjoner.
  • Det forklarer opprettelsen av en struct pci_driver, oppsettet av en tegn-enhet for brukerrom-interaksjon, og bruken av MSI (Message Signalled Interrupts) for håndtering av asynkrone DMA-overføringer.
  • Innlegget er betydningsfullt for sin praktiske veiledning om utvikling av en PCI-e enhetsdriver, inkludert kodeeksempler og referanser til kjernedokumentasjon, noe som gjør det verdifullt for nye programvareingeniører.

Reacties

  • Diskusjonen dreier seg om å bruke en FPGA (Field-Programmable Gate Array) til å bygge en skjermadapter, med fokus på PCI-e (Peripheral Component Interconnect Express) hard IP (Intellectual Property).
  • Flere rimelige FPGA-kort anbefales, inkludert Spartan 6, Artix, Screamer PCIe Squirrel og Litefury, som støtter PCIe og digital video utgang.
  • Innlegget fremhever også ressurser og design for å lage videokort og nevner den potensielle bruken av Displayport Alt-modus og UVC-type USB3-webkameraer for video utgang.