Questions tagged [operating-system]

An operating System (OS) is a software program whose role is to be an abstract layer between software requisitions for resources and the hardware available, manage input/output, memory allocation/deallocation, file systems, among other basic tasks a device (not necessarily a computer) should do.

An operating system (OS) is a basic software whose role is to be an abstract layer between software requisitions for resources and the hardware available. The basic components of an operational system can be listed as:

  • Boot loader

Although some may say it is not part of the OS, it's the starting point where the hardware after doing booting routines transfers the control to a small procedure that will bring up the entire system

  • User interface

Can be graphical or text-based, is the central point of communication between the user and the OS

  • Kernel

The core of the OS that manages all the resources of the hardware according to the requisitions. Kernels can be either a micro kernel or a monolithic kernel. Both types include the following functionality:

  • Process management (scheduling, multitasking, pseudo-parallelism, and so on)
  • Memory (and virtual memory) management
  • Inter-process communications (IPC)
  • Interrupt management

Monolithic kernels include these additional features:

  • File system and disk access organization
  • Device management (with the aid of device drivers, plug-and-play routines, dynamic modules, and so on)

These features are not included directly in a micro-kernel, but are instead implemented in tasks. One example of a fairly widely used micro-kernel is QNX. As well, many hypervisors are micro kernel designs. A major argument for micro-kernels is that their small size makes them easier to analyze and more secure.Tanenbaum

Most well known operating systems are monolithic. In fact, the majority of commercial and Open source OS's are monolithic. Generally they allow faster hardware response.

Book : Operating System Concepts by Abraham Silberschatz

Recommended preliminary reading before posting a question: OSDev Wiki

See also: .

13710 questions
5
votes
4 answers

Does implementation of C libraries depend on OS?

I'm just wondering that there are different functions in different OSs, but they serve the same purpose, or it can be said that different OSs have different system programming languages (like that of Windows vs that of UNIX). So, for example, as C…
PalashV
  • 759
  • 3
  • 8
  • 25
5
votes
2 answers

how to get OS name in Windows Powershell using functions

I'm trying to return OS name using functions in Windows Powershell. I built this code, but i don't get any results. Any help please? Function Get-OSName { (Get-WmiObject Win32_OperatingSystem).Name } "Name of the OS: $(Get-OSName)" Thank you.
aiden87
  • 929
  • 8
  • 25
  • 52
5
votes
2 answers

When do memory addresses get assigned?

Consider the following CPU instruction which takes the memory at address 16777386 (decimal) and stores it in Register 1: Move &0x010000AA, R1 Traditionally programs are translated to assembly (machine code) at compile time. (Let's ignore more…
James
  • 2,445
  • 2
  • 25
  • 35
5
votes
2 answers

How to disable android device usb port

I am trying to search if there is a way to disable android device usb port, software level mainly. So users can still charge android device but cannot communicate with PC anymore. I got some clues in link1. But it looks there is not an easy way for…
peacepassion
  • 1,918
  • 2
  • 15
  • 19
5
votes
1 answer

operating systems - TLBs

I'm trying to get my head round this (okay, tbh cramming a night before the exams :) but i can't figure out (nor find a good high level overview on the net) of this: 'page table entries can be mapped to more than one TLB entry.. if for example every…
stabGreeol
  • 53
  • 3
5
votes
3 answers

Get the Linux distribution name in PHP

Is there a way in PHP to figure out the Linux distribution name of a remote server? Extracting from $_SERVER['HTTP_USER_AGENT'] is just the OS name of the client's machine. It is not what I want. I tried php_uname() echo 'Operating System:…
Sithu
  • 4,752
  • 9
  • 64
  • 110
5
votes
1 answer

Linking issues with OS X 10.10

I'm trying to compile some code in OSX 10.10 using the latest Xcode cmd line tools. Compilation works, but linking is a nightmare. First, I get an error that a symbol is multiply defined. This error is correct, but the definitions are identical…
nomad
  • 1,809
  • 2
  • 18
  • 33
5
votes
2 answers

Making an OS using linux kernel

I have been searching for a past few weeks about how to making an OS. I have also read may questions regarding how to make an OS like this one, What are some resources for getting started in operating system development? . I want to make an OS…
5
votes
3 answers

How to create symlinks in windows using Python?

I am trying to create symlinks using Python on Windows 8. I found This Post and this is part of my script. import os link_dst = unicode(os.path.join(style_path, album_path)) link_src = unicode(album_path) kdll =…
gabriel
  • 257
  • 2
  • 4
  • 12
5
votes
6 answers

Is it possible to access physical address 0?

In C/C++, it is not allowed to access data at address 0. However, the physical memory are numbered from 0. And, in DOS era, the interrupt vector table was located at physical address 0. The first interrupt vector was the handler of the…
xmllmx
  • 39,765
  • 26
  • 162
  • 323
5
votes
1 answer

sigwait() repeatedly unblocked by SIGUSR1

I am writing a program that takes a list of UNIX commands from a file and executes them sequentially. To keep everything in order, I must have each command initialized and kept waiting for SIGUSR1 via sigwait(). When every command is initialized,…
Miss Rainbowdash
  • 205
  • 1
  • 10
5
votes
1 answer

zlib.gzip produces different results for same input on different OSes

The following code (on node js v0.10.28): var zlib = require('zlib'); var buf = new Buffer('uncompressed'); zlib.gzip(buf, function (err, result) { console.log(result.toString('base64')); }); produces the string: on Win 7…
Mrchief
  • 75,126
  • 20
  • 142
  • 189
5
votes
3 answers

how can i get my Netbeans output on a terminal window?

Is there anyway for me to run my code in netbeans and get the output in a terminal window rather than the output window of netbeans? (I'm using netbeans 8.0.1 on ubuntu 12.04) Thanx in advance
Sudh33ra
  • 2,675
  • 3
  • 15
  • 19
5
votes
2 answers

How do non c languages interact with operating system?

On linux (for example), we can directly make system calls using the api provided by OS (open/close/read/write) or we can use functions provided by libc (fopen etc) in C. How is it achieved in other languages?
tan
  • 116
  • 7
5
votes
1 answer

Create a user level thread or kernel level thread using `pthread_create`?

Question: How can one create a user level thread or kernel level thread using pthread_create? Note: I checked the documentation of pthread_create in this link and I didn't find any parameter that can be specified to tell OS to create either user…
Node.JS
  • 1,042
  • 6
  • 44
  • 114