emin_int11

Multitasking operations

Feb 11th, 2016
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1.  
  2.  
  3. LINUX Kernel depended Task scheduler policy-e uygun olaraq tasklar (time sharing) CPU terefinden masin cycle-lar time sharing based islenilen cycle-lar (task-lar) zamana bolunur. Hemcinin CPU butun proseslere prioritetler teyin edir. Bu prioritetlere uygun prosesleri icra edir.
  4.  
  5. Hemcinin bu tasklar 3 classification-dan ibaretdir:
  6.  
  7. Interactive processes
  8. These interact constantly with their users, and therefore spend a lot of time wait- ing for keypresses and mouse operations. When input is received, the process must be woken up quickly, or the user will find the system to be unresponsive. Typically, the average delay must fall between 50 and 150 milliseconds. The variance of such delay must also be bounded, or the user will find the system to be erratic. Typical interactive programs are command shells, text editors, and graphical applications.
  9. Batch processes
  10. These do not need user interaction, and hence they often run in the back- ground. Because such processes do not need to be very responsive, they are often penalized by the scheduler. Typical batch programs are programming language compilers, database search engines, and scientific computations.
  11. Real-time processes
  12. These have very stringent scheduling requirements. Such processes should never be blocked by lower-priority processes and should have a short guaranteed response time with a minimum variance. Typical real-time programs are video and sound applications, robot controllers, and programs that collect data from physical sensors.
  13.  
  14. (reference Understanding Linux Kernel)
  15.  
  16. Prioritetlere uygun prosesler sira ile icra edilmesi ucun Scheduling alqoritmler istifade edilir. (Etrafli meqalede qeyd edecem)
  17. SCHED_FIFO
  18. A First-In, First-Out real-time process. When the scheduler assigns the CPU to the process, it leaves the process descriptor in its current position in the run- queue list. If no other higher-priority real-time process is runnable, the process continues to use the CPU as long as it wishes, even if other real-time processes that have the same priority are runnable.
  19. SCHED_RR
  20. A Round Robin real-time process. When the scheduler assigns the CPU to the process, it puts the process descriptor at the end of the runqueue list. This pol- icy ensures a fair assignment of CPU time to all SCHED_RR real-time processes that have the same priority.
  21. SCHED_NORMAL
  22. A conventional, time-shared process.
  23. The scheduling algorithm behaves quite differently depending on whether the pro- cess is conventional or real-time.
  24.  
  25. Men preemptive task scheduling istifade edecem.
  26.  
  27. queue table yaradiram ve ardiyca tasklara prioritetler teyin edirem.
  28.  
  29. Cunki current task I/O ve diger exception handler icra edildikde Yuksek Priortet-e sahib uygun handler-i icra edir (context switching bas verir) buna uygun olaraq Interrupt context save edilir (Current TASK - STACK Pointer - Program counter) daha sonra diger instruction sequence icra etmeye baslayiram.
  30.  
  31. Timer/Counter interrupt ile bagli meqale yazacam ve burada etrafli olaraq qeyd edecem ve Muxtelif controller-lar uzerinde multitasking emeliyyatlari ile bagli yazacam.
  32.  
  33.  
  34. `Mənə çatmaq ...` :P
Add Comment
Please, Sign In to add comment