operating-system


How to decide if a “Device ” need an Operating System or not


How to decide if a "Device " need an Operating System(embedded OS ) or not?
This is a general interview question.
Any thought?
Thank you all.
In my opinion, if more then one application needs to be run on that device, it should have an operating system. Otherwise it would be a waste.
In my experience an operating system is essentially used
to manage resources on the device like scheduling tasks, allocating resource etc and
to abstract away some of the low level hardware interface like thread handling, interrupt handling etc.
If either of these functions are needed it might be a good idea to use an operating system. Now of course in all cases some form of the above two functions will be needed. But in simple devices it might be just easier to code up the specific function instead of trying to port an OS to the device. But in other cases where the device is a lot more complex it might be a better investment of time to try and use an OS versus having to code it all up.

Related Links

How does my operating system get information about disk size, RAM size, CPU frequency, etc
Solve thrashing with Optimal Algorithm
stacks growing downward and heaps growing upward, what if they encounter?
What is the difference between routine and process
How exactly do operating system and kernals update themselves?
What is the use of Virtual memory if i have a Very large RAM [closed]
did mirage OS implemented the linux kernel in OCaml?
Access to OS functions from CAPL
How hold and wait is different from circular wait?
Memory access time
what is the difference between waiting time and respond time in cpu scheduling
Operating system- GDT
I need fix the attached code to prevent the race condition, sem_wait(&account); and sem_post(&account)
schtasks “configure for (operating system)” option
Why the size of operating systems (clean install) is increasing?
OS Pathway Cannot be Found While Using Subprocess

Categories

HOME
cocoapods
office365
artificial-intelligence
magento2
macos-sierra
paypal-ipn
website
informatica
portable-class-library
malware
jint
linker
repair
hspi
bellman-ford
elastic-load-balancer
nexus3
pm2
freertos
google-awareness
xbox360
checkout
xsl-fo
infrared
adminlte
dashdb
pst
kaggle
amazon-sns
web-config-transform
android-cardview
openbravo
pyspark-sql
bobo-browse.net
ninject
credit-card
publishing
python-2.x
series
microsoft-certifications
listjs
ms-media-foundation
ftp-server
macports
uipickerview
dagger
contactless-smartcard
httphandler
transparency
windows-media-player
directwrite
cloudwatch
libreoffice-writer
sony-future-lab-n
aurelia-fetch-client
freshdesk
nivo-slider
dtd
cognos-tm1
nitrousio
rational-performance-test
xcode6.4
svnserve
nvda
django-testing
unsigned
exists
wikimedia-commons
perceptron
juniper-network-connect
smart-tv
nastran
dsa
mxe
window-resize
windows-rt
oracle-adf-mobile
prism.js
reference-counting
rails-api
xulrunner
cidr
oxygene
flipboard
map
lync-2010
boinc
stty
chartfx
oscilloscope
days
office-app
ip-geolocation
server-name
netstream
haiku
database-deadlocks
nsrangeexception
tablet-pc
digiflow
libxslt
downgrade
facebook-fbml
mysqli-multi-query
projectpier

Resources

Database Users
RDBMS discuss
Database Dev&Adm
javascript
java
csharp
php
android
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App