Содержание
- 
              
            Блокировка памятиВыполнили: Орлов П.В. Щукин М.А 
- 
              
            Введение.Все известные средства решения проблемы взаимного исключения основаны на использовании специально введенных аппаратных возможностей. Блокировка памяти относится к таким аппаратным возможностям. 
- 
              
            
 Использование блокировки памятипри синхронизации параллельных процессов. Блокировка памяти запрещает одновременное исполнение двух (и более) команд, которые обращаются к одной и той же ячейке памяти. Это обязательное условие функционирования компьютера. 
- 
              
            Заголовок слайдаМеханизм блокировки памяти предотвращает одновременный доступ к разделяемой переменной, но не предотвращает чередование доступа. Таким образом, если критические секции исчерпываются одной командой обращения к памяти, данное средство может быть достаточным для непосредственной реализации взаимного исключения. 
- 
              
            
 Возможные проблемы при организациивзаимного исключения при условиииспользования только блокировки памяти. Модель взаимодействующих процессов. 
- 
              
            Листинг программы для первого решения.Varперекл : integer; Beginперекл := 1: {при перекл=1 в критической секции находится процесс ПР1} Parbegin While true do Begin while перекл = 2 da begin end: CSl; { критическая секция процесса ПР1 } перекл := 2: PRl: { оставшаяся часть процесса ПР1 } End And While true do Begin while перекл = 1 do begin end; CS2; { критическая секция процесса ПР2 } перекл := 1; PR2; { оставшаяся часть процесса ПР2 } End Раrend End. 
- 
              
            Листинг второго варианта реализации взаимного исключения.Varперекл1.перекл2.: boolean; begin nepeMl:=false; nepeM2:=false; parbegin while true do begin while перекл2 do begin end; перекл1;=true; CSl { критическая секция процесса ПР1 } пepeкл1:=false; PRl { процесс ПР1 после критической секции } end and while true do begin while перекл1do begin end; перекл2:=1гие; CS2 { Критическая секция процесса ПР2 } пepeкл2:=false; PR2 { процесс ПР2 после критической секции } end parend end. 
- 
              
            Листинг третьего варианта реализации взаимного исключенияvarперекл!. перекл2 : boolean: begin перекл1:=fаIse; перекл2:=Та15е; parbegin ПР1: while true do begin перекл1:=true: while перекл2 do begin end; CSl { критическая секция процесса ПР1 } перекл1:=Та1$е; PR1 { ПР1 после критической секции } end and ПР2: while true do begin перекл2:Чгие: while перекл1do begin end; CS2 { критическая секция процесса ПР2 } пepeкл2:=false; PR2 { ПР2 после критической секции } end parend end. 
 
                  
                 
                  
                 
                  
                 
                  
                 
                  
                 
                  
                 
                  
                 
                  
                 
               
               
               
               
               
               
               
               
   
   
   
   
   
   
   
   
   
   
   
  
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.