Bir işletim sisteminin kendisi kaynakları kapsıyor mu (yüklü olduğu alandan başka)?


3

İşletim sistemleriyle ilgili bir kursu yeni bitirdim ve işletim sisteminin tanımı hala belirsiz. Herhangi bir işletim sisteminin kendisi CPU ve bellek gibi kaynakları alır mı? Örneğin, zamanlama algoritması, hangisinin önce gittiğini ve görevlerin hangi veri yapısında yer kapladığını görmek için görevleri karşılaştırmak için bazı işlem gücü kullanmalıdır.

Ayrıca sanal bellekle ne yapılacağını bilme eylemi, kaynakları alan hesaplamaları almalı, değil mi?

Varsayımca söylemek gerekirse, bir programı olan ve işletim sistemi olmayan bir bilgisayar programı çalıştırıyorsa, program aynı bilgisayardan ancak bir işletim sisteminden daha hızlı tamamlanacaktır. Bu doğru mu?

EDIT: Kursun toplam saçmalık olduğuna katılıyorum, eğlence amaçlı burada verilen işletim sisteminin tanımı

İşletim Sistemleri Nedir? • Birkaç olası tanım 1. {Microsoft, Apple, Linux topluluğu, Google} tarafından sağlanan kod 2. Güvendiğiniz kod da yazmadığınızdan 3. Ayrıcalıklı modda çalışan kod 4. İşlerin çalışmasını sağlayan kod 5. İşlerin çökmesine neden olan kod (alaycı tanım) 6. Ve diğerleri ...

OS Nedir? • Bir soyutlama - Bir bilgisayarda çalışan uygulamalar için o bilgisayarın kaynaklarına erişmek için uygun bir arayüz sağlama - "uygun" u nasıl tanımladığımız hakkında çok fazla menteşe • Farklı endişeleri ele almanın bir yolu - zaman içindeki performans - uzayda performans - paylaşım ve kaynak yönetimi - başarısızlık toleransı - güvenlik - pazarlanabilirlik

Bir ders kitabının bu alay konusu 100 $ + harcamak zorunda kaldık, işletim sistemlerini “neredeyse her şeyin bağlı olduğu bir yazılım. Bu belirsiz, ancak o zaman terim sektörde oldukça titiz bir şekilde kullanılıyor” olarak tanımladık.


Herhangi bir işletim sistemi olmadan çalışan bir program görmedim. Adı geçen program İşletim Sistemi değilse.
Darius

@Darius oh gerçekten gömülü cihazlarda bile değil mi? Örneğin. Benim Ti-86 hesap makinesi benim için ikinci dereceli formülü yapan bir "program" a sahiptir.
Celeritas

Bir program işletim sistemi olmadan çalıştırılıyorsa, bir işletim sisteminin yaptıklarının çoğunu yapması gerekir. Bunu yapan bazı örnekler için programlanabilir mantık denetleyicilere bakın.
hildred

@Celeritas, eğer Z80 assembler kullanıyorsanız, o zaman kapat sisteme, ancak o zaman bile, hesap makinesinde hala bir tür işletim sistemi vardır, aksi halde programlarınız çok daha karmaşık olur ve temel şeyler yapmak için düşük seviyeli makine kodu içerir (TI-BASIC ile bile). De çok az , bir işletim sistemi koşar programları. Örneğin, DOS'taki derleme programları donanımı değiştirebilir, ancak yine de DOS'ta çalıştır .
Synetech

@Celeritas Benim bilgim sınırlı, ancak benim anladığım kadarıyla, gömülü aygıtları çalıştıran "program" aygıtın İşletim Sistemi değilse, buna ne denirdi? Ve benim varsayım, onun yaptığı tüm diğer hesaplama veya özelliklerin, temel işletim sisteminde çalışan ek programlar olduğu yönündedir. Benim varsayım: hesap makinesinin işletim sistemi basitçe "Ekrandan ekrana" ve "ekran görüntüsü ve hesaplama için düğmeye basmayı kabul et" olacaktır. Ancak gerçek hesaplama (ikinci dereceden formül), işletim sisteminin sonuç üretmek için arayabileceği bir program olabilir. (yanılıyorsam düzelt beni)
Darius

Yanıtlar:


10

Bir işletim sisteminin kendisi kaynakları kapsıyor mu (yüklü olduğu alandan başka)?

Evet.

İşletim sistemleriyle ilgili bir kursu yeni bitirdim ve işletim sisteminin tanımı hala belirsiz.

Düşük düzeyde bir işletim sistemi diğer programlardan farklı değildir; sonuçta, bir grup CPU talimatından başka bir şey değildir. Tek fark bir işletim sisteminin talimatlarının bir programınkinden farklı bir şey yapmasıdır (az ya da çok).

Bir işletim sistemini tanımlamanın en iyi yolu bir Meta-Program . Bu, yerine bir şey yapmak , program için mümkün kılar diğer bir şeyler yapmak için programlar.

Herhangi bir işletim sisteminin kendisi CPU ve bellek gibi kaynakları alır mı?

Evet tabi ki.

Örneğin, zamanlama algoritması, hangisinin önce gittiğini ve görevlerin hangi veri yapısında yer kapladığını görmek için görevleri karşılaştırmak için bazı işlem gücü kullanmalıdır.

Kesinlikle. İşletim sisteminin işlevleri yalnızca CPU talimatları yığınlarıdır ve bir kullanıcı programındaki işlevler gibi, bunlar yer kaplar ve CPU üzerinde çalışması gerekir.

Ayrıca sanal bellekle ne yapılacağını bilme eylemi kaynakları alan hesaplamaları almalı, değil mi?

Doğal olarak.

Varsayımca söylemek gerekirse, bir programı olan ve işletim sistemi olmayan bir bilgisayar programı çalıştırıyorsa, program aynı bilgisayardan ancak bir işletim sisteminden daha hızlı tamamlanacaktır. Bu doğru mu?

Biraz.

İşlemcilerin çok hızlı olduğunu ve çok Küçük bir süre içinde talimatlar. Dahası, işletim sistemleri mümkün olduğunca optimal olacak şekilde tasarlandı ve ince ayar yapıldı, böylece olabildiğince az CPU ve bellek kullanıyorlar (en azından teorik olarak). Bu nedenle, programlama, bellek yönetimi, görev değiştirme, donanım sürüşü vb. İşlemler için kullandıkları algoritmalar nispeten az kaynak kullanır. Bunu bir görev yöneticisinde görebilirsiniz; Çalışan hiçbir program olmadığında ve işletim sistemi minimum seviyeye düştüğünde, o zaman kullanımda çok az bellek olacaktır ve CPU “% 0” olarak çalışacaktır. (Yine, teorik olarak konuşuyoruz; örneğin Windows geç saatlerden beri “şişkinlik yapıyor”, bu nedenle artık geçerli olmayabilir.)


-6

İşletim sistemiyle ilgili bir kursu yeni bitirdiyseniz, paranızı geri istemeniz gerekir. Sorunuz o kadar saf ki ev ödevi sorununa çözüm bulmak için trolling yapmadığınıza inanamıyorum.

Bir işletim sisteminin modern görünümü, uygulamaların bilgisayardaki bellek, CPU ve G / Ç aygıtları gibi kaynaklara erişmek için kullanabileceği bir hizmet sağlayıcılar koleksiyonudur. Tam olarak İS ile uygulama arasındaki çizginin çizildiği yer dini bir meseledir (Andrew Tanenbaum ve Linus Torvalds arasındaki tartışmalara bakınız).

Modern işletim sistemleri, uygulamalara izole edilmiş makine soyutlamalarını sunmaya hizmet eder, örneğin uygulamanız benim uygulamam tarafından kullanılan hafızayı alamıyor. Bunu güvenli ve güvenli bir şekilde yapmak için, soyutlamayı yöneten kritik kod genellikle işletim sistemi çekirdeği adı verilen bir öğeye izole edilir. Bir kez daha, çekirdek içinde olanlar ile kullanıcı alanı paylaşımlı kütüphanenin neyin tartışılmaya açık olduğu arasındaki çizgi.

Gerçekten, eğer OS dersinizde bu tür şeyler ele alınmamışsa, bu neydi?


2
Soru değil İşletim sistemi nedir? ya da Bir işletim sisteminin bir programdan farkı nedir? , bu Bir işletim sisteminin kaynakları kullanıp kullanmadığı . Eski sorulardan birinin zaten var olduğundan eminim, bu yüzden cevabınızı daha uygun olacağı sorulardan birine yönlendirebilirsiniz (elbette niyetinizin sadece hakaretten ziyade bilgi vermek olduğunu varsayarak).
Synetech

Bir işletim sisteminin herhangi bir temel tanımı, dikkatini çeken herkes için kaynakların kullanıldığı anlamına gelmelidir. Orijinal poster bir işletim sisteminin doğru tanımını bilseydi, kaynak kullanımıyla ilgili soru tartışılırdı.
anon

2
@anon - Bir soruyu soran İşletim Sistemlerinde yeni bir kursa yeni katılan birisinin, eğer işletim sisteminin kendisi CPU kaynaklarını kullanıyorsa saf olduğu konusunda, yazarın hissini tamamen ve tamamen göz ardı etmenizin gerçekten takdir edilemeyeceği konusunda hemfikir olabilirim. nedeni bir aşağı oy verdim. Başka bir deyişle hakaretlerin etrafına atılmak size itibar kazandırmayacak ve muhtemelen cevap gönderememenizle sonuçlanacaktır.
Ramhound

Ya da duygulardan daha da önemlisi, cevap basitçe soruyu cevaplamıyor. Ben de cevabı önemsiz buluyorum (en azından yıllarca bilgisayar bilgisine sahip kendimle), ancak bir OS dersi alan biri bile (ki bu benim kadar karmaşık olmayabilir veya olmayabilir) bir kez alındığında) bunu tam anlamıyla anlayamayabilir veya basitçe ayrıntılı bilgi miktarı ile boğulmuş ve kafanız karışmış olabilir. Bu yüzden, sorulan soruyu cevaplamak için her noktaya değinerek, kısa ve öz bir cevap vermeye çalıştım.
Synetech

Ciddi soru: ders kitabım temelde işletim sistemi tanımının net bir şekilde kesin olmadığını ve sıklıkla çeşitli şekillerde kullanıldığını belirtti.
Celeritas
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.