• Passa alla navigazione primaria
  • Passa al contenuto principale
  • Passa alla barra laterale primaria
  • Programmazione
  • Siamo tutti geek
  • IT Business
  • Tlc & Internet
  • Applicazioni & OS
  • Networking & Security
  • Software Engineering
  • Gadget

Stacktrace

Aperiodico di resistenza informatica

  • Home
  • Collabora
  • Archivi
  • Chi siamo
  • Termini d’uso

Andrea Righi

Linux kernel hacking: real-time backup con i kernel tracepoints

10 Settembre 2009 A cura di Andrea Righi Lascia un commento

I tracepoint (Documentation/trace/tracepoints.txt) sono degli hook “lightweight” che possono essere piazzati in determinati punti nel codice del kernel per registrare l’occorrenza di determinati eventi.

Un tracepoint definisce automaticamente la “probe function” che potrà essere piazzata in punti desiderati all’interno del codice del kernel (instrumentation).

Ogni volta che l’esecuzione passa da tali punti la “probe function” viene invocata e l’infrastruttura di tracing provvede a salvare il contesto dell’evento e le informazioni desiderate all’interno di un tracing buffer. Il tracing buffer sarà poi accessibile dallo userspace tramite il debugfs (/sys/kernel/debug/tracing/trace).

I kernel tracepoint sono utilizzati tipicamente come strumento di debug per tracciare in tempo reale l’occorrenza di particolari eventi, raccogliere statistiche, ecc.

In questo articolo vedremo un utilizzo dei tracepoint un po’ diverso dal solito e sfrutteremo la capacità di tracking in tempo reale e la leggerezza dell’infrastruttura dei tracepoint per realizzare un sistema di notifiche efficace e soprattutto a basso overhead.

[Leggi di più…] infoLinux kernel hacking: real-time backup con i kernel tracepoints

Archiviato in:Applicazioni & OS Contrassegnato con: backup, hacking, kernel, linux, real-time

Linux kernel hacking: contenitori di processi/2

18 Maggio 2009 A cura di Andrea Righi

Nell’articolo precedente abbiamo analizzato i concetti base dei Linux cgroup. Abbiamo visto un esempio pratico di come lo scheduler CFS possa attuare una distribuzione equa della risorsa CPU tra i vari cgroup. Infine, abbiamo realizzato un cgroup subsystem molto semplice (il noop-cgroup), sfruttando solamente la funzionalità di raggruppamento dei processi.

In questa seconda parte analizzeremo più in dettaglio l’aspetto di programmazione in kernel space, realizzando un cgroup subsystem un po’ più avanzato, interfacciandoci anche con un’altra parte del kernel: le system call.

[Leggi di più…] infoLinux kernel hacking: contenitori di processi/2

Archiviato in:Applicazioni & OS Contrassegnato con: cgroup, kernel, linux

Linux kernel hacking: contenitori di processi/1

14 Maggio 2009 A cura di Andrea Righi

Dalla versione 2.6.24, il kernel Linux mette a disposizione un framework denominato Control Groups (o cgroups) che permette di creare veri e propri contenitori di processi.

Ad ogni contenitore possono essere associate determinate configurazioni che permettono di definire ad esempio il tracciamento e/o il controllo sull’utilizzo di determinate risorse.

L’infrastruttura dei cgroup mette a disposizione solo le funzionalità di raggruppamento dei task, sono poi i vari cgroup subsystem che implementano le particolari politiche di controllo per ciascuna risorsa: come ad esempio la CPU, la banda di I/O, la memoria, i permessi di accesso a determinati device, eccetera.

[Leggi di più…] infoLinux kernel hacking: contenitori di processi/1

Archiviato in:Applicazioni & OS Contrassegnato con: c, cgroup, kernel, linux

Barra laterale primaria

Seguito da più di 16,000 programmatori

Idea Hai idee per un articolo? Contattami!

Leggi il mio libro

Technical Blogging: Amplify your influence

Printed | Ebook | Audiobook

Follow @stacktrace

Post recenti

  • Recensione di Amazon Books a Seattle
  • Il vero nemico degli artisti in rete
  • 10 consigli per interagire con il proprio geek di famiglia
  • Amazon lancia il Kindle italiano
  • IBM rilascia la versione 9.7.5 di DB2 Express-C

Commenti recenti

  • Leonardo su 10 consigli per interagire con il proprio geek di famiglia
  • Gilton su 10 consigli per interagire con il proprio geek di famiglia
  • Lorenzo su La fluidità del codice
  • Lorenzo su 10 consigli per interagire con il proprio geek di famiglia
  • Mr.Price su 10 consigli per interagire con il proprio geek di famiglia

Categorie

  • Applicazioni & OS (13)
  • Editoriali (11)
  • Gadget (7)
  • IT Business (25)
  • Legge & Privacy (8)
  • Libri (6)
  • Networking & Security (11)
  • Programmazione (104)
  • Siamo tutti geek (33)
  • Software Engineering (9)
  • Tlc & Internet (17)

Tag popolari

agile algoritmi amazon apple business c cisco conferenze django eventi extreme programming firefox framework geek google internet ironruby italia java libro linguaggi linux lisp matematica microsoft mozilla networking perl php Programmazione project euler pycon python rails rest rubinius ruby scheme startup vignetta visione web web2.0 windows xul

Hanno collaborato

  • Antonio Cangiano (RSS) (68)
  • Marco Beri (RSS) (23)
  • Michele Simionato (RSS) (22)
  • Alex Beri (RSS) (18)
  • Ludovico Magnocavallo (RSS) (12)
  • Valentino Volonghi (RSS) (9)
  • Marco Ceresa (RSS) (9)
  • Piergiuliano Bossi (RSS) (7)
  • Davide Ficano (RSS) (7)
  • Simone Dall'Angelo (RSS) (7)
  • Gabriele Renzi (RSS) (6)
  • Giovanni Intini (RSS) (6)
  • Daniele Varrazzo (RSS) (5)
  • Nicholas Wieland (RSS) (5)
  • Michele Finotto (RSS) (4)
  • Luigi Panzeri (RSS) (4)
  • Matteo Nodari (RSS) (3)
  • Lawrence Oluyede (RSS) (3)
  • Stefano Rodighiero (RSS) (3)
  • Andrea Righi (RSS) (3)
  • Roberto De Ioris (RSS) (2)
  • Alberto Revelli (RSS) (2)
  • Davide Casali (RSS) (2)
  • Franco Lombardo (RSS) (2)
  • Claudio Cicali (RSS) (2)
  • Carmine Noviello (RSS) (2)
  • Massimo Scamarcia (RSS) (1)
  • Marco De Paoli (RSS) (1)
  • Francesco Matarazzo (RSS) (1)
  • Emmanuele Somma (RSS) (1)
  • Nicola Larosa (RSS) (1)
  • Massimiliano Mirra (RSS) (1)
  • Lorenzo Bolognini (RSS) (1)

Disclaimer

Stacktrace.it partecipa al Programma Affiliazione Amazon EU, un programma di affiliazione che consente ai siti di percepire una commissione pubblicitaria pubblicizzando e fornendo link al sito Amazon.it (e altri siti Amazon di altri paesi). Forniamo inoltre link a siti non associati con Amazon, che ci permettono di percepire una commissione sulle vendite. Amazon e il logo Amazon sono marchi registrati di Amazon.com, Inc. o delle sue affiliate.

Copyright © 2007-2018 Antonio Cangiano