SlideShare a Scribd company logo
1 of 30
Download to read offline
HelenOS: State of
                the Union 2012
http://d3s.mff.cuni.cz


                                         Martin Děcký
                                       decky@d3s.mff.cuni.cz




  CHARLES UNIVERSITY IN PRAGUE
 faculty of mathematics and physics
  faculty of mathematics and physics
What's New?
                                               th
             Since October 11 2011
                    384 days (1.05 years) ago
                    Latest release 0.5.0 (Fajtl)
                           August 9th 2012
                           The biggest release ever (15 months of development)
                    On track to 0.5.1
                           Minor release, but important improvements planned
                           Expected in Q2 2013



Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   2
What's New in 0.5.0?

            Hardware support resurrection
                   IA-64 (on real hardware, non-SMP only)
                   PowerPC
            Kernel memory management improvements
                   Memory reservations
                          Prevents memory overcommitting if not desired
                   Kernel non-identity mapping support
                          Support for accessing any physical memory from the kernel




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012       3
What's New in 0.5.0? (2)

             Integration of various development branches
                    USB support
                           UHCI, OHCI (USB 1.1)
                           USB HID, USB Mass Storage
                    Networking improvements
                           Intel PRO/1000 (E1000) device driver
                           Realtek RTL8139 device driver
                           NIC driver framework
                           Rewritten TCP/IP stack


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   4
What's New in 0.5.0? (3)

             Integration of various development branches
                    File systems
                           Read-only ext2 driver
                           Read-only ISO 9660 driver
                           Read/write support for FAT12, FAT16, FAT32 and exFAT
                                  Including LFN extension
                           Read/write support for MINIX FS
                                  Migration path from MINIX 3 :-)




Martin Děcký, D3S Seminar, October 30th 2012    HelenOS: State of the Union 2012   5
What's New in 0.5.0? (4)

             Infrastructure improvements
                    Location service
                           Improved replacement for the Device mapper
                           Service names (instances)
                           Service categories (classes)
                    Towards self-hosting
                           Assembler and linker via GNU Binutils
                           C compiler via PCC
                           Virtual machine via MSIM


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   6
What's New in 0.5.0? (5)

            Miscellaneous and experimental
                  SATA (AHCI) support
                  Anticipated device removal
                  Multiple file system driver instances
                  Web server can actually serve files from file system
                  Remote network console
                  Dynamic linking production-grade on IA-32
                  GRUB 2 as preferred boot loader (on IA-32 and AMD64)




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   7
What's New Since the Release?

             Graphical User Interface
                    Graphics drivers as 1st class DDF citizens
                           Proposal for hardware acceleration API
                    Display compositor
                    GUI widgets library
             File systems
                    Read/write ext4 driver
                    Partial read/write UDF driver

Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   8
What's New Since the Release? (2)

            Structured binary data manipulation
                   Bithenge framework
            IPC improvements
                   Avoiding bookkeeping of unimportant messages
            Scalable concurrent hash table
                   User space part merged so far
            Real time clock driver
                   CMOS based (IA-32)


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   9
What's New Since the Release? (3)




                                               Demo

Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   10
History 2005 – 2012
           7000



           6000



           5000



           4000
 Commits




           3000



           2000



           1000



             0
                 2005-06 2005-12 2006-06 2006-12 2007-06 2007-12 2008-06 2008-12 2009-06 2009-12 2010-06 2010-12 2011-06 2011-12 2012-06
             2005-03 2005-09 2006-03 2006-09 2007-03 2007-09 2008-03 2008-09 2009-03 2009-09 2010-03 2010-09 2011-03 2011-09 2012-03 2012-09

                                                                          Date




Martin Děcký, D3S Seminar, October 30th 2012                 HelenOS: State of the Union 2012                                                  11
History 2005 – 2012 (2)
        350000



        300000



        250000



        200000
 SLOC




        150000



        100000



        50000



             0
                2005-06 2005-12 2006-06 2006-12 2007-06 2007-12 2008-06 2008-12 2009-06 2009-12 2010-06 2010-12 2011-06 2011-12 2012-06
            2005-03 2005-09 2006-03 2006-09 2007-03 2007-09 2008-03 2008-09 2009-03 2009-09 2010-03 2010-09 2011-03 2011-09 2012-03 2012-09

                                                                       Date




Martin Děcký, D3S Seminar, October 30th 2012              HelenOS: State of the Union 2012                                                    12
What's Cooking

             IPC interfaces and ports
                    Replacement for duck typing and “mixins”
                           Stronger run-time type checking
                    Connection to ports mediated by naming services
             Read-copy-update
                    Two parallel efforts (AP-RCU, A-RCU)
                    Scalable concurrent data structures (hash table)



Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   13
What's Cooking (2)

             Go support
             FUSE support
             VFS 2.0
                    Capability-based private file system namespaces
             BeagleBoard, Raspberry Pi
             Audio stack
                    Low-level drivers and a sound server


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   14
What's Cooking (3)

             Xen revival
                    HelenOS running as a Xen domain
                    HelenOS acting as Xen hypervisor
             System services manager and logger
                    Think of cgroups, systemd and journald
             HelenOS installer




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   15
What's Cooking (4)

            Self-hosting
                   Port of GCC
                   Port of Python
                   Python-based build infrastructure (waf)
            Continuous integration and testing
                   Based on Hudson (but with a twist)
            Networking features
                   DNS, DHCP, etc.


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   16
Social Agenda

            FOSDEM 2012
                   February 4th – 5th 2012, Brussels, Belgium
                   Université libre de Bruxelles
                   Jakub Jermář chaired the Microkernel OS Devroom
                         Participation of HelenOS, Genode Labs, NOVA, MINIX, Hurd
            FOSDEM 2013
                   February 2nd – 3rd 2013, Brussels, Belgium
                   Genode Labs is about to chair the Microkernel and
                   Component-based OS Devroom


Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012     17
FOSDEM 2012




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   18
FOSDEM 2012 (2)




                                               Photos

Martin Děcký, D3S Seminar, October 30th 2012    HelenOS: State of the Union 2012   19
Google Summer of Code 2012
         4th attempt, 2nd successful (in a row)
             http://helenos.org/gsoc2012
                17 student proposals
             Vivek Prakash: Port GNU Compiler Collection (GCC) to HelenOS
                Indian Institute of Technology Roorkee, India
                Mentored by Jiří Svoboda
             Sean Bartell: Structured binary data tools
                North Carolina State University at Raleigh, USA
                Mentored by Vojtěch Horký
             Adam Hraška: Resizeable, scalable, concurrent hash table
                Charles University in Prague, Czech Republic
                Mentored by Jakub Jermář
             Julia G. Medvedeva: UDF file system server
                Volgograd State Technical University, Russia
                Mentored by Martin Děcký
             Tobias Börtitz: HelenOS as a Genode platform
                Dresden University of Applied Sciences, Germany
                Mentored by Stefan Kalkowski




Martin Děcký, D3S Seminar, October 30th 2012               HelenOS: State of the Union 2012   20
GSoC Mentor Summit 2012

             Unconference
                    October 20th – 21st 2012
                    Googleplex, Mountain View, California
                    Attended by Vojtěch Horký and Jakub Jermář
                    Minority OS minisummit




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   21
GSoC Mentor Summit 2012 (2)




       Photo by Robin Smidsrød
Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   22
GSoC Mentor Summit 2012 (3)




       Photo by Robin Smidsrød
Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   23
Bithenge

            Aim
                  Extensible declarative way to describe binary formats
                         Binary files (ELF headers, DWARF debugging information), on-
                         disk file system structures, network packets
            Components
                  Declarative DSL for describing binary formats
                  API for accessing data based on the DSL
                  User front-ends (editors)




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012         24
Bithenge (2)
  transform u8 = uint8;
  transform u16 = uint16le;
  transform u32 = uint32le;

  transform fat_attributes = struct {
      .read_only <- bit;
      .hidden <- bit;
      .system <- bit;
      .volume_label <- bit;
      .subdirectory <- bit;
      .archive <- bit;
      .device <- bit;
      .reserved <- bit;
  } <- bits_le <- known_length(1);




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   25
Bithenge (3)
  transform file_data(data, bits, fat, cluster_size, start) = (in.data) <- struct {
      .cluster <- (data[(start-2)*cluster_size, cluster_size]);
      .last_cluster_number <- switch (bits) {
          12: (488);       # 0x00000ff8
          16: (65528);     # 0x0000fff8
          32: (268435448); # 0x0ffffff8
      };
      .next <- (fat[start]);
      if (.next == 0 || .next >= .last_cluster_number) {
          .data <- (.cluster);
      } else {
          .rest <- file_data(data, bits, fat, cluster_size, .next) <- known_length(0);
          .data <- (.cluster ++ .rest);
      }
  };




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012          26
Possible Application of HelenOS

             Cooperation with CZ.NIC Labs
                    IPv6 support in HelenOS
                    BIRD routing daemon for HelenOS
                           http://bird.network.cz/
                    Knot DNS server for HelenOS
                           http://www.knot-dns.cz/




Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   27
HelenOS PhD Thesis


                                                 Architecture and
                                               behavior specification

                          Semantic information                                         Extra-functional
                             in source code                                               properties

                                                               Architecture
                                                                 models




               Work in Progress
Martin Děcký, D3S Seminar, October 30th 2012        HelenOS: State of the Union 2012                      28
Q&A
     www.helenos.org

Martin Děcký, D3S Seminar, October 30th 2012   HelenOS: State of the Union 2012   29
HelenOS: State of the Union 2012

More Related Content

Similar to HelenOS: State of the Union 2012

XLcloud: Remote rendering for games and 3D graphics applications in the cloud...
XLcloud: Remote rendering for games and 3D graphics applications in the cloud...XLcloud: Remote rendering for games and 3D graphics applications in the cloud...
XLcloud: Remote rendering for games and 3D graphics applications in the cloud...xlcloud
 
Multimedia Content Understanding: Bringing Context to Content
Multimedia Content Understanding: Bringing Context to ContentMultimedia Content Understanding: Bringing Context to Content
Multimedia Content Understanding: Bringing Context to ContentBenoit HUET
 
OpenComRTOS 1.4_tutorial_3o4_presentation
OpenComRTOS 1.4_tutorial_3o4_presentationOpenComRTOS 1.4_tutorial_3o4_presentation
OpenComRTOS 1.4_tutorial_3o4_presentationEric Verhulst
 
Budapest Odf 20110627
Budapest Odf 20110627Budapest Odf 20110627
Budapest Odf 20110627Bart Hanssens
 
Sustainable operability: Keeping complex linguistic resources alive.
Sustainable operability: Keeping complex linguistic resources alive.Sustainable operability: Keeping complex linguistic resources alive.
Sustainable operability: Keeping complex linguistic resources alive.Menzo Windhouwer
 
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...locloud
 
Raphaël troncy
Raphaël troncyRaphaël troncy
Raphaël troncyIRI
 
Highlights WeWebU OpenWorkdesk 3.0
Highlights WeWebU OpenWorkdesk 3.0Highlights WeWebU OpenWorkdesk 3.0
Highlights WeWebU OpenWorkdesk 3.0WeWebU Software AG
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGeoSolutions
 
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011camp_drupal_ua
 
SDN the network becomes the application
SDN the network becomes the applicationSDN the network becomes the application
SDN the network becomes the applicationEduardo_Jacob
 

Similar to HelenOS: State of the Union 2012 (20)

XLcloud: Remote rendering for games and 3D graphics applications in the cloud...
XLcloud: Remote rendering for games and 3D graphics applications in the cloud...XLcloud: Remote rendering for games and 3D graphics applications in the cloud...
XLcloud: Remote rendering for games and 3D graphics applications in the cloud...
 
Multimedia Content Understanding: Bringing Context to Content
Multimedia Content Understanding: Bringing Context to ContentMultimedia Content Understanding: Bringing Context to Content
Multimedia Content Understanding: Bringing Context to Content
 
Status of HDF-EOS, Related Software, and Tools
Status of HDF-EOS, Related Software, and ToolsStatus of HDF-EOS, Related Software, and Tools
Status of HDF-EOS, Related Software, and Tools
 
2011 institute jan_tech
2011 institute jan_tech2011 institute jan_tech
2011 institute jan_tech
 
2011 institute jan_tech
2011 institute jan_tech2011 institute jan_tech
2011 institute jan_tech
 
Tech WG report 2011
Tech WG report 2011Tech WG report 2011
Tech WG report 2011
 
OpenComRTOS 1.4_tutorial_3o4_presentation
OpenComRTOS 1.4_tutorial_3o4_presentationOpenComRTOS 1.4_tutorial_3o4_presentation
OpenComRTOS 1.4_tutorial_3o4_presentation
 
Budapest Odf 20110627
Budapest Odf 20110627Budapest Odf 20110627
Budapest Odf 20110627
 
Liu presentation
Liu presentationLiu presentation
Liu presentation
 
Sustainable operability: Keeping complex linguistic resources alive.
Sustainable operability: Keeping complex linguistic resources alive.Sustainable operability: Keeping complex linguistic resources alive.
Sustainable operability: Keeping complex linguistic resources alive.
 
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...
LoCloud - D2.1: Core Infrastructure Specifications (including Business Proces...
 
Raphaël troncy
Raphaël troncyRaphaël troncy
Raphaël troncy
 
EF Core (RC2)
EF Core (RC2)EF Core (RC2)
EF Core (RC2)
 
Highlights WeWebU OpenWorkdesk 3.0
Highlights WeWebU OpenWorkdesk 3.0Highlights WeWebU OpenWorkdesk 3.0
Highlights WeWebU OpenWorkdesk 3.0
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork Presentation
 
HDFView With an HDF-EOS Plug-in
HDFView With an HDF-EOS Plug-inHDFView With an HDF-EOS Plug-in
HDFView With an HDF-EOS Plug-in
 
Entity Framework
Entity FrameworkEntity Framework
Entity Framework
 
CDF Embraces XML and SOAP
CDF Embraces XML and SOAPCDF Embraces XML and SOAP
CDF Embraces XML and SOAP
 
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011
Dennis Povshedny.Mediamosa intro.DrupalCamp Kyiv 2011
 
SDN the network becomes the application
SDN the network becomes the applicationSDN the network becomes the application
SDN the network becomes the application
 

More from Martin Děcký

Hardware/Software Co-Design for Efficient Microkernel Execution
Hardware/Software Co-Design for Efficient Microkernel ExecutionHardware/Software Co-Design for Efficient Microkernel Execution
Hardware/Software Co-Design for Efficient Microkernel ExecutionMartin Děcký
 
Lessons Learned from Porting HelenOS to RISC-V
Lessons Learned from Porting HelenOS to RISC-VLessons Learned from Porting HelenOS to RISC-V
Lessons Learned from Porting HelenOS to RISC-VMartin Děcký
 
Microkernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMicrokernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMartin Děcký
 
Formal Verification of Functional Code
Formal Verification of Functional CodeFormal Verification of Functional Code
Formal Verification of Functional CodeMartin Děcký
 
IPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, CapabilitiesIPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, CapabilitiesMartin Děcký
 
Unikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based KernelsUnikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based KernelsMartin Děcký
 
Code Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingCode Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingMartin Děcký
 

More from Martin Děcký (7)

Hardware/Software Co-Design for Efficient Microkernel Execution
Hardware/Software Co-Design for Efficient Microkernel ExecutionHardware/Software Co-Design for Efficient Microkernel Execution
Hardware/Software Co-Design for Efficient Microkernel Execution
 
Lessons Learned from Porting HelenOS to RISC-V
Lessons Learned from Porting HelenOS to RISC-VLessons Learned from Porting HelenOS to RISC-V
Lessons Learned from Porting HelenOS to RISC-V
 
Microkernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMicrokernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric Computing
 
Formal Verification of Functional Code
Formal Verification of Functional CodeFormal Verification of Functional Code
Formal Verification of Functional Code
 
IPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, CapabilitiesIPC in Microkernel Systems, Capabilities
IPC in Microkernel Systems, Capabilities
 
Unikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based KernelsUnikernels, Multikernels, Virtual Machine-based Kernels
Unikernels, Multikernels, Virtual Machine-based Kernels
 
Code Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic TracingCode Instrumentation, Dynamic Tracing
Code Instrumentation, Dynamic Tracing
 

Recently uploaded

(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 

Recently uploaded (20)

(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 

HelenOS: State of the Union 2012

  • 1. HelenOS: State of the Union 2012 http://d3s.mff.cuni.cz Martin Děcký decky@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics faculty of mathematics and physics
  • 2. What's New? th Since October 11 2011 384 days (1.05 years) ago Latest release 0.5.0 (Fajtl) August 9th 2012 The biggest release ever (15 months of development) On track to 0.5.1 Minor release, but important improvements planned Expected in Q2 2013 Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 2
  • 3. What's New in 0.5.0? Hardware support resurrection IA-64 (on real hardware, non-SMP only) PowerPC Kernel memory management improvements Memory reservations Prevents memory overcommitting if not desired Kernel non-identity mapping support Support for accessing any physical memory from the kernel Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 3
  • 4. What's New in 0.5.0? (2) Integration of various development branches USB support UHCI, OHCI (USB 1.1) USB HID, USB Mass Storage Networking improvements Intel PRO/1000 (E1000) device driver Realtek RTL8139 device driver NIC driver framework Rewritten TCP/IP stack Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 4
  • 5. What's New in 0.5.0? (3) Integration of various development branches File systems Read-only ext2 driver Read-only ISO 9660 driver Read/write support for FAT12, FAT16, FAT32 and exFAT Including LFN extension Read/write support for MINIX FS Migration path from MINIX 3 :-) Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 5
  • 6. What's New in 0.5.0? (4) Infrastructure improvements Location service Improved replacement for the Device mapper Service names (instances) Service categories (classes) Towards self-hosting Assembler and linker via GNU Binutils C compiler via PCC Virtual machine via MSIM Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 6
  • 7. What's New in 0.5.0? (5) Miscellaneous and experimental SATA (AHCI) support Anticipated device removal Multiple file system driver instances Web server can actually serve files from file system Remote network console Dynamic linking production-grade on IA-32 GRUB 2 as preferred boot loader (on IA-32 and AMD64) Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 7
  • 8. What's New Since the Release? Graphical User Interface Graphics drivers as 1st class DDF citizens Proposal for hardware acceleration API Display compositor GUI widgets library File systems Read/write ext4 driver Partial read/write UDF driver Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 8
  • 9. What's New Since the Release? (2) Structured binary data manipulation Bithenge framework IPC improvements Avoiding bookkeeping of unimportant messages Scalable concurrent hash table User space part merged so far Real time clock driver CMOS based (IA-32) Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 9
  • 10. What's New Since the Release? (3) Demo Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 10
  • 11. History 2005 – 2012 7000 6000 5000 4000 Commits 3000 2000 1000 0 2005-06 2005-12 2006-06 2006-12 2007-06 2007-12 2008-06 2008-12 2009-06 2009-12 2010-06 2010-12 2011-06 2011-12 2012-06 2005-03 2005-09 2006-03 2006-09 2007-03 2007-09 2008-03 2008-09 2009-03 2009-09 2010-03 2010-09 2011-03 2011-09 2012-03 2012-09 Date Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 11
  • 12. History 2005 – 2012 (2) 350000 300000 250000 200000 SLOC 150000 100000 50000 0 2005-06 2005-12 2006-06 2006-12 2007-06 2007-12 2008-06 2008-12 2009-06 2009-12 2010-06 2010-12 2011-06 2011-12 2012-06 2005-03 2005-09 2006-03 2006-09 2007-03 2007-09 2008-03 2008-09 2009-03 2009-09 2010-03 2010-09 2011-03 2011-09 2012-03 2012-09 Date Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 12
  • 13. What's Cooking IPC interfaces and ports Replacement for duck typing and “mixins” Stronger run-time type checking Connection to ports mediated by naming services Read-copy-update Two parallel efforts (AP-RCU, A-RCU) Scalable concurrent data structures (hash table) Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 13
  • 14. What's Cooking (2) Go support FUSE support VFS 2.0 Capability-based private file system namespaces BeagleBoard, Raspberry Pi Audio stack Low-level drivers and a sound server Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 14
  • 15. What's Cooking (3) Xen revival HelenOS running as a Xen domain HelenOS acting as Xen hypervisor System services manager and logger Think of cgroups, systemd and journald HelenOS installer Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 15
  • 16. What's Cooking (4) Self-hosting Port of GCC Port of Python Python-based build infrastructure (waf) Continuous integration and testing Based on Hudson (but with a twist) Networking features DNS, DHCP, etc. Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 16
  • 17. Social Agenda FOSDEM 2012 February 4th – 5th 2012, Brussels, Belgium Université libre de Bruxelles Jakub Jermář chaired the Microkernel OS Devroom Participation of HelenOS, Genode Labs, NOVA, MINIX, Hurd FOSDEM 2013 February 2nd – 3rd 2013, Brussels, Belgium Genode Labs is about to chair the Microkernel and Component-based OS Devroom Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 17
  • 18. FOSDEM 2012 Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 18
  • 19. FOSDEM 2012 (2) Photos Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 19
  • 20. Google Summer of Code 2012 4th attempt, 2nd successful (in a row) http://helenos.org/gsoc2012 17 student proposals Vivek Prakash: Port GNU Compiler Collection (GCC) to HelenOS Indian Institute of Technology Roorkee, India Mentored by Jiří Svoboda Sean Bartell: Structured binary data tools North Carolina State University at Raleigh, USA Mentored by Vojtěch Horký Adam Hraška: Resizeable, scalable, concurrent hash table Charles University in Prague, Czech Republic Mentored by Jakub Jermář Julia G. Medvedeva: UDF file system server Volgograd State Technical University, Russia Mentored by Martin Děcký Tobias Börtitz: HelenOS as a Genode platform Dresden University of Applied Sciences, Germany Mentored by Stefan Kalkowski Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 20
  • 21. GSoC Mentor Summit 2012 Unconference October 20th – 21st 2012 Googleplex, Mountain View, California Attended by Vojtěch Horký and Jakub Jermář Minority OS minisummit Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 21
  • 22. GSoC Mentor Summit 2012 (2) Photo by Robin Smidsrød Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 22
  • 23. GSoC Mentor Summit 2012 (3) Photo by Robin Smidsrød Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 23
  • 24. Bithenge Aim Extensible declarative way to describe binary formats Binary files (ELF headers, DWARF debugging information), on- disk file system structures, network packets Components Declarative DSL for describing binary formats API for accessing data based on the DSL User front-ends (editors) Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 24
  • 25. Bithenge (2) transform u8 = uint8; transform u16 = uint16le; transform u32 = uint32le; transform fat_attributes = struct { .read_only <- bit; .hidden <- bit; .system <- bit; .volume_label <- bit; .subdirectory <- bit; .archive <- bit; .device <- bit; .reserved <- bit; } <- bits_le <- known_length(1); Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 25
  • 26. Bithenge (3) transform file_data(data, bits, fat, cluster_size, start) = (in.data) <- struct { .cluster <- (data[(start-2)*cluster_size, cluster_size]); .last_cluster_number <- switch (bits) { 12: (488); # 0x00000ff8 16: (65528); # 0x0000fff8 32: (268435448); # 0x0ffffff8 }; .next <- (fat[start]); if (.next == 0 || .next >= .last_cluster_number) { .data <- (.cluster); } else { .rest <- file_data(data, bits, fat, cluster_size, .next) <- known_length(0); .data <- (.cluster ++ .rest); } }; Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 26
  • 27. Possible Application of HelenOS Cooperation with CZ.NIC Labs IPv6 support in HelenOS BIRD routing daemon for HelenOS http://bird.network.cz/ Knot DNS server for HelenOS http://www.knot-dns.cz/ Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 27
  • 28. HelenOS PhD Thesis Architecture and behavior specification Semantic information Extra-functional in source code properties Architecture models Work in Progress Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 28
  • 29. Q&A www.helenos.org Martin Děcký, D3S Seminar, October 30th 2012 HelenOS: State of the Union 2012 29