SlideShare uma empresa Scribd logo
1 de 18
workshop@NAHA Vol3
✤   linux kernel

✤




✤   linux

    ✤   Etnernet

    ✤   Wireless Access
linux kernel




                                  TTY



                        FS

                                        IF




       CPU     memory   DISC CD              NIC
linux kernel

✤




    ✤   •

✤




    ✤
               malloc free

✤




    ✤




✤




    ✤




✤




    ✤
✤   kernel

    ✤   malloc       free → kmalloc kfree

✤




    ✤                 PC

✤




    ✤   tty

        ✤     open    write   read

    ✤   NIC             kernel

✤




    ✤                                       kernel
kernel

static int flag = 0;   ✤   func_a() func_b()   func_c() kernel

int func_a(void) {        ✤   func_b()
     int ret = 0;

    if (flag) {            ✤   func_b()
         ret = 1;
    }                 ✤   func_a()
    if (flag) {
         ret = 2;
    }
    return ret;
}

void func_b(void) {
    flag = 1;
}



void func_c(void) {
    flag = 0;
}
USB

✤




    ✤




✤




    ✤




✤




    ✤




        ✤




        ✤   linux
USB


      tty         net_dev   storage
                                      USB




                                      USB


            USB
USB

✤   init    exit

    ✤




    ✤      probe disconnect

✤   probe disconnect

    ✤      USB

    ✤      PID•VID USB device class

    ✤                        kernel

✤                     USB

    ✤      tty     NIC etc

    ✤      control interrupt bulk
USB

insmod



                                  kernel




                            usb



           probe
         disconnect



                      usb




                                  USB

rmmod
kernel

✤   NIC

✤   ARP    IP
linux

✤




    ✤




    ✤   •

✤




✤




    ✤




    ✤




✤




    ✤




    ✤
probe
                                •xmit_func()
                                •MTU
                                •timeout
                                •etc
xmit_func()
    •
    •
              xmit_func()
netif_receive_skb()




                    netif_rx()




Ethernet   IP
PING linux

✤   ping            linux

    ✤   ping -i 0.5 -s 1500




✤
Ethernet Wireless Access

✤   Wireless Access
        ✤   WiFi Wimax LTE XGP

✤




    ✤   Ethernet

    ✤   Wireless Access

✤




    ✤   Ethernet   TCP

    ✤   Wireless Access   MAC

✤




    ✤   Wireless Access

    ✤
Ethernet

                  probe()   xmit()




        net_dev




  xmit() or                          netif_rx()
Wireless Access

                  probe()    xmit()




        net_dev




                            netif_rx()
  xmit() or

Mais conteúdo relacionado

Mais procurados

My talk about Tarantool and Lua at Percona Live 2016
My talk about Tarantool and Lua at Percona Live 2016My talk about Tarantool and Lua at Percona Live 2016
My talk about Tarantool and Lua at Percona Live 2016
Konstantin Osipov
 
ZeroMQ: Super Sockets - by J2 Labs
ZeroMQ: Super Sockets - by J2 LabsZeroMQ: Super Sockets - by J2 Labs
ZeroMQ: Super Sockets - by J2 Labs
James Dennis
 

Mais procurados (19)

Non-DIY* Logging
Non-DIY* LoggingNon-DIY* Logging
Non-DIY* Logging
 
A tale of two(many) proxies
A tale of two(many) proxiesA tale of two(many) proxies
A tale of two(many) proxies
 
Concurrency bug identification through kernel panic log (english)
Concurrency bug identification through kernel panic log (english)Concurrency bug identification through kernel panic log (english)
Concurrency bug identification through kernel panic log (english)
 
My talk about Tarantool and Lua at Percona Live 2016
My talk about Tarantool and Lua at Percona Live 2016My talk about Tarantool and Lua at Percona Live 2016
My talk about Tarantool and Lua at Percona Live 2016
 
Fun with FUSE
Fun with FUSEFun with FUSE
Fun with FUSE
 
ZeroMQ: Super Sockets - by J2 Labs
ZeroMQ: Super Sockets - by J2 LabsZeroMQ: Super Sockets - by J2 Labs
ZeroMQ: Super Sockets - by J2 Labs
 
Local incident response
Local incident responseLocal incident response
Local incident response
 
PHP at Density and Scale
PHP at Density and ScalePHP at Density and Scale
PHP at Density and Scale
 
Linux logging
Linux loggingLinux logging
Linux logging
 
Introduction to Ewasm - crosslink taipei 2019
Introduction to Ewasm - crosslink taipei 2019Introduction to Ewasm - crosslink taipei 2019
Introduction to Ewasm - crosslink taipei 2019
 
Introduction to ZeroMQ - eSpace TechTalk
Introduction to ZeroMQ - eSpace TechTalkIntroduction to ZeroMQ - eSpace TechTalk
Introduction to ZeroMQ - eSpace TechTalk
 
Event Driven with LibUV and ZeroMQ
Event Driven with LibUV and ZeroMQEvent Driven with LibUV and ZeroMQ
Event Driven with LibUV and ZeroMQ
 
Multicore
MulticoreMulticore
Multicore
 
Userfaultfd: Current Features, Limitations and Future Development
Userfaultfd: Current Features, Limitations and Future DevelopmentUserfaultfd: Current Features, Limitations and Future Development
Userfaultfd: Current Features, Limitations and Future Development
 
NPM
NPMNPM
NPM
 
JS knowing-nuances
JS knowing-nuancesJS knowing-nuances
JS knowing-nuances
 
20170127 tokyoserversideswiftmeetup資料
20170127 tokyoserversideswiftmeetup資料20170127 tokyoserversideswiftmeetup資料
20170127 tokyoserversideswiftmeetup資料
 
Network Sniffing
Network SniffingNetwork Sniffing
Network Sniffing
 
Unicorn: The Ultimate CPU Emulator by Akshay Ajayan
Unicorn: The Ultimate CPU Emulator by Akshay AjayanUnicorn: The Ultimate CPU Emulator by Akshay Ajayan
Unicorn: The Ultimate CPU Emulator by Akshay Ajayan
 

Destaque

2012 02-11 明仙-談莊子如何避開情緒的干擾
2012 02-11 明仙-談莊子如何避開情緒的干擾2012 02-11 明仙-談莊子如何避開情緒的干擾
2012 02-11 明仙-談莊子如何避開情緒的干擾
yangmarissa
 
Estadísticas julio 2012
Estadísticas julio 2012Estadísticas julio 2012
Estadísticas julio 2012
Dominios.es
 
13 tipos de_memoria
13 tipos de_memoria13 tipos de_memoria
13 tipos de_memoria
scream777
 
trww_swsta
trww_swstatrww_swsta
trww_swsta
gvlachos
 
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelliU_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
donimaciel
 
柏市における長寿社会のまちづくり
柏市における長寿社会のまちづくり柏市における長寿社会のまちづくり
柏市における長寿社会のまちづくり
platinumhandbook
 

Destaque (8)

2012 02-11 明仙-談莊子如何避開情緒的干擾
2012 02-11 明仙-談莊子如何避開情緒的干擾2012 02-11 明仙-談莊子如何避開情緒的干擾
2012 02-11 明仙-談莊子如何避開情緒的干擾
 
podilasia
podilasiapodilasia
podilasia
 
Estadísticas julio 2012
Estadísticas julio 2012Estadísticas julio 2012
Estadísticas julio 2012
 
13 tipos de_memoria
13 tipos de_memoria13 tipos de_memoria
13 tipos de_memoria
 
trww_swsta
trww_swstatrww_swsta
trww_swsta
 
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelliU_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
U_AMB - Fotógrafo Ambiental Nacional - Pedro martinelli
 
柏市における長寿社会のまちづくり
柏市における長寿社会のまちづくり柏市における長寿社会のまちづくり
柏市における長寿社会のまちづくり
 
Ojag20120811
Ojag20120811Ojag20120811
Ojag20120811
 

Semelhante a Workshop@naha val3

イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
Takuya ASADA
 
オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)
Ryousei Takano
 
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
Area41
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Docker, Inc.
 
You didnt see it’s coming? "Dawn of hardened Windows Kernel"
You didnt see it’s coming? "Dawn of hardened Windows Kernel" You didnt see it’s coming? "Dawn of hardened Windows Kernel"
You didnt see it’s coming? "Dawn of hardened Windows Kernel"
Peter Hlavaty
 
Efficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode DetectionEfficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode Detection
Georg Wicherski
 
JavaOne 2012 - JVM JIT for Dummies
JavaOne 2012 - JVM JIT for DummiesJavaOne 2012 - JVM JIT for Dummies
JavaOne 2012 - JVM JIT for Dummies
Charles Nutter
 

Semelhante a Workshop@naha val3 (20)

SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]
 
Linux Kernel Platform Development: Challenges and Insights
 Linux Kernel Platform Development: Challenges and Insights Linux Kernel Platform Development: Challenges and Insights
Linux Kernel Platform Development: Challenges and Insights
 
イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
 
オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)
 
Work items
Work itemsWork items
Work items
 
Work items
Work itemsWork items
Work items
 
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
hashdays 2011: Ange Albertini - Such a weird processor - messing with x86 opc...
 
Micro control idsecconf2010
Micro control idsecconf2010Micro control idsecconf2010
Micro control idsecconf2010
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?
 
Linux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloudLinux kernel tracing superpowers in the cloud
Linux kernel tracing superpowers in the cloud
 
NSC #2 - Challenge Solution
NSC #2 - Challenge SolutionNSC #2 - Challenge Solution
NSC #2 - Challenge Solution
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
 
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo..."Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
 
You didnt see it’s coming? "Dawn of hardened Windows Kernel"
You didnt see it’s coming? "Dawn of hardened Windows Kernel" You didnt see it’s coming? "Dawn of hardened Windows Kernel"
You didnt see it’s coming? "Dawn of hardened Windows Kernel"
 
Efficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode DetectionEfficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode Detection
 
Porting Android
Porting AndroidPorting Android
Porting Android
 
Address/Thread/Memory Sanitizer
Address/Thread/Memory SanitizerAddress/Thread/Memory Sanitizer
Address/Thread/Memory Sanitizer
 
Twisted
TwistedTwisted
Twisted
 
JavaOne 2012 - JVM JIT for Dummies
JavaOne 2012 - JVM JIT for DummiesJavaOne 2012 - JVM JIT for Dummies
JavaOne 2012 - JVM JIT for Dummies
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Workshop@naha val3

  • 2. linux kernel ✤ ✤ linux ✤ Etnernet ✤ Wireless Access
  • 3. linux kernel TTY FS IF CPU memory DISC CD NIC
  • 4. linux kernel ✤ ✤ • ✤ ✤ malloc free ✤ ✤ ✤ ✤ ✤ ✤
  • 5. kernel ✤ malloc free → kmalloc kfree ✤ ✤ PC ✤ ✤ tty ✤ open write read ✤ NIC kernel ✤ ✤ kernel
  • 6. kernel static int flag = 0; ✤ func_a() func_b() func_c() kernel int func_a(void) { ✤ func_b() int ret = 0; if (flag) { ✤ func_b() ret = 1; } ✤ func_a() if (flag) { ret = 2; } return ret; } void func_b(void) { flag = 1; } void func_c(void) { flag = 0; }
  • 7. USB ✤ ✤ ✤ ✤ ✤ ✤ ✤ ✤ linux
  • 8. USB tty net_dev storage USB USB USB
  • 9. USB ✤ init exit ✤ ✤ probe disconnect ✤ probe disconnect ✤ USB ✤ PID•VID USB device class ✤ kernel ✤ USB ✤ tty NIC etc ✤ control interrupt bulk
  • 10. USB insmod kernel usb probe disconnect usb USB rmmod
  • 11. kernel ✤ NIC ✤ ARP IP
  • 12. linux ✤ ✤ ✤ • ✤ ✤ ✤ ✤ ✤ ✤ ✤
  • 13. probe •xmit_func() •MTU •timeout •etc xmit_func() • • xmit_func()
  • 14. netif_receive_skb() netif_rx() Ethernet IP
  • 15. PING linux ✤ ping linux ✤ ping -i 0.5 -s 1500 ✤
  • 16. Ethernet Wireless Access ✤ Wireless Access ✤ WiFi Wimax LTE XGP ✤ ✤ Ethernet ✤ Wireless Access ✤ ✤ Ethernet TCP ✤ Wireless Access MAC ✤ ✤ Wireless Access ✤
  • 17. Ethernet probe() xmit() net_dev xmit() or netif_rx()
  • 18. Wireless Access probe() xmit() net_dev netif_rx() xmit() or

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n