interactive linux kernel map

16
Interactive Linux kernel map Functions layers Virtual subsystems Trans formations Fuctional system ke meI_restart ke rnelpowe r_off initjmain.c subsystems devices control include/as m/ a rch/i 386/ drivers/ request_region ioremap system files /proc /sysfs /dev sys mit_module usb_submit_L u sb_h cd a d

Upload: junior-torres

Post on 12-Apr-2015

40 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Interactive Linux Kernel Map

Interactive Linux kernel map

Functions layers

Virtual subsystems

Trans formations

Fuctional systemke meI_restart

ke rnelpowe r_off

initjmain.c

subsystems

devices

control

include/as m/

a rch/i 386/

drivers/

request_region

ioremap

system files

/proc /sysfs /dev

sys mit_module

usb_submit_L

u sb_h cd

a

d

riv..

1

hc Lurberee

Page 2: Interactive Linux Kernel Map

networking

:ocol famil es Vii

_sockcreat socket

inet_fam

met_create unix_farriily_ops

r—-;;0_05

storage

nfs_file_operations

smb_f s_type

cifs_file_ops

iscsLtc p_tra ns port

otocols

/proc/net/prot ois

tc p_p rot

ip_rcv

ip_que ue_x mit

ip_forward

virt al

network device

net_device

netif_ rx

dev_queue_xmit

alloc_etherdev alloc_ieee8O2ll

meee8O2 1 1_rx

ieee8O2 1 1_xmit

network

Page 3: Interactive Linux Kernel Map

iices

dri

ipw2 100_open

storage

access

address_space

Logcal J

F9e Systems

ext3_fii eoperations

ext3_get_sb

pdf tush

Swap

kswapd

Block devices

block/ ____._. gendisk

blockdeviceoperations request_queue

mit scsi

scsi_device

scsi_driver

usb_sto rage_d river

disk

idedis k_ops

ide_i ntr

ide_do_request

do_swap_page

Page 4: Interactive Linux Kernel Map

memory

et_fre e_p a g es

_alloc_pages —

Memory

Mapping

dommap_pgoff

vm_a rea_struct

4

processing

p roc esses

threads

kerneLthread —

show_regs trapj nit

kbd

mousedev _fops

Hp

dv ce dri

vga_con

atkbd

p sm o u se

system interfaces

li nux/syscal ls.h

asm-i 386/uaccess.h

user space copy from user

interfaces

cdev_map

Page 5: Interactive Linux Kernel Map

sys_re boot

sockets access

netj f5! mm/ kernel/

files & directories

sys_socketcall

sys_socket sys_open

socket_fil e_ops sys_write

ual

vi s_read

vi s_write

sys_sy nc

prol

do_path_looku p

sys_mo unt

memory access

sy s_brk sys_execve

sys_mmap2 /proc/self/maps

human

interface

Hl char devices

kmsg

cdev

fs/execc

inod

fi le

Virtual

Page 6: Interactive Linux Kernel Map

class_device

file_operatlon5

C lass_device_create

vis_c reate

s_nanosleep

et_dgram_ops inet_stream_o,

]—-r networki ng

ory

memory

device driver

fi lesystemty pe

get sb

_ ‚ super

/dev/inputImice

std i n

stdout

input

d rivers/ba sel

Device

ModTt

sbsystern register

) subsystem

class \

. \

device bus_type

\ cevic e_acate

Page 7: Interactive Linux Kernel Map

drverregi ster

III5

pcL driver

vm_struct

Page ache

do_sync

initl

ke,

functional

,

Prj

start_kernel

/dev/snd/. ..

-.-...- /dev/dsp

/dev/vido

sys_syslog

printk

udp_prot

do_initcalls run_init_

sys_fo rk

sys_vfork

sys_clo ne

do_fork

semaphore

msleep

Page 8: Interactive Linux Kernel Map

. workstr t

t w it_queue_head_t

workque e_struct

mni_struct

/proc/slabinfo kernel/4ed.c

ry che4uler

schedule_t,meout

+ \ schedule

setup timer\ task struct

process_timeout

, c: ntext switch

activate_task

current ,__ thread_info rq

buddyinfo .

or interrupt con ex

timer_list

timeuta5kletru

_ \do_soft!rq

do_1RQ — irq_desc

interru Pt

logical

physically

usb_driver

kmalloc

request_mem_rei on

kme m_cac he

Page 9: Interactive Linux Kernel Map

si ab

. HI subsystei

rb

device

and bu

ms

ailoc.c

ether_setup

tty

hardware

interfaces

s

s

däv

/proc4

Allocal

log_buf

¡aV

drivers/net

ehci_irq

videodev nit

. alsa

055 sound)

sd_fops

nde

ead

Page 10: Interactive Linux Kernel Map

vrite

o utw

mw

write w

readw

usb_hcd_irq

pers

elOO_open

riv

a

elOO_open

controllers

pgdati ist

t

arch/i’

ices

rtl8139_open

Scsi_Host

:1-Il

de

nd

sdi

rs

a

Ia

c

Page 11: Interactive Linux Kernel Map

zd 1 2 0 1_net_o pen

aic94xx_i nit

sical memory

SATA

‘ivers

oprations

onsole_fops

console

do_page_fault

/proc/interrupts

en

system_call

‚‚

switch_to

pherals

pt_regs

‘ffìput/

Cli

sti

:97_d river

(cc) (nc) 2007 Constantine Shuiyupin, www.iinuxdriver.co.ii/kernei_map, kernei_map@iinuxdriver,co,ii

VerO.3, 7/21/07

Page 12: Interactive Linux Kernel Map
Page 13: Interactive Linux Kernel Map
Page 14: Interactive Linux Kernel Map

MAPA INTERACTIVO DEL KERNEL DE LINUX

Funciones de las capas

Sistema

INTERFACES DE SISTEMAS

INTERFACES DE ESPACIO DE

USUARIO

REDES ALMACENAMIENTO MEMORIA PROCESAMIENTO INTERFAZ HUMANA

PROCESOSACCESO A MEMORIAACCESOS A DIRECTORIOS Y ARCHIVOS

HI CHAR DISPOSITIVOS

MEMORIA VIRTUALMEMORIA VIRTUAL CONTINUA

Sistema de archivos virtual

ACCESO A ZOCALOS

SUBSITEMAS VIRTUALES

REDESFAMILIAS DE PROTOCOLO HILOS

MAPEO DE MEMORIA

Intercambio

Página de cacheRede de

almacenamientoTransfor-maciones

Subsistemas funcionales

Control de dispositivos

Interfaces de hardware

ElectrónicosE/S Controladores de red Controladores de disco Memoria Periféricos de usuario

Ejecución del sistema Protocolos Sistema de archivo lógico Memoria lógica

Acceso genérico a HW Dispositivo de red virtualDispositivos de bloque

bloquelSistema de archivo Asignador de páginas

controladores de acceso y dispositivos de bus

Controladores de dispositivos de red

Controladores de disco Operaciones de memoria fisica

Planificador HI subsistemas

Interrumpir contexto dispositivos abstractos y conductores de clase HID

Especificación de CPU Controladores de dispositivos periféricos HI