SlideShare a Scribd company logo
1 of 55
Download to read offline
Laurențiu Cristian Ion
 December 14th, 2011
What is HAIKU?
Haiku is an open source operating system
currently in development that specifically targets
      personal computing. Inspired by the Be
 Operating System, Haiku aims to become a fast,
efficient, simple to use, easy to learn and yet very
powerful system for computer users of all levels.
A story about BeOS
Jean-Louis Gassée wants to start a new company,
              so he needs a name.
    He grabs a dictionary, randomly picks Be
Be, Inc.
Wants To Build a New Computer,
    With No Legacy Cruft,
            BeBox:
Couldn't Find a Good OS,
 So Decided to Build It,
      Alas, BeOS:
Time Goes By,
        Apple Offers Be $120 Million,
             Then $200 Million,
         Gassee Wants $400 Million,
                 Bad Idea,
                Apple Balks,
Then Buys NeXT for $400 Million (oh the irony)
August 2001: Be, Inc. Sold to Palm for $11 Million
Hmm, Should Have Taken the $200 Million?
Also August 2001: OpenBeOS Project Started,
   By Michael Phipps and Other BeOS Fans
Will Rewrite BeOS As Open Source,
      They Need a New Name.
        A Long List Is Made,
          A Poll Is Taken,
Haiku Is Chosen From Culled List.
Technical Features
•   Kernel
•   Modules & Drivers
•   OpenBFS
•   Queries
•   File System Layout
•   Kits
•   BMessage
•   Add-ons
•   Replicants
•   UI
Kernel
•   Fork of the NewOS kernel
•   Preemptive Multithreading
•   Modular design
•   Native IPC
    – Semaphores
    – Ports
    – Areas (shared memory)
Modules & Drivers
• Busses
• Module Hierarchy
   – get_module(''bus/usb/v1'', &m)
• Auto probing
   – Open(''/dev/input/foo/1'') -> rescan input drivers
• If it's supported, it just works!
OpenBFS
•   64 bit
•   Journaled
•   Built for large files (multimedia)
•   Extended Attributes (Meta-Data)
    – Typed
       •   Icon
       •   Int
       •   Float
       •   String
            – Mime type
       • ...
• Indexed = Searchable = Database-like
Queries
•   Formula-based search on meta-data
•   Live update from file-systems
•   Used by applications
•   Used in many places
    – Searching for Contacts
       • ((META:email==''*foo*@bar.com''))
       • ((IM:status==''Online''))
    – Mail files
       • ((MAIL:status==''New''))
    – MP3
       • ((Audio.Year>1990)&&(Audio.Artist==''[Ee]nigma''))
    – Finding Replicants
    – GoogleFS: 8*109 online bookmarks
File System Layout
• /boot/system               • /boot/{home|users/*}
  – etc                        – mail, people
  – bin                        – bin
  – system                     – config
                                   • lib
      • lib
                                   • add-ons
      • add-ons
                                       – ...
          – kernel
                                   • Settings
          – input_server
                               – ...
  – ...
                             • /boot/common
• /boot/apps
                               – bin
  – BeAE
                               – lib
  – Paladin
                               – Include
  – WonderBrush                – ...
Kits
• Clean, Uniform C++ API     • Inheritance:
• Many Kits                  • BWindow
  – Kernel                        – BDirectWindow
  – Support                  • BView
  – Storage                       – BGLView
  – Interface                     – BTextView
  – Media                         – ...
  – ...                      • BEntryList
                                  – BDirectory
                                  – BQuery
                             • ...
BMessage
• System-wide multi-purpose messaging
  – 'what' code defines the meaning
  – Target and sender
  – Typed, named fields
     •   Int
     •   Float
     •   String
     •   BMessage :)
     •   ...
• Used everywhere: Drag & Drop, Settings...
• Even the kernel sends them.
Add-ons
• Kernel modules (bus managers, drivers)
• Graphics drivers
• Media
   – Drivers
   – Codecs
   – Nodes
• Translators
   – Pictures
   – Text (html, ...)
• Input Devices
   – Drivers
   – Methods
• ...
UI
•   Clean
•   Consistent
•   Multi-threaded = responsiveness
•   Still allows for foreign frameworks
    – SDL
    – NSPR (FireFox aka BeZillaBrowser)
    – Qt
    – WxWidgets port in progress...
Drivers
•   Video – ATI, nVidia, Neomagic, Intel, VESA
•   Audio – OSS, Creative, Echo, VIA, Maudio, HDA
•   Network – Most ethernet chipsets
•   Wireless – WEP working, WPA/WPA2 in progress
•   USB – support for ECHI, UHCI and OHCI
•   USB mice, keyboards and mass storage
•   Some USB webcam support
•   OpenGL via MESA project
Home Screen
About this system
Applications folder
Demo folder
Desktop applets folder
Preferences folder
Tracker Query
Mounting Volumes
Various Replicants
Touchpad Preferences
WonderBrush
Icon-O-Matic
Media Player
Haiku Installation
?

More Related Content

What's hot

Android– forensics and security testing
Android– forensics and security testingAndroid– forensics and security testing
Android– forensics and security testingSanthosh Kumar
 
MindMap - Forensics Windows Registry Cheat Sheet
MindMap - Forensics Windows Registry Cheat SheetMindMap - Forensics Windows Registry Cheat Sheet
MindMap - Forensics Windows Registry Cheat SheetJuan F. Padilla
 
Disk and File System Management in Linux
Disk and File System Management in LinuxDisk and File System Management in Linux
Disk and File System Management in LinuxHenry Osborne
 
Bios ( Basic Input Output System )
Bios ( Basic Input Output System )Bios ( Basic Input Output System )
Bios ( Basic Input Output System )Jesthine Nesshal
 
Computer storage devices
Computer storage devicesComputer storage devices
Computer storage devicesRizwan Qamar
 
Windows Server 2016 First Look (Part 1)
Windows Server 2016 First Look (Part 1)Windows Server 2016 First Look (Part 1)
Windows Server 2016 First Look (Part 1)Tuan Yang
 
Ethical hacking Chapter 7 - Enumeration - Eric Vanderburg
Ethical hacking   Chapter 7 - Enumeration - Eric VanderburgEthical hacking   Chapter 7 - Enumeration - Eric Vanderburg
Ethical hacking Chapter 7 - Enumeration - Eric VanderburgEric Vanderburg
 
Memory forensics.pptx
Memory forensics.pptxMemory forensics.pptx
Memory forensics.pptx9905234521
 
Introduction to Operating Systems
Introduction to Operating SystemsIntroduction to Operating Systems
Introduction to Operating SystemsDamian T. Gordon
 
Windows Network concepts
Windows Network conceptsWindows Network concepts
Windows Network conceptsDuressa Teshome
 
Red hat linux 9 ppt2003
Red hat linux 9 ppt2003Red hat linux 9 ppt2003
Red hat linux 9 ppt2003ashishsjcit
 
Install active directory on windows server 2016 step by step
Install active directory on windows server 2016  step by stepInstall active directory on windows server 2016  step by step
Install active directory on windows server 2016 step by stepAhmed Abdelwahed
 

What's hot (20)

Android– forensics and security testing
Android– forensics and security testingAndroid– forensics and security testing
Android– forensics and security testing
 
Systems Administration
Systems AdministrationSystems Administration
Systems Administration
 
MindMap - Forensics Windows Registry Cheat Sheet
MindMap - Forensics Windows Registry Cheat SheetMindMap - Forensics Windows Registry Cheat Sheet
MindMap - Forensics Windows Registry Cheat Sheet
 
Disk and File System Management in Linux
Disk and File System Management in LinuxDisk and File System Management in Linux
Disk and File System Management in Linux
 
Bios ( Basic Input Output System )
Bios ( Basic Input Output System )Bios ( Basic Input Output System )
Bios ( Basic Input Output System )
 
Bsd ppt
Bsd pptBsd ppt
Bsd ppt
 
Memory Forensics
Memory ForensicsMemory Forensics
Memory Forensics
 
Computer Hardware
Computer HardwareComputer Hardware
Computer Hardware
 
Computer storage devices
Computer storage devicesComputer storage devices
Computer storage devices
 
Windows Server 2016 First Look (Part 1)
Windows Server 2016 First Look (Part 1)Windows Server 2016 First Look (Part 1)
Windows Server 2016 First Look (Part 1)
 
Ethical hacking Chapter 7 - Enumeration - Eric Vanderburg
Ethical hacking   Chapter 7 - Enumeration - Eric VanderburgEthical hacking   Chapter 7 - Enumeration - Eric Vanderburg
Ethical hacking Chapter 7 - Enumeration - Eric Vanderburg
 
Memory forensics.pptx
Memory forensics.pptxMemory forensics.pptx
Memory forensics.pptx
 
File server
File serverFile server
File server
 
Windows Server 2012
Windows Server 2012Windows Server 2012
Windows Server 2012
 
Kali Linux
Kali LinuxKali Linux
Kali Linux
 
Introduction to Operating Systems
Introduction to Operating SystemsIntroduction to Operating Systems
Introduction to Operating Systems
 
Bios
BiosBios
Bios
 
Windows Network concepts
Windows Network conceptsWindows Network concepts
Windows Network concepts
 
Red hat linux 9 ppt2003
Red hat linux 9 ppt2003Red hat linux 9 ppt2003
Red hat linux 9 ppt2003
 
Install active directory on windows server 2016 step by step
Install active directory on windows server 2016  step by stepInstall active directory on windows server 2016  step by step
Install active directory on windows server 2016 step by step
 

Similar to Haiku OS Presentation

Hadoop 20111215
Hadoop 20111215Hadoop 20111215
Hadoop 20111215exsuns
 
Ashish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_betterAshish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_bettersuniltomar04
 
iOS Architecture and MVC
iOS Architecture and MVCiOS Architecture and MVC
iOS Architecture and MVCMarian Ignev
 
Ashish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_betterAshish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_betterOpenSourceIndia
 
Operating systems 1
Operating systems 1Operating systems 1
Operating systems 1JoshuaIgo
 
Why I use Apple products instead of Linux or Android day-to-day
Why I use Apple products instead of Linux or Android day-to-dayWhy I use Apple products instead of Linux or Android day-to-day
Why I use Apple products instead of Linux or Android day-to-dayMayel de Borniol
 
Azri solutions leaner techniques for faster portals get drupalled
Azri solutions leaner techniques for faster portals   get drupalledAzri solutions leaner techniques for faster portals   get drupalled
Azri solutions leaner techniques for faster portals get drupalledOpenSourceIndia
 
Azri solutions leaner techniques for faster portals get drupalled
Azri solutions leaner techniques for faster portals   get drupalledAzri solutions leaner techniques for faster portals   get drupalled
Azri solutions leaner techniques for faster portals get drupalledsuniltomar04
 
A Decade of SharePoint Adoption Strategies
A Decade of SharePoint Adoption StrategiesA Decade of SharePoint Adoption Strategies
A Decade of SharePoint Adoption StrategiesChris McNulty
 
Django dev-env-my-way
Django dev-env-my-wayDjango dev-env-my-way
Django dev-env-my-wayRobert Lujo
 
Installing windows2111
Installing windows2111Installing windows2111
Installing windows2111hala2111
 
The Application Development Landscape - 2011
The Application Development Landscape -  2011The Application Development Landscape -  2011
The Application Development Landscape - 2011David Skok
 
Battlelog - Building scalable web sites with tight game integration
Battlelog - Building scalable web sites with tight game integrationBattlelog - Building scalable web sites with tight game integration
Battlelog - Building scalable web sites with tight game integrationElectronic Arts / DICE
 
What You Need to Know About Today's eBook Technology
What You Need to Know About Today's eBook TechnologyWhat You Need to Know About Today's eBook Technology
What You Need to Know About Today's eBook TechnologySara Aden
 
Mas overview dirks at cni dec11b
Mas overview dirks at cni   dec11bMas overview dirks at cni   dec11b
Mas overview dirks at cni dec11bLee Dirks
 
Containerized IDEs.pdf
Containerized IDEs.pdfContainerized IDEs.pdf
Containerized IDEs.pdfLibbySchulze
 

Similar to Haiku OS Presentation (20)

Hadoop 20111215
Hadoop 20111215Hadoop 20111215
Hadoop 20111215
 
Ashish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_betterAshish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_better
 
iOS Architecture and MVC
iOS Architecture and MVCiOS Architecture and MVC
iOS Architecture and MVC
 
Ashish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_betterAshish pandey huawei osi_days2011_cgroups_understanding_better
Ashish pandey huawei osi_days2011_cgroups_understanding_better
 
Getting Started with DevOps
Getting Started with DevOpsGetting Started with DevOps
Getting Started with DevOps
 
Operating systems 1
Operating systems 1Operating systems 1
Operating systems 1
 
Why I use Apple products instead of Linux or Android day-to-day
Why I use Apple products instead of Linux or Android day-to-dayWhy I use Apple products instead of Linux or Android day-to-day
Why I use Apple products instead of Linux or Android day-to-day
 
Android
AndroidAndroid
Android
 
Azri solutions leaner techniques for faster portals get drupalled
Azri solutions leaner techniques for faster portals   get drupalledAzri solutions leaner techniques for faster portals   get drupalled
Azri solutions leaner techniques for faster portals get drupalled
 
Azri solutions leaner techniques for faster portals get drupalled
Azri solutions leaner techniques for faster portals   get drupalledAzri solutions leaner techniques for faster portals   get drupalled
Azri solutions leaner techniques for faster portals get drupalled
 
A Decade of SharePoint Adoption Strategies
A Decade of SharePoint Adoption StrategiesA Decade of SharePoint Adoption Strategies
A Decade of SharePoint Adoption Strategies
 
Django dev-env-my-way
Django dev-env-my-wayDjango dev-env-my-way
Django dev-env-my-way
 
Installing windows2111
Installing windows2111Installing windows2111
Installing windows2111
 
The Application Development Landscape - 2011
The Application Development Landscape -  2011The Application Development Landscape -  2011
The Application Development Landscape - 2011
 
Battlelog - Building scalable web sites with tight game integration
Battlelog - Building scalable web sites with tight game integrationBattlelog - Building scalable web sites with tight game integration
Battlelog - Building scalable web sites with tight game integration
 
Snakes on a Treadmill
Snakes on a TreadmillSnakes on a Treadmill
Snakes on a Treadmill
 
What You Need to Know About Today's eBook Technology
What You Need to Know About Today's eBook TechnologyWhat You Need to Know About Today's eBook Technology
What You Need to Know About Today's eBook Technology
 
3. introduction of centos
3. introduction of centos3. introduction of centos
3. introduction of centos
 
Mas overview dirks at cni dec11b
Mas overview dirks at cni   dec11bMas overview dirks at cni   dec11b
Mas overview dirks at cni dec11b
 
Containerized IDEs.pdf
Containerized IDEs.pdfContainerized IDEs.pdf
Containerized IDEs.pdf
 

Recently uploaded

How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
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 Nanonetsnaman860154
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Recently uploaded (20)

How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Haiku OS Presentation

  • 1. Laurențiu Cristian Ion December 14th, 2011
  • 3. Haiku is an open source operating system currently in development that specifically targets personal computing. Inspired by the Be Operating System, Haiku aims to become a fast, efficient, simple to use, easy to learn and yet very powerful system for computer users of all levels.
  • 5. Jean-Louis Gassée wants to start a new company, so he needs a name. He grabs a dictionary, randomly picks Be
  • 7. Wants To Build a New Computer, With No Legacy Cruft, BeBox:
  • 8. Couldn't Find a Good OS, So Decided to Build It, Alas, BeOS:
  • 9. Time Goes By, Apple Offers Be $120 Million, Then $200 Million, Gassee Wants $400 Million, Bad Idea, Apple Balks, Then Buys NeXT for $400 Million (oh the irony)
  • 10. August 2001: Be, Inc. Sold to Palm for $11 Million
  • 11. Hmm, Should Have Taken the $200 Million?
  • 12. Also August 2001: OpenBeOS Project Started, By Michael Phipps and Other BeOS Fans
  • 13. Will Rewrite BeOS As Open Source, They Need a New Name. A Long List Is Made, A Poll Is Taken, Haiku Is Chosen From Culled List.
  • 14.
  • 15. Technical Features • Kernel • Modules & Drivers • OpenBFS • Queries • File System Layout • Kits • BMessage • Add-ons • Replicants • UI
  • 16. Kernel • Fork of the NewOS kernel • Preemptive Multithreading • Modular design • Native IPC – Semaphores – Ports – Areas (shared memory)
  • 17. Modules & Drivers • Busses • Module Hierarchy – get_module(''bus/usb/v1'', &m) • Auto probing – Open(''/dev/input/foo/1'') -> rescan input drivers • If it's supported, it just works!
  • 18. OpenBFS • 64 bit • Journaled • Built for large files (multimedia) • Extended Attributes (Meta-Data) – Typed • Icon • Int • Float • String – Mime type • ... • Indexed = Searchable = Database-like
  • 19. Queries • Formula-based search on meta-data • Live update from file-systems • Used by applications • Used in many places – Searching for Contacts • ((META:email==''*foo*@bar.com'')) • ((IM:status==''Online'')) – Mail files • ((MAIL:status==''New'')) – MP3 • ((Audio.Year>1990)&&(Audio.Artist==''[Ee]nigma'')) – Finding Replicants – GoogleFS: 8*109 online bookmarks
  • 20. File System Layout • /boot/system • /boot/{home|users/*} – etc – mail, people – bin – bin – system – config • lib • lib • add-ons • add-ons – ... – kernel • Settings – input_server – ... – ... • /boot/common • /boot/apps – bin – BeAE – lib – Paladin – Include – WonderBrush – ...
  • 21. Kits • Clean, Uniform C++ API • Inheritance: • Many Kits • BWindow – Kernel – BDirectWindow – Support • BView – Storage – BGLView – Interface – BTextView – Media – ... – ... • BEntryList – BDirectory – BQuery • ...
  • 22. BMessage • System-wide multi-purpose messaging – 'what' code defines the meaning – Target and sender – Typed, named fields • Int • Float • String • BMessage :) • ... • Used everywhere: Drag & Drop, Settings... • Even the kernel sends them.
  • 23. Add-ons • Kernel modules (bus managers, drivers) • Graphics drivers • Media – Drivers – Codecs – Nodes • Translators – Pictures – Text (html, ...) • Input Devices – Drivers – Methods • ...
  • 24. UI • Clean • Consistent • Multi-threaded = responsiveness • Still allows for foreign frameworks – SDL – NSPR (FireFox aka BeZillaBrowser) – Qt – WxWidgets port in progress...
  • 25. Drivers • Video – ATI, nVidia, Neomagic, Intel, VESA • Audio – OSS, Creative, Echo, VIA, Maudio, HDA • Network – Most ethernet chipsets • Wireless – WEP working, WPA/WPA2 in progress • USB – support for ECHI, UHCI and OHCI • USB mice, keyboards and mass storage • Some USB webcam support • OpenGL via MESA project
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55. ?