SlideShare una empresa de 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                          kernel




                            netif_rx()
  xmit() or

Más contenido relacionado

La actualidad más candente

HTTPプロクシライブラリproxy2の設計と実装
HTTPプロクシライブラリproxy2の設計と実装HTTPプロクシライブラリproxy2の設計と実装
HTTPプロクシライブラリproxy2の設計と実装
inaz2
 

La actualidad más candente (20)

BKK16-304 The State of GDB on AArch64
BKK16-304 The State of GDB on AArch64BKK16-304 The State of GDB on AArch64
BKK16-304 The State of GDB on AArch64
 
Skydive 5/07/2016
Skydive 5/07/2016Skydive 5/07/2016
Skydive 5/07/2016
 
Installation of ns2
Installation of ns2Installation of ns2
Installation of ns2
 
tokyotalk
tokyotalktokyotalk
tokyotalk
 
Skydive 31 janv. 2016
Skydive 31 janv. 2016Skydive 31 janv. 2016
Skydive 31 janv. 2016
 
Barcamp presentation
Barcamp presentationBarcamp presentation
Barcamp presentation
 
Zeromq anatomy & jeromq
Zeromq anatomy & jeromqZeromq anatomy & jeromq
Zeromq anatomy & jeromq
 
Enduro/X Middleware
Enduro/X MiddlewareEnduro/X Middleware
Enduro/X Middleware
 
Introduction to IoT.JS
Introduction to IoT.JSIntroduction to IoT.JS
Introduction to IoT.JS
 
LMAX Disruptor as real-life example
LMAX Disruptor as real-life exampleLMAX Disruptor as real-life example
LMAX Disruptor as real-life example
 
Lisa14
Lisa14Lisa14
Lisa14
 
MazuV-Debug-System
MazuV-Debug-SystemMazuV-Debug-System
MazuV-Debug-System
 
Cassandra Summit 2014: Drivers: Let Our Powers Combine!
Cassandra Summit 2014: Drivers: Let Our Powers Combine!Cassandra Summit 2014: Drivers: Let Our Powers Combine!
Cassandra Summit 2014: Drivers: Let Our Powers Combine!
 
pkgsrc 2010 - the record of the past year
pkgsrc 2010 - the record of the past yearpkgsrc 2010 - the record of the past year
pkgsrc 2010 - the record of the past year
 
Introduction to .NET
Introduction to .NETIntroduction to .NET
Introduction to .NET
 
Deploy STM32 family on Zephyr - SFO17-102
Deploy STM32 family on Zephyr - SFO17-102Deploy STM32 family on Zephyr - SFO17-102
Deploy STM32 family on Zephyr - SFO17-102
 
BUD17-TR02: Upstreaming 101
BUD17-TR02: Upstreaming 101 BUD17-TR02: Upstreaming 101
BUD17-TR02: Upstreaming 101
 
Syslog Protocols
Syslog ProtocolsSyslog Protocols
Syslog Protocols
 
Restinio (actual aug 2018)
Restinio (actual aug 2018)Restinio (actual aug 2018)
Restinio (actual aug 2018)
 
HTTPプロクシライブラリproxy2の設計と実装
HTTPプロクシライブラリproxy2の設計と実装HTTPプロクシライブラリproxy2の設計と実装
HTTPプロクシライブラリproxy2の設計と実装
 

Similar a Workshop@naha_val3

イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
Takuya ASADA
 
オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)
Ryousei Takano
 
Travis Goodspeed - Not Quite ZigBee
Travis Goodspeed - Not Quite ZigBeeTravis Goodspeed - Not Quite ZigBee
Travis Goodspeed - Not Quite ZigBee
Source Conference
 
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
 
110864103 adventures-in-bug-hunting
110864103 adventures-in-bug-hunting110864103 adventures-in-bug-hunting
110864103 adventures-in-bug-hunting
bob dobbs
 
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
 
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
 
BlackHat 2009 - Hacking Zigbee Chips (slides)
BlackHat 2009 - Hacking Zigbee Chips (slides)BlackHat 2009 - Hacking Zigbee Chips (slides)
BlackHat 2009 - Hacking Zigbee Chips (slides)
Michael Smith
 

Similar a Workshop@naha_val3 (20)

イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
 
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]
 
オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)オペレーティングシステム 設計と実装 第3版(20101211)
オペレーティングシステム 設計と実装 第3版(20101211)
 
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
 
Porting Android
Porting AndroidPorting Android
Porting Android
 
Travis Goodspeed - Not Quite ZigBee
Travis Goodspeed - Not Quite ZigBeeTravis Goodspeed - Not Quite ZigBee
Travis Goodspeed - Not Quite ZigBee
 
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?
 
Micro control idsecconf2010
Micro control idsecconf2010Micro control idsecconf2010
Micro control idsecconf2010
 
Twisted
TwistedTwisted
Twisted
 
Efficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode DetectionEfficient Bytecode Analysis: Linespeed Shellcode Detection
Efficient Bytecode Analysis: Linespeed Shellcode Detection
 
Work items
Work itemsWork items
Work items
 
Work items
Work itemsWork items
Work items
 
110864103 adventures-in-bug-hunting
110864103 adventures-in-bug-hunting110864103 adventures-in-bug-hunting
110864103 adventures-in-bug-hunting
 
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...
 
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"
 
Porting Android
Porting AndroidPorting Android
Porting Android
 
Porting Android ABS 2011
Porting Android ABS 2011Porting Android ABS 2011
Porting Android ABS 2011
 
BlackHat 2009 - Hacking Zigbee Chips (slides)
BlackHat 2009 - Hacking Zigbee Chips (slides)BlackHat 2009 - Hacking Zigbee Chips (slides)
BlackHat 2009 - Hacking Zigbee Chips (slides)
 
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
 
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
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

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 kernel netif_rx() xmit() or

Notas del 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