Swift Paralel Programlama Dili: Apple’ın Yeni Silahı Mı?

WWDC 2014’te Swift Paralel Programlama Dili nin geliştiricilerin kullanımına sunulduğunu hepimiz duyduk ve geliştirici dünyası bu konuda büyük bir çıkmaza girdi. Apple’ın yıllardır arkasında durduğu Objective-C dururken ve yeni kütüphaneler yazılabiliyorken neden Swift Paralel Programlama Dili ne geçiş başladı? Bu geçişin Apple için bir anlamı var ve Apple bu geçişte daha büyük şeyler planlıyor galiba. Apple’ın neden Swift’i neden destek vermeye başladığının bazı gerekçeleri olabilir. Bu gerekçeler bu programlama dilinin diğer programlama dillerine göre daha üstün özellikleri olarak görünüyor. Detaylara girmeden önce paralel programlama nedir ve çalışma mantığı nedir bu konuda konuşalım.

Nedir Paralel Programlama

Bir karşılaştırma yapacak olursak geleneksel yöntemlerde programlar seri halde bir dizi sürecinde yazılır ve bu yönde yapılır. Program bir bilgisayarda bir işlemci vasıtasıyla icra edilir ve programlar birbiri ardına gelen kodların yapılmasıyla devam eder ve belli bir zaman diliminde sadece bir işlem yapılır. geleneksel Paralel programlama ise problem çözümüne biraz daha farklı bir yönden yaklaşmaktadır. Geleneksel programlamanın aksine problem birden fazla işlemci kullanılarak çözülür. Problem sıra ile yazılmaz, birden fazla parçaya bölünerek eşzamanlı olarak çözülür. Komutlar farklı işlemcilerde işlenecek hale getirilir. paralel   Bilim ve mühendislik alanlarında ve endüstriyel ve ticari alanlarda kullanılan paralel programlama dili genel olarak zamandan kazanmak ve büyük problemleri kolayca çözmek için tercih edilir. Bu da genelde birbirine bağlı süper bilgisayarlar inşa etmek vasıtasıyla gerçekleştirilir. Seri programlama yani geleneksel programlama bazı sınırlamalara sahip ve bu sınırlamaları aşmak için paralel programlamadan yararlanılır. Yerel veri işlemede etkin gibi görünen geleneksel programlama yerel olmayan verilerin işlenmesinde özellikle de birden fazla farklı noktada bulunan verilerin işlenmesinde pek de etkin olamayabiliyor. İşte bu noktada paralel programlama devreye giriyor. Şu an piyasada gerçekten lider durumda olan paralel programlama dilleri var. Bunlardan en bilinenler Nvidia’nın geliştirdiği CUDA ve MPI (Message Passing Interface) dilleridir. Nvidia’nın CUDA’sı Mac üzerinde de geliştirilebilmektedir. MPI ise Homebrew olarak çalışmakta, yani sadece port edilmiş durumda. nv-cuda-2014header-updated

Peki Neden Swift?

Unknown-3Hızlı ve kolay paralel programlama sağlayan Swift çoklu işlemcilerde, cluster bilgisayarlarda (ağ üzerindeki yığın bilgisayarlarda), bulut bilişimde ve gigaflopluk işlem yapabilen süper bilgisayarlarda kullanılmak üzere tasarlanmış. Bu kadar profesyonel kullanıma rağmen yazım şekli diğer paralel programlama dillerine göre daha basit. Paralelliğin getirmiş olduğu karmaşıklıktan uzakta olan bir yapıya sahip Swift Paralel Programlama Dili ve kısa yazılan sentakslar bile büyük çapta işlemler yapabilecek durumda. Swift milyonlarca programı, aynı anda binlercesini çalıştırabilecek kapasiteye sahip hem de bir saniye içerisinde yüzlercesini başlatarak. (Bu bilgi Swift’in kendi sitesinden alınmıştır.)

Swift Apple’a Ne Kazandıracak?

Swift Cocoa ve Cocoa Touch (OS X ve iOS yazılım temeli) için yeni bir programlama dilidir. Swift ile kod yazmak etkileşimli ve eğlenceli bir hale geliyor. Bunun yanında sentaks (cümle dizilimi) daha kendini ortaya koyabilen bir yapıya sahip ve programlar bu dil ile çok hızlı çalışıyor (Valla Apple’ın yalancısıyım). Swift iOS ve OS X Projeleri ile rahatlıkla kullanılabilmekte ve Objective-C ile yan yana çalışabiliyor. Swift Apple’ın yıllarca edinmiş olduğu platform deneyimlerinin ve programlama dilleri üzerine son yıllarda yapmış olduğu araştırmaların sonucudur. Objective-C den ortaya çıkan isimlendirilmiş parametreler Swift’teki API’ların daha kolay okunabilmesini ve barındırılmasını sağlayan çok daha belirgin bir sentaks içerisinde ifade edilmektedir. Bu tür ifadeler yazdığınız kodu daha saf bir hale getirir ve daha az yanlış yapmanızı sağlar. Bellek tamamen otomatik olarak yönetilmektedir ve iki nokta üst üste yazmanız bile gerekmez. LLVM Derleyici sayesinde Swift kodları Mac ve iOS cihazlarınız için öz kodlara çevrilir ve siz böylelikle cihazınızdan en yüksek performans almanız sağlanır. Programlamadan biraz anlayanlar programlamadaki bazı temel işlemleri bilirler. Swift C ve Objective-C dilindeki alt seviye ilkel işlemleri de barındırmaktadır. Yani veri tipleri, akış kontrolleri ve operatörleri rahatlıkla kullanabilirsiniz. Bunun yanında nesnesel tabanlı program öğelerini de barındırmaktadır. Şimdi gelelim Apple’ın bunu neden tercih ettiğine… Galiba Apple büyük bir adım atmaya yaklaşıyor. Swift’in sağlayacağı özelliklerle herhalde artık bulut teknolojisine daha çok dayalı yazılımlar geliştirecek. iCloud tamamen baskın bir Apple teknolojisi olacak ve abartmak gibi olmasın ama Apple bilgisayarınızı yoracak işlemleri diğer Apple cihazlarınızı kullanarak daha hızlı yapmanızı sağlayacak bir alt yapı bile çıkarabilir. Final Cut’da bir render alırken başka Mac’lerden ve aynı zamanda işlemcisi neredeyse bir Mac kadar güçlü olan iOS cihazlarından da yardım alabilecek bir sistem; hem de kablolardan bağımsız… neden olmasın?

Etkinlik Monitörünü Anlamak

Uygulamalar (Applications) klasöründeki İzlenceler (Utilities) içinde bulunan Etkinlik Monitörünün (Activity Monitor) ne işe yaradığını düşünmekte olanlar vardır aranızda eminim. Aslında bilgisayarınızda var olan ve sizin bilip bilemeyeceğiniz hatta görüp göremeyeceğiniz birçok işlemi takip edebileceğiniz ve duruma göre çare bulmanıza yardımcı olacak bir uygulamacıktır Activity Monitor.

Programı açar açmaz karşınıza uzun bir liste çıkacaktır. Bundan sakın ha korkmayın. Burada dikkat etmeniz gereken bazı hususlar olacak. Öncelikle bu listedeki öğelerin neye göre sıralandığını ve hangi kriterlere göre orada olduğunu anlamamız gerekiyor.

Listeler

Şunu unutmamamız gerekiyor ki orada gördüğünüz bütün elemanlar aslında sizin çalıştığını fark edebildiğiniz veya edemediğiniz birçok program ve alt yapı elemanlarının ta kendisidir. Bunların sıralanışlarında size yardımcı olacak sıralama yöntemleri şunlardır:

  1. Process Name (İşlem Adı): İşlem adına göre sıralama yaptığınızda büyük bir ihtimalle karşınıza o an ön planda veya arka planda çalışan programları alfabetik sıra ile göreceksiniz. Bunların çoğu zaten anlamlı isimlere sahip olduğu için çoğunun ne işe yaradığını tahmin edebilirsiniz. Mesela Quick Look Helper adında bir uygulamanın açık olduğunu görebilirsiniz bu açık olan uygulama Mac OS X içindeki Quick Look özelliğinin yardımcı dosyasıdır. Bunun dışında isminden pek birşey anlayamayacaklarınız var. Bunlardan en önemli kernel_task ve mds. Hadi kernel taskı anladınız diyelim, mds nedir? Korkmayın mds sistemin en önemli parçalarından biri ve zaten User yani Kullanıcı sıralamasında da Root yani Kök durumunda. Siz isteseniz de istemeseniz de çalışacaktır. Process Name’e göre sıralama size ne kazandırır? Aslında bulunduğunuz kullanıcı seviyesine göre bu değişiklik gösteren bir durum. Eğer çok yeni bir kullanıcı iseniz, belki size bir anlam ifade etmeyecektir ama ileri seviye bir kullanıcı iseniz hangi işlemin hangi dosya tarafından işletildiği bilgisine ulaşmanız gerekebilir. Bu noktada mesela zararlı bir programın çalıştığını görebilme olasılığınız çok yüksek. Aşina olmadığınız veya ne işe yaradığını isminden öğrenemediğiniz uygulamaları takip ederek bunlardan kurtulabilirsiniz.
  2. User (Kullanıcı): Bu bölümde ise listede gördüğünüz uygulamaların bilgisayar üzerindeki hangi kullanıcıya sahip olduğunu görebileceğiniz bilgilere ulaşabilirsiniz. Peki bu bilgi bana nasıl yardımcı olabilir ki diye kendi kendinize sorabilirsiniz. Bu bölüm aslında Process Name sıralama kriteri ile kullanıldığında hangi programın sizin tarafınızdan hangi programın ise işletim sistemi tarafından çalıştırıldığını görebilirsiniz. Burada sıkıntılı bir uygulamayı takip etmeyi kolaylaştırır. Burada karşınıza bir iki grup çıkacaktır. Bu gruplardan en belirgini sizin kullanıcı adınızın olduğu bölümdür. Bu bölümde grup içerisinde sadece ve sadece sizin tarafınızdan yüklenmiş ve sistemin bir parçası olmayan uygulamalar gruplanır. Root grubunda ise bilgisayarın çalışması için gerekli olan arkaplan uygulamaları veya altyapı dosyalarını görebilirsiniz.
  3. % CPU: Bu sıralama listesi o an için hangi uygulamanın işlemciye (veya işlemcilerinize) yük getirdiğini ve bu yükün yüzdelik dilimde sayı ile gösterildiğini gösteren listedir. Mesela rahmetli Steve Jobs’ın Flash konusunda ne kadar haklı olduğunu buradan takip edebilirsiniz. Flash içerikli bir siteyi Safari içerisinde açtığınzda Safari Web Content öğesinin ne kadar fazla yük getirdiğini görebilirsiniz. Burada yüzdelik dilimleri topladığınızda 100 den daha fazla bir sayı çıkıyorsa bunun nedeni birden fazla işlemcinize paylaştırılan işlemlerdir.
  4. Threads: Uygulamalar yazılırken birden çok işlemin yapılması için farklı alt kategorilerde toplanmaları sağlanmıştır. Bu hassasiyette hazırlanmış işlemler işlemciler arasında bölünerek aynı anda birden fazla görev yapmaya işlemciyi sevk eder. Bu bölümde de uygulamanın ne kadar işlem yaptırdığını görebilirsiniz. Bir uygulamanın birden çok thread yapması işlemciye çok fazla yük getirdiği anlamına her zaman gelmez.
  5. Real Memory: Real Memory kolonunda uygulamaların veya arkaplanda açık kalan uygulamaların RAM üzerindeki reel yükünü görebilirsiniz. Uygulamanın şu an RAM den ne kadar kullandığını buradan görebilirsiniz. Real Memory haricinde başka RAM kullanımlarını gösteren listeleme kriterleri de mevcuttur. Uygulamalar kullandıkları RAM in her zaman hepsini etkin bir şekilde kullanmayabilirler bunu ikiye bölerek kullanırlar. Bunlardan birincisi Private Memory (Özel Hafıza) yani tamamen kendilerinin çalışması için kulandıkları bölüm ve hard disk ile alışveriş esnasında kullandıkları Shared Memory (Paylaşımlı Hafıza) bölümüdür. Bu kriterleri de kontrol etmek isterseniz View menüsünde Columns alt başlığında bunları görebilirsiniz.
  6. Kind: Bu kolonda çalışan programın hangi mimari için yazıldığını görebilirsiniz. Gerçi son zamanlarda Intel (64 bit) dışında birşey görmeniz pek mümkün değil ama daha eski makinelerde ve sistemlerde (bu noktada 10.7 öncesinden bahsediyorum) Rosetta veya PowerPC gibi mimari terimleri görebilirsiniz. Eğer program Intel (64 bit) dışında sadece Intel olarak görünüyorsa, bu program sadece 32 bitlik biçimde hazırlanmış anlamına gelir. Son kullanıcının aslında buna çok ihtiyacı yok.
  7. CPU Time: Bu listeleme şekilde uygulamanın işlemci(ler) üzerinde ne kadar zamandır işlem yaptığını gösterir. Bir nevi programın ne kadardır açık olduğunu takip edebilirsiniz.

Bu kriterler dışında birçok farklı sıralama şeklini seçebilirsiniz. Bunların arasında uygulamaların kullandığı portları, Sanal Özel Hafızayı, uygulamaların kendileri arasında alıp verdiği mesajlaşma sayısını ve Sandbox (bu konuda ek bir yazı yazılacak) olup olmadığını görebilirsiniz.

 

Alt Sekmeler

Activity Monitor yazılımının tek kontrol bölümü listeler değil. Aynı zamanda alt bölümdeki sekmeler de birçok konuda size bilgisayarınızda neler olup bittiğine dair bilgi verebilir. Şimdi de bunlara bir bakalım.

 

  1. CPU: İşlemci veya işlemcilerin üzerine ne kadar yük geldiği konusunda bilgi veren bölümdür. CPU bölümünde karşınıza 3 farklı kriter çıkar.

  1. Bunlardan birincisi USER yani KULLANICI bölümü. Kullanıcı Bölümünde Kullanıcının kullanmış olduğu programların işlemci üzerindeki yükünü gösterir.
  2. İkinci kriter ise SYSTEM yani SİSTEM bölümü. Sistem bölümünde sistemin işlemci üzerindeki yükünü görebilirsiniz.
  3. Son kriter ise IDLE yani BOŞTA BEKLEYEN bölümü. Boşta bekleyen bölümde sistem ve kullanıcının işlemci üzerindeki yükü dışında kalan ve komut bekleyen bölümü gösterilir.

Bu bölümdeki rakamlar yüzdelik dilimde anlatılır.

 

  1. SYSTEM MEMORY: Sistem Belleği bölümü aslında en çok kullanacağınız bölümlerden biridir. Burada sahip olduğunuz RAM miktarının tüketiciler tarafından nasıl paylaştırıldığını görebilirsiniz ve kullandığınız programların RAM canavarı olup olmadığını anlayabilirsiniz. Bu bölümde karşınıza 5 tane önemli kriter çıkıyor:

 

  1. FREE (SERBEST): Kullanılmayan RAM miktarını gösterir.
  2. WIRED (BAĞLI): Mac’inizin diskini taşınamayacak olan RAM yükünü gösterir. Bağlı bellek miktarı kullandığınız programlara göre değişiklik gösterecektir.
  3. ACTIVE (ETKİN): Şu an RAM’de yüklü olan ve şu an kullanılan bilgi miktarını gösterir.
  4. INACTIVE (PASİF): Şu an RAM’de yüklü ama kullanımda olmayan bilgi miktarını gösterir.

 

Bu durumu şu şekilde anlatabiliriz. Mesela Mail uygulamasını açtınız ve sonra maillerinizi okuyunca kapattınız. Mail uygulamasının RAM üzerindeki yükü tamamen silinmez ve siz onu tekrar açmak isterseniz Mail uygulaması çok daha hızlı açılır. Pasif RAM miktarı başka programlarca kullanılabilir ve bir anlamda paylaşımlıdır da diyebiliriz. Çıkış yapmış olduğunuz programın bulunduğu RAM bölgesi başka bir program tarafından kullanılmamışsa, çıkış yapmış olduğunuz program tekrardan hızlı açılabilir ama bu bölge başka bir program tarafından kullanılmışsa, program normal açılış süresinde olabilir.

  1. USED (KULLANILAN): Toplamda kullanılan RAM miktarını göstermekte.
  2. VM size (Sanal Bellek Boyutu): Tüm programlarınız için sanal bellek boyutunu gösterir.
  3. Page ins/outs (Sayfa Girişleri/Çıkışları): Bu bölümde RAM ve HD iniz arasındaki veri alışverişi miktarını görebilirsiniz. Parantez içinde olan bölüm anlık veri alışverişini gösterir. Page Out süreci yani Ram’den HD’e bilgi yazma süreci RAM dolu olduğunda olur ve dolayısıyla RAM miktarınızı yükseltmek Page Out sürecini azaltacaktır.
  4. Swap Used (Kullanılan Takas): Mac’inizin sürücüsündeki takas bölümüne RAM den aktarılan bilgi miktarını görebilirsiniz.

 

  1. DISK ACTIVITY: Disk Etkinliği Bölümü Mac’inizin HD’indeki veri trafiği takip edebileceğiniz bölümdür. Bu bölüm kesinlikle normal bir kullanıcının anlayabileceği şeyleri içermez ama genel olarak kavranması zor değildir. Çünkü en azından arka planda verinin yazılıp yazılmadığını takip edebilirsiniz. Burada karşımıza belli başlı kriterler gelecek. Bu kriterlere göre HD performansını değerlendirebilirsiniz.

 

  1. Reads in: Belirlenen bir zaman diliminde saniyede kaç tane veri bloğunun okunduğunu gösterir.
  2. Writes out: Belirlenen bir zaman diliminde saniyede kaç tane veri bloğunun yazıldığını gösterir.
  3. Reads in/sec: Saniyede kaç tane Reads in sürecinin olduğunu gösterir.
  4. Writes out/sec: Saniyede kaç tane Writes out sürecinin olduğunu gösterir.
  5. Data Read: Şu ana kadar ne kadar verinin okunduğunu gösterir.
  6. Data Written: Şu ana kadar ne kadar verinin yazıldığını gösterir.
  7. Data read/sec: Saniyede ne kadar verinin okunduğunu gösterir. Bu kriter yandaki grafikte gösterilir ve gösterimdeki renk değiştirilebilir.
  8. Data written/sec: Saniyede ne kadar verinin yazıldığını gösterir. Bu kriter yandaki grafikte gösterilir ve gösterimdeki renk değiştirilebilir.
  9. IO veya Data Radyo Butonları: Normalde, veriler işlendiklerinde Data biriminden gösterilir. Aynı zamanda IO/s yani IOPS (ayops) biriminden de gösterilebilir. IOPS veri hızı ölçümünde kullanılan birimlerden biridir.

 

  1. DISK USAGE: Disk Kullanımı sekmesi her seviyede kullanıcının işine yarayabilecek bilgileri bize sunmakta. Bilgisayarınıza takılı olan disklerin ne kadar alanının kullanılmış ne kadar alanının da boş olduğunu görebilirsiniz.

  1. Space Utilized: Kullanılmış olan HD boyutunu gösterir.
  2. Space Free: Kullanılmamış HD alanını gösterir.

 

  1. NETWORK sekmesi: Bilgisayarınızın ağ iletişimi trafiğini görebileceğiniz bir bölümdür bu sekme. Daha önceki sekmelerde olduğu gibi bu bölüm de alt başlıklarda incelenmelidir. Sizden habersiz bilgisayarınız arkaplanda ağ üzerinden iş yapıyor mu bunları takip etme imkanınız olacaktır bu bölüm üzerinden.

  1. Packets in: Ağ arabirimleri (Ethernet, Wi-Fi, Bluetooth, FireWire) üzerinden almış olduğunuz veri paketi miktarıdır.
  2. Packets out: Ağ arabirimleri (Ethernet, Wi-Fi, Bluetooth, FireWire) üzerinden göndermiş olduğunuz veri paketi miktarıdır.
  3. Packets in/sec: Saniyede kaç paket gönderildiğini gösteren bölüm.
  4. Packets out/sec: Saniyede kaç paket alındığını gösteren bölüm.
  5. Data received: Alınan toplam veri miktarı
  6. Data sent: Gönderilen toplam veri miktarı
  7. Data received/sec: Saniyede alınan veri miktarı
  8. Data sent/sec: Saniyede gönderilen veri miktarı.
  9. Packets ve Data Radyo butonları: Bu seçenek ile takip etmekte olduğunuz ağ trafiğini iki farklı birimde inceleyebiliyorsunuz. Bunlardan birincisi paket bazındadır diğeri ise aldığını veriyi büyüklüğü cinsinden inceleyebilirsiniz.

DOCK IKONLARI ve MENÜLER

Ekinlik Monitörü penceresi açık olması gereken bir takip ve inceleme yazılımı değildir. Aynı zamanda da farklı şekillerde de sizin için önemli olan kriteri program her zaman açık olmadan da takip edebilirsiniz. Bu şekilde takibin en önemli elemanı ise Mac OS X Dock. Eğer siz Dock’u kapatıyorsanız veya sürekli olarak gizliyorsanız Etkinlik Monitörünü bu şekilde kullanmanız biraz zor olacaktır.

  1. İkonlar: Etkinlik Monitörünü takip edebileceğiniz 5 farklı mod mevcuttur.

  1. Show CPU Usage (İşlemci Kullanımını Göster): işlemci sayınıza göre bir, iki, dört veya 8 kolonlu ve işlemci doluluğunu gösteren bir ikon haline dönüşür. Çekirdek sayınız ne kadar fazla ise o kadar daha fazla görünmesi mümkündür.
  2. Show CPU History (İşlemci Geçmişini Göster): İşlemcinizin sayısı veya çekirdek sayısına göre farklılaşabilecek ve aynı zamanda bir süre için işlemci yükünü size takip ettirebilecek bir simge haline dönüşür Dock’taki uygulama simgesi.
  3. Show Network Usage (Ağ Kullanımını Göster): Bilgisayarınızın ağ trafiğini belli bir süre zarfı için gösteren bir simge haline dönüşür.
  4. Show Disk Activity (Disk Etkinliğini Göster): Bilgisayarınızın disklerindeki yazma ve okuma etkinliğini izleyebilirsiniz.
  5. Show Memory Usage (Bellek Kullanımını Göster): Bilgisayarınızdaki RAM kullanım durumunu size gösterir.

Unutmamamız gereken bir husus var ki o da bu göstergelerdeki renklerin daha önceden anlattığımız sekmelerden değiştirilebileceğidir.

  1. Menüler: Genel anlamda View (Görünüm) ve Window (Pencere) menüsü dışında çok dikkat etmeniz gereken bir nokta yok. Geri kalan menüler aslında neredeyse bütün uygulamalarda görünebilecek menüler ve komutlar içermekte.

  1. View Menüsü: Görünüm menüsü elemanlarını bir gözden geçirelim.
    1. Columns (Kolonlar): Daha önce Listeler bölümünde bahsetmiş olduğumuz kriterleri seçebileceğiniz ve seçtiğiniz bu kriterlere göre listenizi genişletebileceğiniz veya daraltabileceğiniz komut dizesi bölümüdür. Bahsi geçen kolonlar dışında bütün diğer listeleme kriterlerini burada görebilirsiniz.
    2. Dock Icon (Dock Simgesi): Bir önceki bölümde anlatmış olduğumuz simgelerin hangisinin Dock’ta görüneceğini seçebileceğiniz menü burasıdır.
    3. Update Frequency (Güncelleme Sıklığı): Güncelleme sıklığı listenizde görünen nesnelerin ve barındırmış oldukları bellek göstergelerinin ne kadar sıklıkta güncelleneceğini belirten menüdür. Saniye cinsinden farklı güncelleme sıklıkları seçebilirsiniz.
    4. Filter Processes (İşlemleri Filtrele): Aslında bu menüde neden olduğunu hala anlamış değilim ama Etkinlik Monitörü uygulamasının sağ üst tarafındaki filtreleme bölümü ile aynı işlevi göstermekte. Zaten bu komutu seçtiğinizde de direkt olarak filtreleme bölümü aktif oluyor ve aradığınız özel bir işlemi takip etmenizi kolaylaştırıyor.
    5. Inspect Process (İşlemi İncele): Listede bir işlem seçtiğinizde aktif olacaktır. Seçmiş olduğunu işlem hakkında çok daha fazla işlem bilgisi gösterecektir. Bu pencerede verilen istatistikler genelde 3 başlık altında toplanmış. Bunlar sekmeler içinde verilirken bazı genel bilgiler sekmeler dışında kalmıştır. Sekmeler ise şu şekilde sıralanmıştır: Memory (Bellek), Statistics (İstatistikler) ve Open Files and Ports (Açık Dosyalar ve Kapılar). Bellek bölümünde daha detaylı bellek yönetimi bilgileri elde edebilirsiniz. İstatistikler sekmesinde ise bir işlem üzerinde çok daha fazla bilgi alabiliyorsunuz. Açık Dosyalar ve Kapılar bölümünde ise işlemin kullanmakta olduğu dosyalar, alt yapı dosyaları ve kapı bilgilerini görebilirsiniz. Bu bölüm daha çok program geliştiricileri için yararlı olabilir.

Açılan pencerenin en altında Sample ve Quit komutlarını görebilirsiniz. Sample butonu işlemden bir örnek almanızı sağlar. Quit komutu ile incelemekte olduğunuz programdan o programa geçmeden çıkabilirsiniz.

  1. Sample Process (İşlemden Örnek Al): Inspect Process bölümündeki penceredeki Sample butonu ile aynı işlemi yapar. Belli bir süre için işlemin ne yaptığı izlenir ve bu çok da anlaşılmayabilecek bir programcı dilinde gösterilir. 5-6 saniye kadar bu örnekleme sürebilir ve işlem kısa bir süre için kesilebilir. Mesela iTunes da müzik dinlerken bunu yaparsanız, müzik çalarken kısa bir süre çalan şarkı kesilebilir. Örnekleme metni farklı biçimlerde sunulabilir ve bunlar farklı şekilde kaydedilebilir.

  1. Quit Process (İşlemden Çık): İşleme geçiş yapmadan çıkmanızı sağlar.
  2. Bu komut C Programlama dilinden anlayanların daha rahat anlayabileceği bir komut bölümünü içermektedir. Sinyaller standart C kitaplığının bir parçasıdır. Bunlardan bazılarını açık olan işlemlere gönderebilirsiniz.
    1. SIGHUP: işlemi askıya alır
    2. SIGINT: işlemi olduğu yerde keser
    3. SIGQUIT: işlemden çıkar
    4. SIGABRT: işlemi iptal eder
    5. SIGALRM: işlemin süresinin bittiğini belli eder.
    6. SIGINFO: Durum bilgisi klavyeden alındığında gönderilen sinyaldir. POSIX standartlarından değildir ve genelde Mac OS X gibi BSD bazlı sistemlerde görülür.
    7. USER DEFINED 1: Kullanıcının belirleyebileceği bir sinyal
    8. USER DEFINED 2: Kullanıcının belirleyebileceği başka bir sinyal.

Bu sinyaller genelde programların kapanmasına neden olur. Çalışmakta olduğunuz veya kaydetmemiş belgelerinizin olduğu programlarda kullanmamaya dikkat edin. Komutunuzu seçip Send yani Gönder tuşuna basarsanız sinyal gönderilecektir.

  1. Show Deltas for Process (İşlem İçin Deltaları Göster): Burada Delta terimi işlemin işlemcideki yükünün değişikliğini gösterir. Bu komutu seçtiğinizde işlemin sanal bellek miktarı birden 0 olur ve sonra değişmeye başlar. Değişimin takip edilmesi için de siyah renkten yeşil renge döner listedeki isim.
  2. Clear CPU History (İşlemci Geçmişini Temizle): İşlemcinin yapmış olduğu görevlerin işlemci üzerindeki yükünü gösteren ve işlemcilerin ne kadar çalıştığının görülebileceği İşlemci Geçmişi Penceresini temizler.  
  3. Window Menüsü: Pencere menüsünde işimize ciddi anlamda yarayacak birkaç pencere görebiliriz.
    1. CPU History (İşlemci Geçmişi): İşlemcinin ne kadar çalıştığını takip edebileceğiniz bir grafik göstergesidir.
    2. Floating CPU Window (Kayan İşlemci Penceresi): Adına aldanmayın, ekranın bir köşesinde öylesine durup size işlemci hakkında bilgi verebilecek bir grafik penceresidir. Yatay veya dikey kullanabilirsiniz.

 

Eveeeet, geldik yazımızın sonuna. Bu yazıda Activity Monitor ile genel anlamda neler yapılabileceği konusunda sizelere birşeyler anlatmaya çalıştım. Umarım çalışmalarınızda faydalı olur.