WEBVTT

00:05.250 --> 00:06.600
Şuna bir bakalım.

00:06.600 --> 00:13.350
Bir P süreci bir iş parçacığı oluşturduğunda, sürecin sanal belleğinde ne gibi değişiklikler

00:13.350 --> 00:14.630
olur?

00:14.640 --> 00:21.510
Aşağıdaki diyagramın sol tarafta yürütülmekte olan bir P işleminin sanal adres alanı

00:21.510 --> 00:23.490
olduğunu varsayalım.

00:25.060 --> 00:31.060
Böylece bu sürecin yığın için kullanılan bir miktar sanal belleğe, başlatılmış ve başlatılmamış

00:31.060 --> 00:36.700
veri segmenti için kullanılan bir miktar sanal belleğe sahip olduğunu görebilirsiniz.

00:36.700 --> 00:40.450
Ve bazı sanal bellekler bir kod segmenti için kullanılıyor.

00:41.110 --> 00:46.600
Ayrıca sanal belleğin bir kısmı yığın bellek olarak kullanılır.

00:46.990 --> 00:53.260
Yığın belleğin prosedür, çağrı ve geri dönüşü desteklemek için kullanıldığını zaten biliyoruz.

00:53.830 --> 00:59.560
Dolayısıyla her bağımsız yürütme birimi yığın belleğe ihtiyaç duyar.

01:00.700 --> 01:07.030
Şimdi PE işleminin yürütülmesi sırasında yeni bir iş parçacığı oluşturduğunu varsayalım.

01:07.210 --> 01:13.630
Peki bu yeni başlığın oluşturulmasının ardından bu süreçte yaşanacak değişim ne olacak?

01:13.630 --> 01:15.910
Bir sürecin sanal adres alanı.

01:17.390 --> 01:23.060
Böylece sağ taraftaki diyagramın bir sürecin sanal adres alanı olduğunu görebilirsiniz.

01:23.090 --> 01:26.060
P ama konu oluşturulduktan sonra.

01:26.510 --> 01:33.890
Böylece iş parçacığı oluşturulduktan sonra yeni oluşturulan iş parçacığı için ayrı bir sanal bellek olmadığını görebilirsiniz,

01:33.890 --> 01:35.420
değil mi?

01:35.450 --> 01:39.950
Tüm bu sanal bellek hala sürece aittir.

01:39.980 --> 01:45.680
P Ancak bu sanal bellek yeni oluşturulan bir iş parçacığı tarafından da paylaşılır.

01:46.040 --> 01:53.210
Yeni oluşturulan bir iş parçacığı bu sanal belleğe, bir sürecin sanal belleğinin bu kısmına eşit erişime

01:53.210 --> 01:54.380
sahiptir.

01:54.620 --> 01:59.990
Bu nedenle, tüm iş parçacıkları bir sürecin aynı sanal adres alanını paylaşır.

02:00.440 --> 02:05.900
Ancak bu sanal bellek bölümüne yalnızca iş parçacığı tarafından erişilebilmelidir.

02:05.930 --> 02:06.230
T.

02:06.410 --> 02:12.710
Daha önce de söylediğim gibi, her iş parçacığının kendi yığın belleği vardır, değil mi?

02:12.710 --> 02:21.780
Dolayısıyla işletim sistemi sanal belleğin bu kısmını sadece t iş parçacığı için tahsis edecektir çünkü bir iş parçacığının sürecin

02:21.810 --> 02:27.540
yığın belleğini çalıştırabilmesi için bir yığın belleğe sahip olması gerekir.

02:27.570 --> 02:34.620
Öte yandan P korunur ve P süreci tarafından yürütülmesi için kullanılır.

02:35.310 --> 02:42.540
Böylece tüm süreç sanal adres alanının buradan başlayarak sürecin en altına kadar uzandığını görebilirsiniz.

02:42.540 --> 02:46.860
Sanal adres alanı iş parçacığının yanı sıra P süreci tarafından da paylaşılır.

02:46.890 --> 02:55.980
Bu nedenle, bir iş parçacığı bir sürecin yığın belleğini de değiştirebilir ve yığın bellekteki bu değişiklikler diğer

02:55.980 --> 03:00.840
iş parçacıkları veya ana süreç tarafından görülebilir.

03:02.060 --> 03:05.750
Böylece süreçte meydana gelen tek değişikliğin bu olduğunu görebilirsiniz.

03:05.750 --> 03:07.610
Bir sürecin sanal adres alanı.

03:07.640 --> 03:13.760
P, yeni bir iş parçacığı oluşturulduğunda yeni yığın belleğinin tahsis edilmesidir.

03:13.970 --> 03:18.380
Bunun dışında süreçte kesinlikle bir değişiklik yok.

03:18.380 --> 03:19.910
Sanal adres alanı.

03:20.270 --> 03:26.930
Şimdi bu fikri birden fazla iş parçacığı oluşturan bir P sürecine genişletelim.

03:27.080 --> 03:33.050
Sol taraftaki diyagramın bir sürecin sanal adres alanını veya sanal belleğini temsil ettiğini

03:33.050 --> 03:34.100
varsayalım.

03:34.130 --> 03:34.460
P.

03:36.660 --> 03:44.460
Ve bu sanal belleğin en üst kısmının bir süreç tarafından yığın bellek olarak kullanıldığını görebilirsiniz.

03:45.090 --> 03:53.730
Şimdi, bir P süreci yeni bir D iş parçacığı oluşturursa, işletim sistemi yeni t iş parçacığı için yığın bellek olarak kullanılmak

03:53.730 --> 03:57.180
üzere daha fazla sanal bellek tahsis eder.

03:57.300 --> 04:03.750
Benzer şekilde, p süreci başka bir t iki iş parçacığı oluşturursa, işletim sistemi t iki iş parçacığı tarafından kullanılmak

04:03.750 --> 04:09.720
üzere süreç sanal adres alanından yığın bellek olarak daha fazla sanal bellek tahsis edecektir.

04:10.020 --> 04:14.190
Ve aynı şey bir süreç başka bir iş parçacığı oluşturduğunda da geçerlidir.

04:14.220 --> 04:21.390
Böylece işletim sisteminin süreçten daha fazla sanal bellek ayırmaya devam ettiğini görebilirsiniz.

04:21.390 --> 04:26.970
İlgili iş parçacıkları tarafından yığın bellek olarak kullanılacak sanal adres alanı.

04:27.240 --> 04:33.180
Ve unutmayın, bu sanal belleklerin her biri ilgili iş parçacığına özeldir.

04:34.840 --> 04:42.370
T üç iş parçacığının t iki iş parçacığına ait olan yığın belleğe erişme hakkı yoktur.

04:42.790 --> 04:46.360
Yani iş parçacıklarının kendi özel yığın bellekleri vardır.

04:46.390 --> 04:52.690
Bir sürecin sanal adres alanının geri kalan bölgeleri tüm iş parçacıkları tarafından paylaşılır.

04:52.780 --> 04:54.700
Şimdi bunu tartıştık.

04:54.700 --> 05:01.240
Bir süreç yeni bir iş parçacığı oluşturduğunda sürecin sanal belleğinde ne gibi değişiklikler olur?

05:01.540 --> 05:08.380
Şimdi yeni bir iş parçacığı oluşturulduğunda bir sürecin sayfa tablosunda ne gibi değişiklikler olduğunu görelim.
