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
4
votes
1 answer

Why Do Page Faults and Unrecoverable Errors Need to be Unmaskable?

Looking for a quick clarification on why unrecoverable errors and page faults must be non-maskable interrupts? What happens when they aren't?
coderboy99
  • 103
  • 8
4
votes
3 answers

Finding out what folders and files take the most space on a Windows computer?

1) What good software out there already exists that allows one (preferably visually) see what folders and files are taking the most space on one's computer (Windows Vista compatible) 2) Say I wanted to write a this program myself, what opensource…
algorithmicCoder
  • 6,595
  • 20
  • 68
  • 117
4
votes
2 answers

what would the system software have to do if the processor did not generate interrupts?

Question related to interrupts if a processor didn't have the ability to service interrupts, what would the system software have to do to make sure that each keyboard keystroke was detected, each mouse movement was registered, ethernet (network)…
4
votes
2 answers

fastest tcp/ip stack

What is the currently accepted OS with the fastest TCP/IP stack? Im not interested in bandwidth but rather speed. Ive seen NetBSD and Solaris as top dogs. Regards
BAR
  • 15,909
  • 27
  • 97
  • 185
4
votes
1 answer

How are system calls called?

So I understand what system calls are for and what they do. Pretty much anything that requires a computer's resources invokes a system call at some point. My question is, how does a user-created program in Python for example compile and know where…
4
votes
6 answers

What is the fastest way to check whether a directory is empty in Python

I work on a windows machine and want to check if a directory on a network path is empty. The first thing that came to mind was calling os.listdir() and see if it has length 0. i.e def dir_empty(dir_path): return len(os.listdir(dir_path)) ==…
rob
  • 239
  • 2
  • 10
4
votes
1 answer

Putting CPU and Memory Management model all together

WARNING: This is long but I hope it can be useful for people like me in the future. I think I know what program counter is, how lazy memory allocation works, what MMU does, how virtual memory address is mapped to physical address and the purpose of…
CppLearner
  • 16,273
  • 32
  • 108
  • 163
4
votes
1 answer

What's the difference of LastWriteTime and LastAccessTime

I have a bug on while trying access files ordered by LastWriteTime and trying to understand the difference of LastAccessTime I tried to look for answer for the difference but didn't find any. LastWriteTime: Gets or sets the time when the current…
user2004403
  • 193
  • 2
  • 13
4
votes
2 answers

Taking the results of a bash command and using it in python

I am trying to write a code in python that will take some information from top and put it into a file. I want to just write the name of the application and generate the file. The problem i am having is that i can't get the output of the pidof…
Florin Dita
  • 43
  • 1
  • 3
4
votes
2 answers

How does the OS decide how to run a .exe

Assuming I start a .exe file on Windows. This file could be written in C++, or in Java or C# and compiled to an .exe. For C++ the operating system can execute the commands directly. But how does Windows know that it has to start the runtime (JVM or…
Darem
  • 1,689
  • 1
  • 17
  • 37
4
votes
2 answers

"Unable to find thread for evaluation." while running an external program in Visual Studio Code

I want to remote control 'my_program' using os. import os os.system(my_program) While in debug mode in VS-Code i can start the 'my_program', but as soon as it opens, i've no available thread in VS-Code to work with. Or atleast that's what i'm…
4
votes
2 answers

How to check if any files are open in a directory?

I am trying to delete all files in a folder, but if a file is left open, it will not delete. I need to check the folder for any open files, write their names to a text document, and then close the open files. As I don't have much experience, I am…
Jackson148
  • 115
  • 1
  • 2
  • 9
4
votes
2 answers

Go application run as systemd service

We are running a Golang application that internally runs an autoupdate module to recieve over the air updates. At the time of a new update, the autoupdate module downloads the new version from s3 and invokes an autoupdate bash script present in the…
achilles
  • 536
  • 5
  • 16
4
votes
3 answers

Combine mp4 files by order based on number from filenames in Python

I try to merge lots of mp4 files from a directory test into one output.mp4 using ffmpeg in Python. import os path = '/Users/x/Documents/test' for filename in os.listdir(path): if filename.endswith(".mp4"): print(filename) Output: 4.…
ah bon
  • 9,293
  • 12
  • 65
  • 148
4
votes
2 answers

What are the factors by which virtual memory is limited?

What i know is that size of Virtual memory is only limited by the number of address lines. But in Operating System internals and design principals by William Stallings i read that virtual memory is also limited by size of secondary memory…
Terminal
  • 1,969
  • 5
  • 21
  • 37
1 2 3
99
100