Friday, July 29, 2011

Paging

Hello friends in this post we are going to discuss on paging and how an operating system used it for memory management.

Paging is another memory management technique which widely uses virtual memory concept. When paging is used, the processor divides the linear address space into fixed-size pages (of 4KBytes, 2 MBytes, or 4 MBytes in length) that can be mapped into physical memory and/or disk storage. When a program (or task) references a logical address in memory, the processor translates the address into a linear address and then uses its paging mechanism to translate the linear address into a corresponding physical address.

Some physical memory is reserved for the operating system itself, and for its data structures. This is called wired memory, because it is not subject to paging. The rest of physical memory is managed via the paging mechanism, and is called the page pool. Whenever a virtual memory page that is not in physical memory is referenced, a page is allocated from the page pool’s free list and mapped to the required virtual memory address. Pages are returned to the free list when the memory has been unmapped or freed. Pages can be reclaimed from the free list if they are referenced again before the physical memory page has been reused.
OS performs an operation for storing and retrieving data from secondary storage devices for use in main memory. Paging is one of such memory management scheme. Data is retrieved from storage media by OS, in the same sized blocks called as pages. Paging allows the physical address space of the process to be non contiguous. The whole program had to fit into storage contiguously.

Paging is also used to deal with external fragmentation problem. This is to allow the logical address space of a process to be noncontiguous, which makes the process to be allocated physical memory.

You can also visit my other blogs:
Networking Concepts
Technomedia
Enter into world of Technology
Hina Rabbani Khar




Tuesday, July 26, 2011

Round Robin Scheduling

Round robin is the scheduling term which is being used for the purpose of algorithms which is mainly used for the purpose of operating systems. This system had mainly been used in order to handle out the processes which are incurred in the operating system which means that the time that is being taken for the opening of the program and then as a result the user is being shown with the process chart which is being drawn. The entire process is being done in equal portions where each and every item is being taken into account.


On the other hand a process schedule had been defined for the round robin scheduling system. This form is adopted in that case when the jobs or certain other tasks are to be performed. The round robin schedule is one of the easiest and simplest forms of doing the work and hence it can be carried out and implemented easily. The data is also being used in the round robin scheduling which means that in such a situation the user have to bear the data packet scheduling process. It had been found out that first come first serve basis is one of the alternative which can be used in the form of the round robin scheduling. This is one of that forms of scheduling which can be applied to other forms of scheduling as well and at time it is also used for the purpose of handling the problems too.

It is also used in the computation of the computer networks which is found to be quite helpful in the data packet scheduling process. The entire process of round robin scheduling generates about minimum and maximum of the results and it is referred to as the min-max fairness which means that each and everything is to be carried out on equal basis

Saturday, July 23, 2011

All about Semaphores

A semaphore is a synchronization mechanism that can be used to manage synchronization relationships and implement the access policies. A semaphore is a special kind of variable that can only be accessed by very specific operations. The semaphore is used to help threads and processes synchronize access to shared modifiable memory or manage access to a device or other resource. The semaphore is used as a key to access the resource. This key can only be owned by one process or thread at a time. Whichever task owns the key or semaphore locks the resource for its exclusive use.

Types:
Counting semaphores are used when you might have multiple devices (like 3 printers or multiple memory buffers).

Binary semaphores are used to gain exclusive access to a single resource (like the serial port, a non-reentrant library routine, or a hard disk drive). A counting semaphore that has a maximum value of 1 is equivalent to a binary semaphore (because the semaphore's value can only be 0 or 1.

Mutex semaphores are optimized for use in controlling mutually exclusive access to a resource. There are several implementations of this type of semaphore.

Implementation:
Semaphores can be implemented with a queue and an integer counter. You maintain the set of consumers in the queue, and when a consumer releases the semaphore, you retrieve the next entry in the queue and "wake" them to allow them to enter the critical section. When a consumer requests the semaphore, you simply push them onto the queue. If no one is in the critical section, you go ahead and grant the requester the right to enter the critical section.

Thursday, July 21, 2011

Real Time Operating System

A real time operating system is based on the OS which has the capability to perform a number of functions at a time. This RTOS only serves real-time applications. These real-time applications include robots, spaceships; research tools used by scientists and embedded systems like home appliances, cell phones and thermostat.

RTOS system captures the real time events and brings out the results which may slightly differ from the reality. It’s processing and computation totally depends on the way it is programmed. RTOS can be judged as how quickly it performs the operation and how accurate the results are. Most important factors which increase the working of this system are low interrupt latency and a low thread switching latency.

The real time operating system is designed keeping in mind every aspect in mind of real life. This operating system is designed on two basic principles. First design pattern is that it should focus on event-driven programming so that tasks can process depending upon their scheduling priorities. Second design refers to time sharing feature so to process tasks on the basis of clock interrupts.

In RTOS allocation of memory is the most critical task. Two elements are of significant importance in case of memory allocation. First one is speed and second is the fragmentation of free region during the memory allocation process.

Tuesday, July 19, 2011

Golf terms

Golf is now the emerging game that is popularized among all the people. Earlier only the rich and educated people played it. Now the popularity of the game is wide spread, so that every one has interest in playing the game. This particular game attracts all the types of crowds regardless of their age. Many people are now interested in learning this game. Mainly students involve themselves in this game so much and are very eager to learn the game. They are interested in learning in all the nuances, rules and regulations of the game. Since many people are interested in learning the game, there are many golf academies newly erecting in and around the city. Golf academies bear the responsibility to teach the young generation about the game. The rules of the golf etiquette are the first and fore most things, the golf academies teach their students. The rules of the game mainly aim at the safety of the golfers and to the pace of the play, which helps in keeping the game enjoyable. The golf etiquette is an essential part of the game. This is something very vital that all the new comers and the new beginners should learn on the course. For any game to be played successfully, the instruments used for the play shohttp://www.blogger.com/img/blank.gifuld be manufactured or prepared with utmost care and you can found all these instruments at their Golf shop. A standard set of a golf club mainly consists of three woods, eight irons and a putter. Actually according to the rules and regulations of the play a golfer is allowed to carry 14 clubs in the bag. The more clubs the player carries the easier is his victory. To know more about golf academies, please visit Golfreisen.
The above site explains you all the details about the game. They are one of the largest German golf shops with a full range of all brand names. You can also visit Golfkurse it will be useful for you.

Golf Platzreife means "Complete and utter load of bollocks" in English and I will tell you why.

The idea behind it is that you answer a few questions about golf rules and then play a few holes of golf with your instructor. As long as you do not kill too many people whilst playing then you get your 54 handicap... Seriously.. 54 handicap. Basically a 54 handicap means you cannot actually play golf at all and should not really be allowed on a half-decent golf course... But everybody must start somewhere I suppose.....

Monday, July 18, 2011

Demand Paging

Virtual memory can be implemented by a technique called demanding paging. It is a technique in which a Page is brought into memory when it is actually needed.
A typical life cycle of a process is as follows:

1. When a process is initiated, the operating system must at least load one page in real memory. It is the page containing the execution part of the process.
2. Execution of the process commences and proceeds through subsequent instructions beyond the starting point.

3. This execution continues as long as memory references generated by this page are also within same page. The virtual address created may reference a page that is not in real memory. This is called a page fault. It generates an interrupt that asks for the referenced page to be loaded. This is called demanding page.

4. The operating system will try to load the referenced page into a free real memory frame. When this is achieved the execution can continue.
5. Finally when the process terminates, the operating system releases all the pages belonging to the process. The pages become available to other processes.
In general, the operating system accommodates the new page by removing a currently loaded page that is not in use. This is called page replacement. It is important to remove a page that will not be accessed in a short time. It will reduce the number of page faults in the system.

Thursday, July 14, 2011

Ideal Place for Golf Club House

As in my previous posts i already discussed about the golf,rules,its history and etc.
Yesterday I was visiting some golf club house locations and in those the one that i really found interesting is Whisper Rock Golf Course Homes.They provides you such a wonderful location in Scottsdale area that is ideal for any golf course home.

The whisper rock golf club scottsdale attempts to demonstrate that a conventional commercial building system can be transfigured into a design solution that recalls a traditional lineage, that of the traditions of the game of golf, while simultaneously transcending traditional responses by commenting on the present. When the owner and originator of the golf facilities first asked us to take part in the design competition for the club I was hesitant, not being a golfer or knowing much about golf. His response was simply “its not just about golf, its about people and space!” As the finished clubhouse comes alive each day with activity and the passing of time, I am reminded that no matter the building type, scope, or size, in the words of Rudolf Schindler, “the perception of architecture is not in the eyes, but in the living.”

If you have any doubt or queries regarding buying or selling the club house in the space you can always contact to Holm Group that will help you in exploring more.

Multiprocessor thread scheduling strategies

Load Sharing: Processes are not assigned to a particular processor. A global queue of threads is maintained. Each processor, when idle, selects a thread from this queue. Note that load balancing refers to a scheme where work is allocated to processors on a more permanent basis.

Gang Scheduling: A set of related threads is scheduled to run on a set of processors at the same time, on a 1-to-1 basis. Closely related threads / processes may be scheduled this way to reduce synchronization blocking, and minimize process switching. Group scheduling predated this strategy.

Dedicated processor assignment: Provides implicit scheduling defined by assignment of threads to processors. For the duration of program execution, each program is allocated a set of processors equal in number to the number of threads in the program. Processors are chosen from the available pool.

Dynamic scheduling: The number of thread in a program can be altered during the course of execution.


Wednesday, July 13, 2011

Short,Medium and Long term scheduler

Long term scheduler determines which programs are admitted to the system for processing. It controls the degree of multiprogramming. Once admitted, a job becomes a process.

For more details , please visit here and here.

Medium term scheduling is part of the swapping function. This relates to processes that are in a blocked or suspended state. They are swapped out of real-memory until they are ready to execute. The swapping-in decision is based on memory-management criteria.

Short term scheduler, also know as a dispatcher executes most frequently, and makes the finest-grained decision of which process should execute next. This scheduler is invoked whenever an event occurs. It may lead to interruption of one process by preemption.

For more details , please visit here and here.

Tuesday, July 12, 2011

OS-9

I was trying to write this post from last 2 years, but always i postponed it.Now I have decided to done it.This post is about an operating system OS-9 from legacy systems developed by Microware.OS-9 is a real-time, multiuser, multitasking operating system developed by Microware Systems Corporation. It provides synchronization and mutual exclusion primitives in the form of signals, events, and semaphores. It also allows communication between processes in the form of named and unnamed pipes, as well as shared memory in the form of data modules.

OS-9 is modular, allowing new devices to be added to the system simply by writing new device drivers, or if a similar device already exists, by simply creating a new device descriptor. All I/O devices can be treated as files, which unifies the I/O system. In addition, the kernel and all user programs are ROMable. Thus, OS-9 can run on any supported hardware platform from simple diskless embedded control systems to large multiuser minicomputers.

Originally developed for the 6809 microprocessor, OS-9 was a joint effort between Microware and Motorola. The original version of OS-9 (OS-9 Level I) was capable of addressing 64 kilobytes of memory. OS-9 Level II took advantage of dynamic address translation hardware, and allowed a mapped address space of one megabyte on most systems, and up to two megabytes on others, most notably the Tandy Color Computer 3.

In the 1980's, Microware ported OS-9 to the 68000 family of microprocessors, creating OS-9/68000, which is used in a variety of industrial and commercial arenas, including Philips' CD-i and most recently, set-top boxes for interactive television.

Monday, July 11, 2011

Error in Loading Operating System

The Error Loading Operating System error appears when your operating system fails to load properly. This error is localized to the Microsoft Windows XP operating system, so users of other operating systems should not face this problem. Essentially, the Error Loading Operating System occurs at a point between the computer’s BIOS running checks on the system’s hardware and the actual launching of the operating system. This error is usually accompanied by a black screen and occurs directly after the installation of Windows XP.

What causes this error?
You can expect to see the Error Loading Operating System error when there is an issue with the way the BIOS and the Windows XP operating system are communicating with each other. Most commonly, the BIOS has an issue where it does not support or has no way to correctly manage the capacity of the hard drive that Windows XP was installed to.

How can I resolve this error?
The Error Loading Operating System problem can be solved in a variety of different ways. However, it is important that you have some knowledge of computers before you proceed with any of the suggested solutions to this error message. Not knowing exactly what you are doing, or failing to follow the directions you see on your screen could result in the corruption or destruction of your computer. Changing or flashing your BIOS can have detrimental effects on your computer and should only be performed if you are completely sure you know what you are getting into.

Your first step to resolve the Error Loading Operating System issue should be to update your computer’s BIOS. Check your computer’s manual for information on how to do this or call the company which constructed your computer. Alternatively, if you built your computer yourself, consult the manual which came with your motherboard.

Once you are sure that your BIOS has been upgraded to its most recent version, determine which type of BIOS you are using. Each BIOS is somewhat different, and newer versions of popular BIOSes tend to change the locations of different functions and features, so consult your computer vendor, your motherboard manual, or a tech support forum for the most up to date information on how to make sure that your hard drives are interfacing properly with your BIOS.