Creating Meego Products in a Different Way and Faster - How to Change the Device Creation

Total Page:16

File Type:pdf, Size:1020Kb

Creating Meego Products in a Different Way and Faster - How to Change the Device Creation Creating MeeGo products in a different way and faster - How to change the device creation Pasi Nieminen CEO [email protected] +358 40 737 3907 www.nomovok.com 1 The Questions That I Try Answer Today How to make product faster & better in MeeGo world How/why to change the UX creation - QML? MeeGo for ARM, where is it now? Where to find companies to work on MeeGo? 2 About Us We create products build on Open Source technologies #1 MeeGo company Pioneer in Embedded Open Source Pioneer in commercial utilization of Open Source in embedded devices. Since 2001, more than 400 OSS deployment project delivered Employs 110 OSS experts globally 400 more in ZCOCO.net for deep Linux expertize Locations 3 Currently serving businesses in Japan, Germany, France, US, Finland and Korea. Insider's View to MeeGo - Where Are We Now? 4 Current MeeGo Deployment Status Currently FULL build & integration pipeline working Currently MeeGo-dev + QT4.7 + NOMOVOK Steel Rat UX running on STE U8500 / Freescale i.mx51 / Renesas AP4 (All ARMv7 optimized) / IA See our demo @ demo area, and NOMOVOK staff 5 Forget C++ & Native QT apps - Go for QML 6 MeeGo Apps – Faster QT4.7 enables QML apps Declarative UI XML + JS 3x faster app creation to QT native apps Performance almost equal to native QT apps, in future much faster (declarative GUI => GPU) 7 QML – hello world import Qt 4.7 Rectangle { id: page width: 500; height: 200 color: "lightgray" Text { id: helloText8 text: "Hello world!" y: 30 anchors.horizontalCenter: page.horizontalCenter font.pointSize: 24; font.bold: true } } QML - demo 9 Moving to Native Build Process from Cross compilation -Ready To Deploy Today 10 MeeGo Builds – a new way No cross compilation anymore, pure native builds No toolchain problems No manual patching / no branching Faster new versions Completely new way to build embedded products, and integrate to community versions 11 Build environment is the same as the target environment, including Building for Target HW operating system and hardware architecture Native Cross-compilation Build environment is completely different from the target environment. Build tools are On Target HW Emulated modified not to see/rely on the actual environment. Example: Maemo (ARM) app built in Ubuntu on x86 PC using Scratchbox Build environment is the Build environment is the same as the target actual target environment, environment, but emulated as virtual machine including real hardware. on another environment. Example: Maemo app built Example: Ubuntu ARM app built in Windows PC, in Maemo device with ARM. using a Virtual Machine emulating ARM. Ubuntu installed as the OS of this Virtual Machine. 12 Benefits of Native Build Systems Native on Target Native on Emulated Target 1. Build tools (compilers etc.) 1. No changes needed to environment or tools originally designed, and are still Build tools work as they do on native developed, for this as target. 2. Use of actual environment information 2. Get the actual environment 3. No limit to the performance of the VM host machine information from running system 4. Allow building in host desktop machines in multiple OS's 3. Always access to the latest tools and features for the environment 5. OS only limited by the virtualization SW support 4. No performance hit from extra 6. Most packages can be built in emulated environment computing layers 7. Success rate in tested packages: ~85-95% of Ubuntu packages built without modifications (Handhelds Mojo CELF2008: ~15000 packages) Yes, there are some cons: - Not all, i.e. smaller, devices have Yes, there are some cons: sufficient performance to be High performance hit due to the Virtual Machine emulation feasible build devices layer - Builds require significant computing Not all packages can be built unmodified with emulator power 13 Native build or modifications needed NOMOVOK Linux Build Service Hosted Linux binaries build service Optimized binaries Customers to drop in source codes and Means more performance with less power consumption and smaller memory footprint NOMOVOK process takes care of native (e.g. ARM kernel 20% improvement in build to deliver binary packages performance). Native builds – less problems Common components No tool and patching problems with cross Use of common components and technologies compilation build systems allows easy, secure access and use as part of the development process. No vendor lock Optimized target architecture and the Linux ups, open process. distribution Secure Native build can support a long list of target Each customer gets an own, separate and hardwares. Optimization of the build complete service – no shared functionalities environment for each customer a core part of service Focus on essential Support your product easily, make SW variants easily. Make sure you keep you Linux as close to OSS community versions as possible, let us help you14 not to fork. NOMOVOK MeeGo Build Service Build Environments Customer Source Project_1 Binaries Project_1 MeeGo x.x- ARM yy Project_2 Project_2 MeeGo x.x- ARM zz Project_3 Project_3 MeeGo x.x- ARM zz 15 Utilize Global MeeGo Supply Chain Easily - Network of MeeGo Companies - Easy Way To Utilize 16 ZCOCO.net Ease Device Creation How to find best companies in MeeGo? How to ramp up MeeGo creation? Learn how to utilize community Stop compromising, get right people ZCOCO – a community of MeeGo companies 17 Unique Contractual Model One contract, many suppliers One local contact - always Best suppliers in OSS / MeeGo No profit on profit 18 どうもありがとうございます。 Thank you! For more information, please contact: Pasi Nieminen CEO [email protected] +358 40 737 3907 www.nomovok.com 19 All rights reserved. Copyright © Nomovok Ltd. .
Recommended publications
  • A Survey on Architectures of Mobile Operating Systems: Challenges and Issues
    International Journal of Research Studies in Computer Science and Engineering (IJRSCSE) Volume 2, Issue 3, March 2015, PP 73-76 ISSN 2349-4840 (Print) & ISSN 2349-4859 (Online) www.arcjournals.org A Survey on Architectures of Mobile Operating Systems: Challenges and Issues Prof. Y. K. Sundara Krishna1 HOD, Dept. of Computer Science, Krishna University Mr. G K Mohan Devarakonda2 Research Scholar, Krishna University Abstract: In the early years of mobile evolution, Discontinued Platforms Current mobile devices are enabled only with voice services Platforms that allow the users to communicate with each other. Symbian OS Android But now a days, the mobile technology undergone Palm OS IOS various changes to a great extent so that the devices Maemo OS Windows Phone allows the users not only to communicate but also to Meego OS Firefox OS attain a variety of services such as video calls, faster Black Berry OS browsing services,2d and 3d games, Camera, 2.1 Symbian OS: This Operating system was Banking Services, GPS services, File sharing developed by NOKIA. services, Tracking Services, M-Commerce and so many. The changes in mobile technology may be due Architecture: to Operating System or Hardware or Network or Memory. This paper presents a survey on evolutions SYMBIAN OS GUI Library in mobile developments especially on mobile operating system Architectures, challenges and Issues in various mobile operating Systems. Application Engines JAVA VM 1. INTRODUCTION Servers (Operating System Services) A Mobile operating system is a System Software that is specifically designed to run on handheld devices Symbian OS Base (File Server, Kernel) such as Mobile Phones, PDA’s.
    [Show full text]
  • Qml Controls from Scratch
    CREATING QML CONTROLS FROM SCRATCH Chris Cortopassi Table of Contents Introduction ......................................................................................... 3 Part 0: Getting Started ......................................................................... 4 Part 1: Button ....................................................................................... 6 Part 2: CheckBox and RadioButton ...................................................... 8 Part 3: Switch ...................................................................................... 10 Part 4: Slider ........................................................................................ 12 Part 5: ScrollBar ................................................................................... 14 Part 6: ProgressBar.............................................................................. 15 Part 7: Spinner ..................................................................................... 16 Part 8: Dialog ....................................................................................... 17 Part 9: PageDots .................................................................................. 19 Part 10: Tabs ....................................................................................... 21 Part 11: Table ...................................................................................... 23 Part 12: TimePicker ............................................................................. 25 Part 13: DatePicker .............................................................................
    [Show full text]
  • Meego Smartphones and Operating System Find a New Life in Jolla Ltd
    Jolla Ltd. Press Release July 7, 2012 Helsinki, Finland FOR IMMEDIATE RELEASE MeeGo Smartphones and Operating System Find a New Life in Jolla Ltd. Jolla Ltd. is an independent Finland based smartphone product company which continues the excellent work that Nokia started with MeeGo. The Jolla team is formed by directors and core professionals from Nokia's MeeGo N9 organisation, together with some of the best minds working on MeeGo in the communities. Jussi Hurmola, CEO Jolla Ltd.: "Nokia created something wonderful - the world's best smartphone product. It deserves to be continued, and we will do that together with all the bright and gifted people contributing to the MeeGo success story." Jolla Ltd. will design, develop and sell new MeeGo based smartphones. Together with international private investors and partners, a new smartphone using this MeeGo based OS will be revealed later this year. Jolla Ltd. has been developing a new smartphone product and the OS since the end of 2011. The OS has evolved from MeeGo OS using Mer Core and Qt with Jolla technology including its own brand new UI. The Jolla team consists of a substantial number of MeeGo's core engineers and directors, and is aggressively hiring the top MeeGo and Linux talent to contribute to the next generation smartphone production. Company is headquartered in Helsinki, Finland and has an R&D office in Tampere, Finland. Sincerely, Jolla Ltd. Dr. Antti Saarnio - Chairman & Finance Mr. Jussi Hurmola - CEO Mr. Sami Pienimäki - VP, Sales & Business Development Mr. Stefano Mosconi - CIO Mr. Marc Dillon - COO Further inquiries: [email protected] Jolla Ltd.
    [Show full text]
  • ECE 471 – Embedded Systems Lecture 8
    ECE 471 { Embedded Systems Lecture 8 Vince Weaver http://www.eece.maine.edu/∼vweaver [email protected] 26 September 2013 Announcements • HW#2 is delayed • Read chapter 11 in textbook 1 Brief Overview of the Gumstix Overo Board TODO: Put a diagram here More details after boards are distributed. 2 Coding Directly for the Hardware One way of developing embedded systems is coding to the raw hardware, as you did with the STM Discovery Boards in ECE271. • Compile code • Prepare for upload (hexbin?) • Upload into FLASH • Boots to offset 3 • Setup, flat memory (usually), stack at top, code near bottom, IRQ vectors • Handle Interrupts • Must do I/O directly (no drivers) Although if lucky, can find existing code. 4 Instead, one can use an Operating System 5 Why Use an Operating System? • Provides Layers of Abstraction { Abstract hardware: hide hardware differences. same hardware interface for classes of hardware (things like video cameras, disks, keyboards, etc) despite differing implementation details { Abstract software: with VM get linear address space, same system calls on all systems { Abstraction comes at a cost. Higher overhead, unknown timing 6 • Multi-tasking / Multi-user • Security, permissions (Linus dial out onto /dev/hda) • Common code in kernel and libraries, no need to re- invent 7 What's included with an OS • kernel / drivers { Linux definition • also system libraries { Solaris definition • low-level utils / software / GUI { Windows definition Web Browser included? • Linux usually makes distinction between the OS Kernel and distribution. OSX/Windows usually doesn't. 8 Operating Systems Types • Monolithic kernel { everything in one big address space.
    [Show full text]
  • Linux Foundation to Host Meego Workgroup
    Linux Foundation To Host MeeGo Workgroup New Open Source Software Platform Backed by Intel and Nokia will Power the Next Generation of Computing Devices SAN FRANCISCO, February 15, 2010 – The Linux Foundation, the nonprofit organization dedicated to accelerating the growth of Linux, today announced it will host the MeeGo project, the open source software platform for the next generation of computing devices. MeeGo combines Intel’s Moblin™ and Nokia’s Maemo projects into one Linux-based platform. MeeGo, announced today in a joint release by Intel and Nokia, will be deployed across many computing device types - including pocketable mobile computers, netbooks, tablets, mediaphones, connected TVs and in-vehicle infotainment systems, and brings together the leaders in computing and mobile communications as the project’s backers. MeeGo is designed for cross-device, cross-architecture computing and is built from the ground up for a new class of powerful computing devices. The workgroup will be hosted by the Linux Foundation as a fully open source project, encouraging community contributions in line with the best practices of the open source development model. The Linux Foundation expects MeeGo to be adopted widely by device manufacturers, network operators, software vendors and developers across multiple device types and for many organizations and developers to participate in the workgroup. “With MeeGo, you have the world’s leader in computing – Intel – uniting with the world’s leader in communications – Nokia – in a true open source project hosted at the Linux Foundation,” said Jim Zemlin, executive director at the Linux Foundation. “MeeGo has been built from the ground up for rich, mobile devices and will deliver choice to consumers without lock-in.
    [Show full text]
  • Sailfish OS Interview Questions and Answers Guide
    Sailfish OS Interview Questions And Answers Guide. Global Guideline. https://www.globalguideline.com/ Sailfish OS Interview Questions And Answers Global Guideline . COM Sailfish OS Job Interview Preparation Guide. Question # 1 Tell us what you know about Sailfish OS? Answer:- Sailfish is a Linux-based mobile operating system developed by Jolla in cooperation with the Mer project and supported by the Sailfish Alliance. It is to be used in upcoming smartphones by Jolla and other licencees. Although it is primarily targeted at mobile phones, it is also intended to support other categories of devices. Read More Answers. Question # 2 Explain Sailfish OS Components? Answer:- Jolla has revealed its plans to use the following technologies in Sailfish OS: The Mer software distribution core A custom built user interface HTML5 QML and Qt Read More Answers. Question # 3 Do you know about Sailfish OS software availability? Answer:- Sailfish will be able to run most applications that were originally developed for MeeGo and Android, in addition to native Sailfish applications. This will give it a large catalogue of available apps on launch. Considering upon Jolla's declarations that Sailfish OS is be able to use software from following platforms Sailfish (natively created + ported like from Qt, Symbian, MeeGo - developers have reported that porting a Qt written software with Sailfish SDK takes a few hours only) Android applications are directly running in Sailfish OS. They are compatible as they are in third-party Android stores, with no needed modification (in most cases). MeeGo (because of backward compatibility thanks to MeeGo code legacy included in the Mer core) Unix and Linux (as Sailfish is Linux then using such a software is possible, especially RPM packages, either in terminal/console mode or with limitations implying from using Sailfish UI, if not ported and adjusted) HTML5 Read More Answers.
    [Show full text]
  • How to Create a Partitioned Image with the Custom Wic Plugin?
    How to create a partitioned image with the custom Wic plugin? Tips and tricks based on the bootimg-grub-tb plugin development Norbert Kamiński, 3mdeb Embedded Systems Consulting Yocto Project Virtual Summit Europe, October 29-30, 2020 Agenda • $ whoami • Wic – OpenEmbedded Image Creator • Preparing layer • WKS files • Wic Plug-in Interface • Overall information • PluginSource Methods • Wic Plug-in development • bootimg-grub-tb - custom Wic Plug-in 2 Yocto Project® | The Linux Foundation® $ whoami • Open-source contributor • meta-pcengines • meta-trenchboot • qubes-fwupd • Scope of interests • embedded Linux • virtualization and containerization • bootloaders Norbert Kamiński Embedded Systems Engineer at 3mdeb Embedded Systems Consulting • • 3 Yocto Project® | The Linux Foundation® Wic – OpenEmbedded Image Creator Yocto Project | The Linux Foundation What is the Wic? • Wic stands for OpenEmbedded Image Creator • It is used to a create partitioned image • Wic is loosely based on the Meego Image Creator framework (mic) • It is using build artifacts instead of installing packages and configurations 5 Yocto Project® | The Linux Foundation® Prepare your layer • Go to your meta layer • Add wic to the IMAGE_FSTYPE variable in your local configuration IMAGE_FSTYPES += "wic" • Use the existing wic kickstart file or create specific one for your purposes 6 Yocto Project® | The Linux Foundation® Default partition layouts • At the start source poky/oe-init-build-env • List the available wic kickstart configurations $ wic list images mpc8315e-rdb Create
    [Show full text]
  • Section Heading
    Islander February 2011 Technology Update The Androids are coming! Report from the Mobile World Congress - formerly known as 3GSM This last week we attended the Mobile World Congress (MWC) in Barcelona, where the next generation of cellphones are showcased. In today‟s world where Apple has created and sharply led the smartphone race off the start line, leaving the once great (just two years ago) Nokia flailing in their wake, desperately trying to trip them up, like a bad loser, by issuing law suits. At the same time another competitor has quietly got on with what Nokia should have been doing by putting their energy into developing an alternative “complete smartphone software Editorial Technical solution” which offers better features than the iPhone. The new kid on the smart phone block is Google. Consultants Accenture referred last week at the MWC to their operating system software, Android, as a new phenomenon. At the show last week nearly every conversation ended up with one subject: Google and its Android Mobile Phone operating system. Nokia did do their best to overshadow the show debate for the week by announcing on the eve of MWC their decision to opt for Microsoft‟s Windows Phone 7 (WP7) platform as its primary smartphone operating system, rather than Android. Stephen Elop, CEO of Nokia, told reporters at the press conference that the decision was prompted by a desire to avoid a “duopoly” in the mobile industry between Google/Nokia and Apple and they wanted to create a third challenger. The two firms are positioning the alliance as the third major smartphone ecosystem alongside Apple‟s iOS and the Android community.
    [Show full text]
  • & Qt What Meego Could Have Been
    & Qt What MeeGo could have been David Greaves / lbt merproject.org Qt Developer Days 2012 We're proud of what we've achieved ! … what are we talking about? Making things TVs Cars Mobile Tablets Control/Embedded ... origins : ● Maemo reconstructed '09 ● We drank the MeeGo coolaid – and still do ! ● MeeGo needed to evolve ... but died ● Mer was reborn … vendor focus ... is : ● A core for mobile and smaller devices ● Aimed at device vendors ● Qt / QML ● Quality oriented ● Optimised for speed and size ● Ready to productise ... is not : ● A 'user experience' – no UI ● A 'hardware adaptation' – no kernel, GLES drivers ● Everything including the kitchen sink – <shock>Mer doesn't have Emacs</shock> ... delivers : ● Mobile / Nemo, Tablet / Plasma Active & Vivaldi, TV / TVOS (China), Healthcare / Lincor, IVI / Nomovok... ● X86 (not just Atom), ARM, MIPS ● N950/N900/N9 / Spark / STB / ExoPC / RasPi / Panda-beagleboards / Joggler / ... ... will let you : ● Operate efficiently ● Deliver quickly ● Use closed code ● Innovate ... will achieve this by : ● Customer focus ● Pragmatic ● Operating entirely in the open ● Being meritocratic ● Inclusive ... because code is not enough ... provides : ● Code – of course ● Systems – for build, QA, collaboration ● Best practices ● Documentation and support ... contains : ● Build & development ● Base ● Security ● Session ● Hardware ● Connectivity ● Audio Qt ● Graphical ● X11 / Wayland ● Libraries (inc perl + python libs) ... systems : ● OBS ● Upstream patches ● Integration with sb2 ● BOSS ● Business process automation by Ruote ● Scratchbox2 ● Next generation cross-building ... systems : ● IMG / mic ● Automated image builds ● Bugzilla ● Or <insert your choice here> ● Gerrit ● Or <insert your choice here> ● Futures.... ● Package DB for license tracking and libhybris Mer SDK Mer SDK Qt Creator with Mer plugins + Mer VM with Platform SDK = Mer SDK SDK roadmap ..
    [Show full text]
  • Download Android Os for Phone Open Source Mobile OS Alternatives to Android
    download android os for phone Open Source Mobile OS Alternatives To Android. It’s no exaggeration to say that open source operating systems rule the world of mobile devices. Android is still an open-source project, after all. But, due to the bundle of proprietary software that comes along with Android on consumer devices, many people don’t consider it an open source operating system. So, what are the alternatives to Android? iOS? Maybe, but I am primarily interested in open-source alternatives to Android. I am going to list not one, not two, but several alternatives, Linux-based mobile OSes . Top Open Source alternatives to Android (and iOS) Let’s see what open source mobile operating systems are available. Just to mention, the list is not in any hierarchical or chronological order . 1. Plasma Mobile. A few years back, KDE announced its open source mobile OS, Plasma Mobile. Plasma Mobile is the mobile version of the desktop Plasma user interface, and aims to provide convergence for KDE users. It is being actively developed, and you can even find PinePhone running on Manjaro ARM while using KDE Plasma Mobile UI if you want to get your hands on a smartphone. 2. postmarketOS. PostmarketOS (pmOS for short) is a touch-optimized, pre-configured Alpine Linux with its own packages, which can be installed on smartphones. The idea is to enable a 10-year life cycle for smartphones. You probably already know that, after a few years, Android and iOS stop providing updates for older smartphones. At the same time, you can run Linux on older computers easily.
    [Show full text]
  • Our Journey from Java to Pyqt and Web for Cern Accelerator Control Guis I
    17th Int. Conf. on Acc. and Large Exp. Physics Control Systems ICALEPCS2019, New York, NY, USA JACoW Publishing ISBN: 978-3-95450-209-7 ISSN: 2226-0358 doi:10.18429/JACoW-ICALEPCS2019-TUCPR03 OUR JOURNEY FROM JAVA TO PYQT AND WEB FOR CERN ACCELERATOR CONTROL GUIS I. Sinkarenko, S. Zanzottera, V. Baggiolini, BE-CO-APS, CERN, Geneva, Switzerland Abstract technology choices for GUI, even at the cost of not using Java – our core technology – for GUIs anymore. For more than 15 years, operational GUIs for accelerator controls and some lab applications for equipment experts have been developed in Java, first with Swing and more CRITERIA FOR SELECTING A NEW GUI recently with JavaFX. In March 2018, Oracle announced that Java GUIs were not part of their strategy anymore [1]. TECHNOLOGY They will not ship JavaFX after Java 8 and there are hints In our evaluation of GUI technologies, we considered that they would like to get rid of Swing as well. the following criteria: This was a wakeup call for us. We took the opportunity • Technical match: suitability for Desktop GUI to reconsider all technical options for developing development and good integration with the existing operational GUIs. Our options ranged from sticking with controls environment (Linux, Java, C/C++) and the JavaFX, over using the Qt framework (either using PyQt APIs to the control system; or developing our own Java Bindings to Qt), to using Web • Popularity among our current and future developers: technology both in a browser and in native desktop little (additional) learning effort, attractiveness for new applications.
    [Show full text]
  • Latex Beamer Presentation
    Extend your KDE application Using QML! Artur Duque de Souza Aug/2011 Agenda • (Big) Introduction • A problem • KDE Solution • Issues • Future Qt Script QtScript C++ API to make your applications scriptable QScriptEngine • Environment to evaluate a script • Context • Global Object • Use QMetaObject system to automatically export QObjects QObjects Can be exported out of the box: • Properties • Signals • Slots • Q_INVOKABLE QScriptValue Container for QtScript data types: • Support for ECMA-262 types • Support for QObject, QVariant and QMetaObject • Prototype property that is common to all instances of an object JS Bindings JS Bindings for Qt Bindings are proxy objects/functions to interface with the ’real’ libraries JS Bindings for Qt Steps to create your bindings: • Create wrap code (check context arguments) • Register your wrappers with the engine • Be happy :) JS Bindings for Qt Steps to create your bindings: • Create wrap code (check context arguments) • Register your wrappers with the engine • Be happy :) JS Bindings for Qt Steps to create your bindings: • Create wrap code (check context arguments) • Register your wrappers with the engine • Be happy :) QML QML Declarative language to ease the development of UIs QDeclarativeEngine • Handles QML code • Does not inherit QScriptEngine • It has a QScriptEngine inside QDeclarativeEngine • Handles QML code • Does not inherit QScriptEngine • It has a QScriptEngine inside QDeclarativeEngine Public API • QML specific methods • It has its own ’context’: QDeclarativeContext • QObject works out of the box • It’s possible to register C++ declarative items QDeclarativeExpression Evaluate a JS expression in a QML context KDE First of all... ... why use QML? Declarative languages are way better (and faster) to build rich UIs! • Microblog plasmoid (C++): 1250 LOC • Declarative Microblog: 500 LOC First of all..
    [Show full text]