Concepts of OS
An operating system is made up of different parts that each carry out specific tasks. Although the majority of operating systems have different physical structures, logically, individuals share many of the same parts. Each element of a system should be a clearly defined part that aptly represents the features, inputs, and output values [5]. The eight elements of an OS are as follows:
Whenever an application requests the kernel to load a file, virtually every operating system will carry out the following fundamental tasks:
A Unix-like (OS) for computer systems, data centres, supercomputers, portable devices, as well as embedded systems, Linux is open - source software and user-developed. Being one of the widely accepted operating systems, it is backed on almost all popular computing platforms, which include x86, ARM, as well as SPARC. Each Linux OS version controls hardware, starts and manages programs, and offers an interface in certain way. Thanks to the sizable planning profession, the variation of distribution options, and the fact that Linux has pervaded many areas of computing, there exists a Linux model available for just about every task.
For example, Linux has gained popularity as an OS for operating mobile devices with OS versions like Android, managing networks, performing compute-intensive tasks that require large compute cluster centre, operating databases, and also more [9].
As Linux is easily customisable and is created with the help of modules. Linux can indeed be improved for a range of functions based on the application that includes: networking achievement, computation achievement, distribution on particular hardware platforms, as well as implementation on systems with constrained memory, storage, as well as computing resources.
Users can customize a particular Linux distribution to include particular kernel configurations, or they can select various Linux distributions for variety of applications[6].
Version 1.0 was the initial relaunch from Microsoft. It became usable with Windows for both private and professional use on Nov 10th, 1983. Afterward, it became accessible on a variety of Windows versions, the more recently Windows 10[3].
In 1993, NT 3.1, the very first version of Windows oriented forward into companies, was released. After which, Windows 3.5, Windows 4/0, and Windows 2000 were made available. The multiple Windows XP editions that were released in 2001 were designed for both a residence as well as an office environment. It was developed using typical x86 hardware, including AMD and Intel processors. As an outcome, it can run on hardware made by different companies, including HP, Dell, Sony, as well as home-built PCs. This same Windows operating system was made by Microsoft. Users only have access to a computer because of the operating system. Since it comes preloaded just on majority of brand-new desktops and laptops, Windows is currently the most commonly used operating system worldwide (DCs). Windows has gone through many iterations since that time, but the most widely used versions are Windows 10 (delivered in 2015), Windows 8, Windows 7, Windows Vista, and Windows XP (2001)[10].
Other names for Windows Professional include Window Pro and Win Pro. Power users as well as small to medium-sized businesses will benefit from this improved version of Windows. Along with all of Windows Home's characteristics, it also provides the following:
Additionally, it provides 34-day postponement, flex scheduling, and much more Windows keep updating configuration options [9].
Android is an OS designed for handheld devices such as smartphones as well as tablet devices which is open source as well as predicated on Linux. This Open Handset Alliance, headed by Google, as well as other companies created Android.
Android provides an uniform approach to mobile app development, so designers simply require to make for Android as well as their applications ought to be capable of running on several Android-powered devices.
Google released the very first beta version of something like the Android Software Development Kit (SDK) in 2007, on the other side, Android 1.0, the very first commercial edition, was unveiled in Sept. 2008.
At the Google I/O symposium on June 27, 2012, Google unveiled Android 4.1 Jelly Bean. Jelly Bean is indeed a future intervention whose primary aim is to improve the user interface's capabilities and performance.
Android's programming language is accessible thanks to free as well as open-sourced software licencing. The majority of Google's code is released underneath the Apache License 2.0, as well as the remainder, incorporating adjustments to the Linux kernel, is launched underneath the GNU General Public License edition 2.
This same Software Development Kit of Android is generally used to generate Android applications, that are particular programming in Java. When they have been generated, Android applications are easily simple to package as well as one can sell through online stores such as, SlideME, Google play, Opera Mobile Store, F-droid, Mobango, as well as the Amazon Appstore.
More than 190 countries all over the globe, incorporating tens of millions of portable devices, run Android. Over a million additional Android devices are stimulated every day globally [8].
To make a few extra rooms for procedures, the available storage is gathered in a sizable memory chunk through the process of compression. Swapping in dynamic memory causes multiple memory fractions to be created as a result of processes coming in and going out. The term "compaction" describes the blending of all the blank rooms and procedures. Although compaction aids in the reduction of fragmentation, it consumes far to much CPU time[4]. Rather than having numerous small openings for new jobs, it keeps moving each of the populated parts of the store with one side as well as leaves one sizable open space. Every time a new job is allocated to memory or completed from memory; relocation data should be updated by the system as part of compaction. The OS regularly has problems assigning memory to procedures, even when there is sufficient free space inside the memory to satisfy an application's memory needs. When a process's memory request cannot be satisfactory because the free memory isn't really contiguous, this is referred to as external fragmentation. To resolve these concerns, compaction is being used [3].
But even though the compaction method is very helpful in enhancing memory utilization effectiveness and lowering external storage fragmentation, the main problem associated with it is that a significant number of seconds is ruined in the procedure, while the CPU sits empty, lowering the effectiveness of system [1].
First, we have to check these two, if (offset < segment limit) for an issue. If it is, then we have to follow, offset + base address for getting the accurate physical address. If we don’t get this, there will be segment fault.
here, 430<600
so,
210+ 430= 540
here, 10<15
90+10= 100
here, 500< 100, which is false there will be segment fault.
here, 400<580,
so, 1327+400= 1727
here, 115<96, which is false there will be segment fault.
Since "each process" is a single entity involved in allotment, it requires a portion of primary memory to operate. The memory manager helps the programmer store and load data in the main memory and is also charge of assigning primary memory to procedures [2].
The memory manager can assign a part of main memory to "so every process" for its exclusive use because main storage could be space-multiplexed.
Defining the following tactics:
Best fit: A method is apportioned to the smallest available block of free memory by the allocator.
First fit: Because there could be numerous gaps in the memory, the operating system starts at the beginning of main memory as well as allocates memory from the first space it finds that is big enough to fulfill the request in order to save time while evaluating the free slots.
So, yeah of course, the methodologies are based on the assumption that only one procedure is permitted to reside in a gap at a time [10].
Example;
Given; Blocksize = {110, 510, 190, 310, 590} and the processSize = {213, 418, 113, 427};
Process No |
Process Size |
Block no. |
1 |
213 |
2 |
2 |
418 |
5 |
3 |
113 |
3 |
4 |
427 |
Not allocated |
Because it only tries to find the very first block, which is sufficient to allocate a process, it enjoys the advantage of being the fastest quest.
However, if space could be allocated, it might have issues preventing processes from taking it. In the examples discussed above, procedure number 4 (with a size of 427) doesn't really receive memory. Nevertheless, if we had allocated memory using best fit allotment (block no 4 (of size 310) to process 1, block no 2, process 2, block no 3, and block no 5 to process 4), it would have been possible to do so.
[1] Z. S. Ageed, S. R. Zeebaree, M. M. Sadeeq, S. F. Kak, Z. N. Rashid, A. A. Salih, et al., "A survey of data mining implementation in smart city applications," Qubahan Academic Journal, vol. 1, pp. 91-99, 2021.
[2] P. Srinuan, X. Yuan, and N.-F. Tzeng, "Cooperative memory expansion via OS kernel support for networked computing systems," IEEE Transactions on Parallel and Distributed Systems, vol. 31, pp. 2650- 2667, 2020.
[3] H. R. Abdulqadir, S. R. Zeebaree, H. M. Shukur, M. M. Sadeeq, B. W. Salim, A. A. Salih, et al., "A study of moving from cloud computing to fog computing," Qubahan Academic Journal, vol. 1, pp. 60-70, 2021.
[4] Z. S. Ageed, S. R. Zeebaree, M. A. Sadeeq, M. B. Abdulrazzaq, B. W. Salim, A. A. Salih, et al., "A state of art survey for intelligent energy monitoring systems," Asian Journal of Research in Computer Science, pp. 46-61, 2021.
[5] B. T. Jijo, S. R. Zeebaree, R. R. Zebari, M. A. Sadeeq, A. B. Sallow, S. Mohsin, et al., "A comprehensive survey of 5G mm-wave technology design challenges," Asian Journal of Research in Computer Science, pp. 1-20, 2021.
[6] F. Q. Kareem, S. R. Zeebaree, H. I. Dino, M. A. Sadeeq, Z. N. Rashid, D. A. Hasan, et al., "A survey of optical fiber communications: challenges and processing time influences," Asian Journal of Research in Computer Science, pp. 48-58, 2021.
[7] S. M. S. A. Abdullah, S. Y. A. Ameen, M. A. Sadeeq, and S. Zeebaree, "Multimodal emotion recognition using deep learning," Journal of Applied Science and Technology Trends, vol. 2, pp. 52-58, 2021.
[8] M. A. Sadeeq and S. Zeebaree, "Energy management for internet of things via distributed systems," Journal of Applied Science and Technology Trends, vol. 2, pp. 59-71, 2021.
[9] Z. S. Ageed, S. R. Zeebaree, M. M. Sadeeq, S. F. Kak, H. S. Yahia, M. R. Mahmood, et al., "Comprehensive survey of big data mining approaches in cloud systems," Qubahan Academic Journal, vol. 1, pp. 29-38, 2021.
[10] M. A. Omer, S. R. Zeebaree, M. A. Sadeeq, B. W. Salim, S. x Mohsin, Z. N. Rashid, et al., "Efficiency of malware detection in android system: A survey," Asian Journal of Research in Computer Science, pp. 59-69, 2021.
You Might Also Like
Operating System Assignment Help
4 Reasons to Study Computer Science at University Level
ITSU1001 Introduction to Computer Systems and Networking Assignment Sample
Get 24x7 instant assistance whenever you need.
Get affordable prices for your every assignment.
Assure you to deliver the assignment before the deadline
Get Plagiarism and AI content free Assignment
Get direct communication with experts immediately.
Get
500 Words Free
on your assignment today
It's Time To Find The Right Expert to Prepare Your Assignment!
Do not let assignment submission deadlines stress you out. Explore our professional assignment writing services with competitive rates today!
Secure Your Assignment!