Bilgisayarla İlgili Diğer Konular
Shell, Terminal, Konsol Terimleri Ve Aralarındaki Farklar Nelerdir?
Shell, Terminal, Konsol Terimleri Ve Aralarındaki Farklar Nelerdir?
-
Ubuntuda terminal, konsoldur da diyebiliriz. ubuntu terminaline "echo $SHELL" yazınca /bin/bash çıktısı veriyor. Yani ubuntu terminali(konsolu) bash shell'ini kullanıyor. yani işletim sistemi çekirdeğine ne yapması gerektiğini söyleyen asıl şey shelldir.
Windows ta ise terminal=komut istemi=konsol. bu da cmd(command prompt=komut ekranı) uygulaması yani. peki cmd nin shell'i ne? açık kaynak olmadığı için bilmiyoruz sanırsam özel bir yazılım.
windows powershell ise windowsun ayrı bir shell'i mi? windowsta iki shell var yani ama terminalde default olarak kullanılan cmd'de kullanılan özel shell galiba.
cmd de powershell yazdığımızda cmd içinden powershell'i kullanabiliyoruz. ama powershell ekranında cmd'yi açamıyoruz. bunun sebebi terminalin cmd olması powershellin ise sadece bir shell olması mı?
aynı zamanda pc uygulamalarının da konsol menüsü oluyor counter strike global offensive de mesela konsol menüsüne terminal diyebilir miyiz? shell'i var ve özel bir yazılım mı? teoride modlayarak bu konsol menüsünde farklı bir shell çalıştırabilir miyiz?
Herşey birbirine girdi galiba :D sormak istediğim;
Her bilgisayar yazılımının(işletim sisteminden oyunlara kadar) bir default terminali olabilir. olmayabilirde. terminali varsa bu terminalin bir shell'i olmak zorunda. ve bu shell değiştirilebilir. değişmemesi için shellde özel kodlar yazılsa da zafiyet olma ihtimali vardır cümlem doğru mu? websunucularına shell atma tabiri ile işletim sistemindeki shell aynı kavramlar mı?
saçma sapan sorular soruyor olabilirim kusura bakmayın. kavramlar kafamda tam oturmadı bash nedir makalesi yazan çoğu kişi bu kavramları üstünkörü geçmiş.
ha bi de temel ve önemli bash komutları ve kullanımlarını açıklayan özet şeklinde bir notu olan varsa valla harika olur. yoksa ben bi tane yapmayı düşünüyorum pcde sürekli açık durur o pdf alt tab yaparak komutları hatırlarım iyi olur.
-
" peki cmd nin shell'i ne? "
cmd.exe :p
"cmd de powershell yazdığımızda cmd içinden powershell'i kullanabiliyoruz. ama powershell ekranında cmd'yi açamıyoruz. bunun sebebi terminalin cmd olması powershellin ise sadece bir shell olması mı?"
yoo açılıyor.
"aynı zamanda pc uygulamalarının da konsol menüsü oluyor counter strike global offensive de mesela konsol menüsüne terminal diyebilir miyiz? shell'i var ve özel bir yazılım mı? teoride modlayarak bu konsol menüsünde farklı bir shell çalıştırabilir miyiz?"
adam oraya yazdığın komutları alıp parse eden bir kod yazmış arkada. adamın yazdığı şeyleri çalıştırırsın anca. ya da adam belki exec gibi yazdığın metni alıp işletim sisteminin shelline gönderen bir fonksiyon yazmıştır. her boku çalıştırırsın o zaman.
-
Ciddi, bu kavramların sınırlarını çizmek, biraz sıkıntı bende de. Öyle alıntılayıp 1-2 bireyler ekleyeyim.
GuArDiAn55 bunu yazdıUbuntu'da terminal, aynı zamanda konsoldur da diyebiliriz. Ubuntu terminal'ine "echo $SHELL" yazınca "/bin/bash" çıktısı veriyor. Yani Ubuntu termina'li(konsol'u) "bash shell'ini" kullanıyor. yani işletim sisteminin çekirdeğine ne yapması gerektiğini söyleyen asıl şey, shell`dir.
Windows'da ise terminal="komut istemi"=konsol'dur; bu da cmd(command prompt=komut ekranı) uygulaması yani. peki cmd nin shell'i ne? açık kaynak olmadığı için bilmiyoruz, sanırsam özel bir yazılım.
windows powershell ise windowsun ayrı bir shell'i mi?(bu cümleyi hiç anlamadım.) windows'ta iki shell var yani ama terminalde default olarak kullanılan cmd'de kullanılan özel shell galiba.
cmd de powershell yazdığımızda cmd içinden powershell'i kullanabiliyoruz. ama powershell ekranında cmd'yi açamıyoruz. bunun sebebi terminalin cmd olması powershellin ise sadece bir shell olması mı?
aynı zamanda pc uygulamalarının da konsol menüsü oluyor counter strike, global offensive'de mesela, konsol menüsüne terminal diyebilir miyiz? shell'i var ve özel bir yazılım mı? teoride modlayarak bu konsol menüsünde farklı bir shell çalıştırabilir miyiz?
Herşey birbirine girdi galiba :D sormak istediğim;
Her bilgisayar yazılımının(işletim sistem`inden oyunlara kadar) bir default terminali olabilir. olmayabilir de. terminali varsa, bu terminalin bir shell'i olmak zorunda. ve bu shell değiştirilebilir. değişmemesi için shellde özel kodlar yazılsa da zafiyet olma ihtimali vardır cümlem doğru mu?
websunucularına shell atma tabiri ile işletim sistemindeki shell aynı kavramlar mı?
saçma sapan sorular soruyor olabilirim kusura bakmayın. kavramlar kafamda tam oturmadı bash nedir makalesi yazan çoğu kişi bu kavramları üstünkörü geçmiş.
ha bi de, temel ve önemli bash komutları, ve kullanımlarını açıklayan, özet şeklinde bir notu olan varsa, valla harika olur. yoksa ben bi tane yapmayı düşünüyorum, pcde sürekli açık durur o, pdf alt tab yaparak komutları hatırlarım iyi olur.
Bence'lerim:
"Cmd" dediğin, işletim sisteminin çekirdeğine, tek satır Emir, gönderebilen bir ortam, ayrıcalık'lı bir dosya. Ancak;Aynı satır'da bir komut'un çıktısı, diğer komuta girdi olabiliyor; lâkin burada da "tek satır'da" girebileceğin harf sayısı, kısıtlı; sanırım.
PowerShell dediğin, Birden fazla emir'i alt alta, satır satır komut'ları gönderebilen, akabinde gelen Çıktıları diğer satır'lardaki komut'lara girdi sağlayabilen, bir Dosya türü(ayrıcalıklı dosya), gibi.
Terminal dediğin, benim bildiğim anlamda, network'deki AnaBilgisayara tek satır Komut gönderebilen, bir ekran-klavye-"network kart'ından" oluşan, bir donanım, gibi geliyor.
Buraya kadar olanlar, Windows İşletim Sistemi için geçerli olan şeylerdi. (For me)
-0-
"Bash Shell" ile ifade ettiğin şey de, Unix ve türevleri için geçerli. Çekirdeğin kullanıma sunduğu (gizli veya açık) emirlerin, hangi düzende("kurallar biçimi"= protokol anlamında) çekirdeğe gönderileceğini, çekirdeğe ifade eden, (ayrıcalıklı) çalıştırılabilir dosya tipi, gibi geliyor.
-0-
Konsol, daha çok, oyunlarla alakalı, gibi geliyor. Daha çok, metin bazlı komutlar değil de; temasa dayalı, seri yada paralel, Elektronik sinyal( alterne yada doğru) gönderimi, gibi.
("Sunucu'lara Shell atmak"(?)) Burada da, sunucu'ya komutları hangi düzende gönderebileceğinin bilgisini taşıyan dosyanin, ayrıcalık bilgisini değiştirmek, gibi birşey, sanırım.
-0-
Sonuç; bunların hepsi işlemcinin yürüteceği emirleri işlemci'ye gönderip, zamanla işlemci'den uygulanan emir'lerin sonuç'larını bekleyen, dikine sınıf'lanmış, yatay ayrıcalık'lı çalıştırılabilir dosya tipleri, gibi geliyor.
-
? :) Olaya soyle bakmak gerekir. Bir kernel var buraya insan eli degmez. Kernel'in isi hardware tarafina dokunmasidir vs. Senin kernel ile iletisime gecebilecegin alanin adi "shell-kabuk"(user interface) . Kernel'e komut gondermen gerektiginde yani konusma ihtiyacin oldugunda, karsina konsol-terminal cikar(bash,csh,tcsh vs.) Bu mimaride gordugun Terminal ve Konsol aynı şeydir. Aynı komutları bir application katmanından da yapabilirsin. Kafani karistiran bir win ad yapisinda client-terminal terminolojisi olabilir mi ?
-
https://www.youtube.com/watch?v=mLfpyuTl9Ww&list=PL0M0zPgJ3HSdI26ZdgX-F8aAKnh9sq6on&index=2
Microsoft'ta yazılımcı olarak çalışan scott reis tam da benim sorum için harika bir video çekmiş.
tabi ComputerWolf hocam da aynı şeyleri söylemiş.
GuArDiAn55 tarafından 11/Ara/20 01:05 tarihinde düzenlenmiştir