scheduling,+policies,+multitasking,+virtual+memory,+paging,+interrupt,+polling.

=Virtual Memory= When there are shortages of physical memory (i.e. Memory slots are very full) a method called Virtual Memory is used. Virtual Memory is transferring data that is stored in primary memory (e.g RAM) into disk storage i.e your Hard Drive. Although this process makes programs run slower as the Hard Drive is slower than primary memory therefore if you are looking for performance it would be better to have large RAM capacity so that virtual memory is only used when opening new programs. On the other side it is more economically beneficial as it makes it seem like you have unlimited RAM though in reality you don’t. When you are running man programs at the same time and you RAM is not enough to cope virtual memory plays a big role, and is constantly swapping information between RAM and Hard Drive, this is called thrashing and it makes your computer run very slowly. The information that is stored in the hard drives stored in "page files".

=Multitasking= Multitasking operating systems are capable of running more than one program at a time. Nowadays, OS are configured to execute multiple programs simultaneously. Older operating systems would switch system resources back and forth between two or more running processes. In order to multitask, computers time-slice. This is, the system would freeze the executed program for a few seconds and then execute tasks for another program. Time-slicing is considerably efficient since the time lag for the operator was of no more than a few seconds. Today, most desktop, laptop, and netbook operating systems function with some type of multitasking operating system. In the early stages of multitasking, operating systems did not truly multitask but did rapid switching between programs that seemed simultaneous. Modern computers with only one processor are capable of seeming to perform multiple tasks simultaneously by time-slicing with improved performance. However, multiple processors allow many different programs to run at the same time.



= = = Paging = = = Paging is a method of writing data to, and reading it from, secondary for use in primary storage/ main memory. Paging plays a role in memory management for a computer's operating system. In a memory management system that takes advantage of paging, the OS reads data from secondary storage in blocks called pages. these individual pages can be more easily moved around as they aren't contiguous.

= Interrupt =

An interrupt is a signal from a device attached to a computer or from a program within the computer that causes the operating system to stop and figure out what to do next. Almost all personal (or larger) computers today are interrupt-driven - that is, they start down the list of computer instruction s in one program (perhaps an application such as a word processor) and keep running the instructions until either (A) they can't go any further or (B) an interrupt signal is sensed. After the interrupt signal is sensed, the computer either resumes running the program it was running or begins running another program.

A software interrupt is caused either by an exceptional condition in the processor itself, or a special instruction in the instruction set which causes an interrupt when it is executed.

Hardware interrupts are used by devices to communicate that they require attention from the operating system.



= Polling = Polling, or polled operation, in computer science, refers to actively sampling the status of an external device by a client program as a synchronous activity. Polling is most often used in terms of input/output (I/O), and is also referred to as polled I/O or software-driven I/O. Polling has the disadvantage that if there are too many devices to check, the time required to poll them can exceed the time available to service the I/O device Polling is often intimately involved with very low-level hardware. For example, polling a parallel printer port to check whether it is ready for another character involves examining as little as one bit of a byte. That bit represents, at the time of reading, whether a single wire in the printer cable is at low or high voltage. The I/O instruction that reads this byte directly transfers the voltage state of eight real world wires to the eight circuits (flip flops) that make up one byte of a CPU register.

rss url="https://groups.diigo.com/group/comp_sci/rss/tag/6.1.7" link="true" number="10" author="true"