[HN Gopher] Symbian OS Kernel (2010)
___________________________________________________________________
Symbian OS Kernel (2010)
Author : initramfs
Score : 134 points
Date : 2022-11-12 05:19 UTC (17 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| jbj wrote:
| saved up in high school to buy P1i (sony ericsson) and remember
| the feeling of being blown away when installing the first third
| party app, I think a weather app.
| notRobot wrote:
| Over the past decade I've purchased several Chinese cheapo keypad
| phones, and they all seem to run a very similar java-based OS.
| Does anyone have any information on what OS that is exactly, and
| if it's open source?
| xobs wrote:
| It's probably Nucleus, which is what Mediatek uses a lot on
| their low-end phones:
| https://en.wikipedia.org/wiki/Nucleus_RTOS
|
| It's not open source per se, but the phones themselves tend to
| have very little modification from the reference EVK, which
| means if you can find the BSP you can usually build a firmware
| image that will work on a device.
| jpegqs wrote:
| I don't know if the Mediatek chips have overridable pins, but
| the Spreadtrum does. There are also different LCD panels that
| have slightly different interfaces for which you will need to
| write a driver (and find it from the original firmware). The
| button mapping also may vary.
|
| So writing firmware that will work on most phones on a
| particular chipset will not be so easy.
| jpegqs wrote:
| From the ones I got, I found MAUI in the name of the
| firmware, and on Wikipedia I found these notes:
|
| > MAUI, a feature-phone operating system used with MediaTek-
| based shanzhai devices, also used on Motorola phones and some
| Samsung feature phones.
|
| > MediaTek developed an embedded operating system named MAUI
| Runtime Environment which is based on Nucleus RTOS.
|
| So it's not raw Nucleus.
| HeckFeck wrote:
| Nucleus? How's its Weissman score?
| jpegqs wrote:
| I recently ordered and researched the cheapest feature phones
| (and some smartwatches), looks like half of that market is
| occupied by Unisoc with the SC6531(E/DA) chipset (from the
| Spreadtrum company they bought). It uses Mocor OS. The second
| half of this market is occupied by Mediatek MT6260/MT6261
| chipsets. I wrote tools to run my code on these chipsets.
|
| There are also phones on Mocor5 OS, a little more expensive,
| it's actually Android 4.4 on the Spreadtrum SC7715 chipset.
|
| I didn't find any Java here, but these CPUs have a Jazelle ARM
| extension to run Java bytecode.
|
| P.S.: There's an old project based on reverse engineered MT6260
| firmware: https://github.com/xobs/fernly
| jpegqs wrote:
| I wanted to run Doom on one of them. So far I have LCD
| control for SC6531E (with 9306 LCD panel), USB control for
| SC6531E/SC6531DA and USB control for MT6260/MT6261 (using API
| from bootloader).
|
| I load the code not while the OS is running, but through boot
| via USB.
|
| SC6531DA is similar to SC6531E, but some constants have been
| changed, so additional research into its firmware is
| required.
|
| I have enough knowledge to run some game on the SC6531E, but
| a lot of work still needs to be done.
|
| Anyone want to cooperate with me?
| seba_dos1 wrote:
| Symbian is not Java-based.
| kgeist wrote:
| I wonder what was the rationale for their formatting rules. No
| spaces around "=", "==" or "," but there're spaces around "?" and
| "||".
| swinglock wrote:
| Are there rules? Nothing is consistent even within single
| function.
| secondcoming wrote:
| There were definitely rules, but as the company grew it seems
| they were not followed all that strictly.
| HeckFeck wrote:
| Interesting source dump. I see a lot of utility scripts written
| in Perl; they even have the documentation as well-formatted POD.
|
| I wonder if there are any references to its progenitor the PSION.
| A cursory glance revealed none, at least not in the copyright
| headers.
| mananaysiempre wrote:
| The e32 prefix used in the source is for EPOC32, Symbian's
| original name, so you can count that as a reference. But books
| about Symbian say it was a complete rewrite of the original
| 16-bit, C-language EPOC, there probably isn't any code that
| comes from there verbatim.
|
| (The Psion was the brand of computers, the EPOC was the OS.)
| DrNosferatu wrote:
| Have you ever tried to code any non-trivial application for
| Symbian / S60?
|
| If you ever did, the business opportunity to build a mobile
| platform with any sort of half-sane API will immediately scream
| very loudly at your face - and that's exactly what Apple did with
| iOS. The rest is History.
|
| A real sad story - the hardware was quite capable for the time.
| jamesdhutton wrote:
| Yes. I made a game for S60, in 2004. I agree the SDK and the
| API were poor. But I think the real mistake they made was
| failing to build an app store. IIRC I think they might have had
| some kind of rudimentary app store but it wasn't accessible to
| mere mortals. The only way I could figure out how to distribute
| my game was to post it as a freely downloadable file on the
| web, which I did. I have no idea whether anybody ever
| downloaded it. If they had just made it easy for developers to
| distribute their apps then I think history might have been
| quite different.
| secondcoming wrote:
| Nokia had Ovi which was an attempt at an app store.
| seniorivn wrote:
| all of it was a late reaction to iphone changing the
| market. Initially they didn't have any of it, and at the
| time when they got to a N9(an actually competitive device),
| their leadership already decided to do windows
| shenanigans(and alleged forced merge by microsoft executed
| by steven ellop as a Nokia ceo).
| ChuckNorris89 wrote:
| The thing is Nokia was not a software first company. It was a
| phone/electronics company so that's where the decision making
| was biased. Someone here posted that the Symbian repos were in
| such a mess that compiling the OS would take over 2 days and
| nobody in management saw a problem with that.
|
| It's easy now in hindsight to say they could have won the
| market with a software ecosystem but back then that was not
| clear for them.
|
| It was clear for Apple since they had the experience monetizing
| the iTunes ecosystem and they were a software focused company.
| DrNosferatu wrote:
| It was very clear then for me!
|
| I had to professionally code an image processing application
| for Symbian in 2008/9, and that's when I formed this opinion.
| Apple & Android seemed to agree :)
|
| What's surprising is that there weren't more attempts at a
| sane mobile platform/API - and earlier.
| ChuckNorris89 wrote:
| 2008/2009 was pretty late in the game for such a large ship
| like Nokia to change course. Their financial situation back
| then was still good enough to no bother with a massive
| change of course.
|
| Sure, you saw it, but Nokia management was out of touch and
| more preoccupied with the next quarter rather than with the
| next 3 years, as it the case in many large old companies.
| fifilura wrote:
| The sad part was that they had the platform that could
| have competed with ios and android. A linux based
| platform that they had worked on since 2005. (Or 2004
| even).
|
| For som reason the not-so-visionary mgmt decided to cut
| it, right when it should have started to scale up.
| throwawaaarrgh wrote:
| > What's surprising is that there weren't more attempts at
| a sane mobile platform/API - and earlier.
|
| It's all about leadership, vision, and courage. Leadership
| that doesn't push new boundaries, has no vision, and lacks
| the courage to try new risky things, are doomed, unless
| they are monopolies. Nokia didn't have the market power to
| succeed in a changing world with its lackluster leadership.
| sturza wrote:
| What did they use Obj-C for?
| aaronbrethorst wrote:
| You can click through to view matching files:
| https://github.com/SymbianSource/oss.FCL.sf.os.kernelhwsrv/s...
|
| In this case, it seems the answer is nothing. It's just a bug
| in the GitHub language detection code.
| dancemethis wrote:
| The best thing about Symbian is that "it was never actually
| Symbian, it's S60 or whatever".
| jokowueu wrote:
| In my opinion it's the best phone first os .
|
| Tried it a few years ago and it was perfect
|
| Happy it's been opensourced
|
| interesting forks out there as well
| www.github.com/squaklabs/miraicat-kernel
| jillesvangurp wrote:
| I worked at Nokia when management stubbornly kept flogging the
| dead horse that was Symbian. It didn't work. It just wasn't
| good enough. Android, even in it's early versions was hardly
| perfect but still ran circles around Symbian. Android at the
| time had issues with stability, features, performance, etc. But
| it was a breath of fresh air compared to Symbian devices which
| had even more of those type of issues. And of course the iphone
| redefined what a smart phone should be around the same time.
|
| Nokia actually opensourced it around that time as well. Symbian
| has been open source for well over a decade. This looks more
| like the retirement of what remains of that effort, which
| included the Symbian Foundation. Presumably, by now there are
| very few; if any, commercial users of Symbian left. So, they
| are parking the source code at Github for whomever still has
| some use for it. As you can see from the commit logs,
| development has been dead since 2010. I seriously doubt that is
| going to change.
| Ste_Evans wrote:
| Nokia's problem was their UI, which was not controlled by
| Symbian, not the underlying OS. Hundreds of Symbian-OS based
| phones were on the market from 2001, including in the
| Japanese market which had the most testing. The p800 and p910
| had a UI similar to iPhone and Android in 2003, 3 years
| before the iPhone, on 3G networks. The second version of the
| Symbian OS kernel from 2003 was real time i.e. a comms stack
| could be run together with the apps off the one CPU. Are the
| Linux kernel or iOS kernel real time now even?
|
| Android OS and iOS are hacks of desktop OSes so are optimised
| for performance rather than battery life or memory usage;
| Symbian OS was designed as a mobile OS from the beginning
| optimising power and memory management.
|
| It was the timing of Google's IPO which scuppered Symbian.
| Google were able to spend billions getting Android in place
| to capture Symbian's market share and customers as iPhone
| buzz grew the market.
| jillesvangurp wrote:
| You are right that there were lots of Symbian
| manufacturers. Notable is that most of those were gone from
| the market by 2010. Windows CE eroded the market share and
| Nokia being so dominant meant most of its competitors did
| not want to be second in line for OS updates and influence.
| When Ericsson gave up being a phone manufacturer (they had
| their own UI platform for Symbian), the rest of them
| disappeared quickly.
|
| By the time Nokia took ownership of Symbian, it was
| effectively the only company left still depending on it.
| The complex ownership of Symbian was one of the reasons it
| took many years to get operating system releases to market.
| Because first Symbian had to release a new version, which
| would only happen every few years or so and featured a lot
| of design by committee style decision making. And then it's
| users/owners would design products around that, which also
| took years.
|
| It did not help that Nokia was a hardware company ran by
| electrical engineers that did not realize it was being
| bottle-necked on software. So, you would get new S60
| products featuring bugs that had been fixed in other S60
| products because they literally forked the same code base
| those were based on but before the bug had been patched. It
| was beyond stupid. And S60 was indeed a dumpster fire. One
| of the (many) issues with it was that it did not actually
| have any touch screen capability because Nokia killed that
| off around the time the rumors about the iphone started
| swirling. They then rushed out a version of S60 (v5.0) to
| "compete" with the iphone that re-created some of that. But
| then they also still had lots of v3.0 S60 products in the
| market for several years. Which did not help the messaging.
|
| 5.0 was a rush job and the initial products tanked hard.
| First there was the tube and then the N97. Both were
| products with lots of software issues. And subsequent
| efforts to fix it did not improve things. Most of the fixes
| amounted to too little too late.
| pavlov wrote:
| Nokia did their best to kneecap other vendors using
| Symbian by fragmenting the base OS, which was a terrible
| strategy in retrospect.
|
| But somehow they also managed to do it internally. The
| Series 90 Symbian UI could have been a real contender.
| This is a touchscreen smartphone from 2004:
|
| https://en.wikipedia.org/wiki/Nokia_7710
|
| But Nokia canned this advanced Symbian UI as soon as it
| shipped, and instead they started bolting features onto
| the already terrible keypad-driven S60 UI. Oh, and they
| also spun up a Linux touchscreen effort seemingly to
| ensure a total lack of focus and clarity about Nokia's
| software strategy.
| LightG wrote:
| Karma.
|
| I was so disppointed (as a customer) at the trajectory at
| the time. It could have been so much more and I was
| willing it on.
| edderly wrote:
| No, the OS was a mess. The UI split was the root of the
| nightmare.
|
| Nokia were "running" (perhaps should read ruining) Symbian
| well before they bought it. They were only one of the four
| or was it five co-owners, but they ran rings around the
| others when pressuring Symbian leadership. They were the
| only phone manufacturer with a dedicated product support
| org, and their pre-prod devices were available in core
| engineering teams unlike Moto et al. Nokia were the key
| players to create a Symbian OS core without a coherent UI
| (Techview lol), no TCP/IP stack, no telephony stack. They
| helped reduce Symbian OS to swiss cheese because they were
| so concerned with with recouping their investment from gen
| 1 SOS products and terrified their competitors at the time
| got a tiny leg up.
| secondcoming wrote:
| Techview was a barebones UI used by Symbian devs on the
| x86 emulator and ARM reference boards (TI OMAP H2 and
| H4). It never appeared on any phone.
| edderly wrote:
| Indeed. So imagine doing performance profiling on a 90s
| UI framework from Psion and then getting feedback from
| S60 three months later after an integration cycle that
| you have a core perf or latency problem.
| sergers wrote:
| I imported a Panasonic x800 from japan to Canada in 2005.
|
| Ran Symbian 2.0
|
| I didn't even know Symbian was available on non nokia
|
| Was very advanced for the time, everyone was impressed here
| as there werent any similar devices locally available.
|
| This was my last phone before moving over to blackberry to
| get on the BBM bandwagon(after the x800 fell, and hit the
| push button opener and popped open the screen and
| cracked... With no locally available parts wasn't worth it
| to fix....).
|
| Never had to do anything from the dev side, but the
| usability/functionality was steps ahead at the time
| secondcoming wrote:
| And we know now that Google wanted its own OS so it could
| scrape all the data it could from phones. That wouldn't
| have been possible with Symbian.
| jojobas wrote:
| I don't know, Nokia C7 was pretty good in 2011, Android was
| nowhere near it.
|
| Granted, I never tried developing for it.
| forty wrote:
| Yeah, I had a Nokia E65 (2007) and with Opera mini I was
| able to browse the real web normally. That's why I never
| quite understood what was all the "revolution" around
| iphone (except the touch part, but that seemed to me to be
| a really bad idea at the time, as someone could not stand
| fingers on screens ^^)
| _448 wrote:
| Symbian was not in a dictating position as Google or Apple
| are. Symbian was a complex company structure with major
| handset manufacturers having their separate agendas. People
| at Symbian had to walk a very tight rope catering to the
| demands of everyone. Not an easy task.
| pjmlp wrote:
| I was on the Networks business unit during those days, and
| even today, trying to use Android NDK still makes me miss
| Symbian C++ despite its warts, it is incredible how Android
| team has managed to make a mess out of it.
| js8 wrote:
| I had Nokia E71 (?) with Symbian, worst phone I had, I replaced
| that with Palm 650 (not sure I got model numbers right).
|
| The Symbian UI was extremely clunky. I am not sure it even had
| touch screen. They had whole keyboard, but you had to navigate
| menus with arrow keys. Why not give user the full power of the
| keyboard, like Emacs or Vim? Why can't I have menu options on
| hotkeys?
|
| I think people forgot about how bad phone UIs were before Steve
| Jobs' heavy focus on UI. And I am no fan of touch-based
| controls, still want a proper keyboard.
| nix23 wrote:
| What?? The E71 was the best phone i ever had!! I loved that
| thing until it was "stolen" at dehli airport...
| ljf wrote:
| Agree, blew me away as a step up from e61 - I did so much
| in both phones, loved 'SportsTracker' on them, and using
| proper turn by turn GPS satnav.
|
| I missed that phone when it died, but Android on the Dell
| Streak was great step onwards for me.
| secondcoming wrote:
| Symbian never had a UI. Phone manufacturers were expected to
| build their own. There were several; Nokia's Series 60 would
| be the one most are familiar with. That sucked a lot. Nokia
| were terrible at software.
|
| There's probably a business lesson in there somewhere about
| how your biggest customer can become synonymous with your
| actual product, and you get ruined by association.
| eliasson wrote:
| In some way they did. UIQ was a subsidary owned by Symbian
| that made the UI stack for Sony Ericssons P800, P900 and a
| few Motorola devices.
| vesinisa wrote:
| Nokia actually bought Qt to help them make a modern GUI,
| and had Qt/QML ported to Symbian S60. I was fortunate
| enough to develop a few apps on it back in the day and
| surprisingly - it didn't suck.
|
| QML remains to this day superior framework to native
| Android UI development. Only Jetpack Compose, and SwiftUI
| on iOS, are starting to come on par with what Nokia had
| with Qt/QML over a decade ago.
|
| Nokia actually had all the right pieces (Qt, Maemo/MeeGo,
| Symbian for feature phones, unparalleled engineering and
| manufacturing talent) for continuing their world
| domination, but their management was just laughably bad. It
| was all lost to in-fighting between teams and an
| inefficient middle manager heavy corporate culture it
| seems.
| hulitu wrote:
| > I think people forgot about how bad phone UIs were before
| Steve Jobs' heavy focus on UI.
|
| And years later they are still terrible. At least Android
| looks like an interface designed by people who have never
| seen GUIs before: GUI elements (warning) obscuring other GUI
| elements with no possibility to move them.
| chunk_waffle wrote:
| You think Android is bad... try Phosh
|
| "Hey let's take GTK3 with all it's problems and love for
| empty space and put that on a phone..."
| LtWorf wrote:
| well considering that phosh has 0.000000000000000001% of
| the people working on it that android has...
| mnd999 wrote:
| There's no license though, right?
| gonzo41 wrote:
| Hard disagree. I really loved candybar phones. I just wished
| that Nokia/Microsoft had picked up android for their feature
| phones. IMO, the best OS is the one that has access to banking
| applications and lots of vendor support.
| initramfs wrote:
| "Symbian Source Code Final repositories from the defunct Symbian
| Foundation"
| [deleted]
| anta40 wrote:
| So, how can we build this thing? No documentation/README etc
| systemvoltage wrote:
| You've ever been to a junkyard? If you pick up a broken
| amplifier, it's not going to have a user manual taped to it.
| You're going to have to figure things out. This is essentially
| code junkyard. 13 years old and rusting.
| edderly wrote:
| I'd try to build a textshell image, maybe the emulator or the
| beagleboard
| https://github.com/SymbianSource/oss.FCL.sf.adapt.beagleboar...
| edderly wrote:
| Oh look qemu too
| https://github.com/SymbianSource/oss.FCL.sf.adapt.Qemu
|
| https://github.com/SymbianSource/oss.FCL.sf.adapt.Qemu/blob/.
| ..
| secondcoming wrote:
| You will need to find a development kit somewhere.
|
| The documentation on this random website seems accurate
|
| https://docs.huihoo.com/symbian/nokia-symbian3-developers-li...
| initramfs wrote:
| OP Here. Found that there's a previous thread, with more info
| SDK tools: https://news.ycombinator.com/item?id=31492447
| pmarreck wrote:
| Brings back memories of hacked N-Gage titles running on my Not-N-
| Gage-But-Same-Hardware-And-OS Nokia lol
|
| Seriously though I cannot understate what a step it was to go
| from that to the first iPhone
| zokier wrote:
| What is surprising is that Symbian did not manage to pivot to
| embedded market in any way, to compete with VxWorks and its
| likes. It was a fairly advanced RTOS at it's heart afterall, and
| proven to work well on ARM platforms.
| miohtama wrote:
| Symbian started as an embedded platform "OS for toasters." It
| was independent, used by mobile phone manufacturers like Sony,
| Ericsson, others. It was also used in non-mobile phone
| applications.
|
| Nokia bought the whole Symbian in-house in attempt to compete
| against Android and iOS. Others non-Apple brands had already
| switched to Android in this point.
|
| Steven Elop joined Nokia had a had management bonus incentives
| to sell the Nokia Mobile Phones (not Networks) to Microsoft.
| Which he did.
|
| It was good for Nokia shareholders. Few years later Microsoft
| had screwed up things even worse and wrote Nokia purchase value
| from $7B to zero.
|
| In this point, Symbian was buried long ago. Microsoft had never
| incentive to spin it out or make it a success story. Their only
| goal was Windows dominance.
| dm319 wrote:
| When I got my Nokia E90 in 2007ish, it's hard to describe the
| power and potential in that device. It was multitasking, 3G, GPS,
| camera, video, email, web, app store etc. The big downfall of
| these devices was that consumers weren't familiar with the types
| of mobile contracts, and specifically data. The iphone got it
| right by only selling the iphone with a data package, whereas
| people bought these symbian smartphone and later found they
| couldn't make full use of them. Not to mention back then we had
| to set up the internet connection ourselves.
|
| I moved onto the N900 when my E90 slipped out my linen trousers
| in a taxi in Morocco.
| nikanj wrote:
| The software quality was also absolute dogshit. Your phone
| would ring, you would click on the button to answer, and the
| phone app would just crash.
|
| It was nice having irc and a good ssh client on my phone, but
| the phone was simply not stable enough for a daily driver.
| dm319 wrote:
| That's weird, the E90 was the last phone I had with reliable
| phone features. The N900 could be buggy, but I've had iphones
| and pixels since then and I give answering a phone that is
| ringing in my pocket to be very often a miss, even now. More
| an issue with a touchscreen I think.
| thriftwy wrote:
| N900 was a mighty beast, I only moved off it when its power
| port tore away.
|
| Too bad Nokia did not have the focus to stick to one platform
| (Maemo vs. MeeGo vs. Windows Phone)
| seba_dos1 wrote:
| It took me about a decade to move from N900, and even then
| it's still handling one of my SIMs.
| ploum wrote:
| The N900 was running a modified Debian Linux version call
| Maemo. Not related to Symbian at all.
| fork-bomber wrote:
| In an attempt to learn more, I accidentally misspelt Symbian as
| Sybian on Google search. The world truly is er wondrous. Cough.
| edderly wrote:
| Does anyone know what license this is under?
| npteljes wrote:
| They don't state explicitly, so it's basically source-available
| software, not Open Source (nor Free Software).
|
| https://www.theregister.com/2011/04/06/nokia_confirms_symbia...
| chronomex wrote:
| another copy, in the original Mercurial, and with mediawiki dumps
| too: https://archive.org/details/SymbianOpenSource
| thunkshift1 wrote:
| How to begin to start understanding a codebase like this? Where
| does one start
| _448 wrote:
| Depends on your interest. It is an operating system, so has lot
| of different parts. It is a microkernel with other parts as
| servers e.g for graphics there is window server, for filesystem
| there is file server etc.
|
| Start from the server for the area you are interested in and
| then move down to the related drivers and finally the kernel.
| You will need to understand some of the design patterns used in
| Symbian though, which are bit unique.
| borissk wrote:
| I see why it was so slow - there are DELAYs sprinkled everywhere.
___________________________________________________________________
(page generated 2022-11-12 23:02 UTC)