«operating-systems» etiketlenmiş sorular

Donanım ve uygulamalar arasında arayüz oluşturan yazılım ilkeleri hakkında sorular.



7
Bir programı açtığınızda bir İşletim Sistemi kendi makine kodunu enjekte ediyor mu?
CPU'ları inceliyorum ve bellekten bir programı nasıl okuduğunu ve talimatlarını yerine getirdiğini biliyorum. Ayrıca bir işletim sisteminin süreçlerdeki programları ayırdığını ve daha sonra her biri arasında aynı anda çalıştığını düşündüğünüz kadar hızlı bir şekilde geçiş yaptığını anlıyorum, ancak aslında her program CPU'da tek başına çalışıyor. Fakat eğer işletim sistemi CPU'da …

6
Elementlerin tekrarı olmadan bir çift setinden kombinasyon oluşturma
Bir çift çiftim var. Her çift, (x, y) formundadır, öyle ki, x, y, aralıktaki tam sayılara aittir [0,n). Yani, n 4 ise, o zaman aşağıdaki çiftleri var: (0,1) (0,2) (0,3) (1,2) (1,3) (2,3) Zaten çiftlerim var. Şimdi, n/2tamsayıların hiçbirinin tekrarlanmayacağı şekilde çiftler kullanarak bir kombinasyon oluşturmam gerekiyor (başka bir deyişle, …

7
Unix / C'deki tutarsızlık ve eksiklik örnekleri nelerdir?
Richard Gabriel'in ünlü makalesinde The Rise of Worse is Better , basitlik, doğruluk, tutarlılık ve bütünlük eksenleri boyunca MIT / Stanford (Lisp) ve New Jersey (C / Unix) tasarım felsefelerinin karikatürize versiyonlarını karşılaştırıyor. Unix'in arayüz basitliğine göre uygulamanın basitliğine öncelik verdiğini iddia etmek için "PC kaybeden sorunu" ( Josh Haberman …

4
Genel olarak hangi konular paylaşılıyor?
Bu genel bir soru. Ve eğer herkes uygulamayı özel yapmak istiyorsa, o zaman Unix ile ilgili şeyleri tercih edeceğim. Ama önce genel olarak aşağıdaki sorunları bilmeniz gerekir: Tek işlem birden çok iş parçacığı olabilir okumak. Aynı işlemin birden fazla iş parçacığı aralarında bir şeyler paylaşır. Neleri paylaştıklarını ve nelerin paylaşmadıklarını …

2
Bir işletim sistemi rastgele tohumlar için entropi nasıl oluşturur?
Linux'ta, dosyalar /dev/randomve/dev/urandom dosyalar sahte rasgele baytların sırasıyla engelleme ve engellememe (sırasıyla) kaynaklarıdır. Normal dosyalar olarak okunabilirler: $ hexdump /dev/random 0000000 28eb d9e7 44bb 1ac9 d06f b943 f904 8ffa 0000010 5652 1f08 ccb8 9ee2 d85c 7c6b ddb2 bcbe 0000020 f841 bd90 9e7c 5be2 eecc e395 5971 ab7f 0000030 864f d402 …

4
İşbirlikçi zamanlama bir G / Ç işlemi gerçekleştirirken süreçleri askıya alıyor mu?
Birçok işletim sistemi referansı, kooperatif (önleyici yerine) çoklu görevle, bir işlemin CPU'yu açıkça gönüllü olarak askıya alıncaya kadar koruduğunu söylüyor. Çalışan bir işlem, hemen karşılanamayan bir G / Ç isteği gerçekleştirirse (örneğin, henüz kullanılamayan bir tuş darbesi ister), zamanlayıcı bunu askıya alır mı veya istek hizmet verilinceye kadar gerçekten CPU'yu …

3
Sabit zamanlı işlemlerle akıllı bellek yönetimi?
Sabit boyutlu blokları içeren iki temel bellek ayırma işlemi gerçekleştirebileceğiniz bir bellek segmentini (gerektiğinde dosya gibi büyüyebilen veya küçülebilen bir bellek segmenti) düşünelim: bir blok tahsisi artık kullanılmayan önceden tahsis edilmiş bir bloğun serbest bırakılması. Ayrıca, bir gereksinim olarak, bellek yönetim sisteminin şu anda tahsis edilmiş bloklar etrafında hareket etmesine …

4
İşletim Sistemi, yönetmesi gereken aynı yonga üzerinde nasıl çalışabilir?
İşletim Sistemleri hakkındaki okumalarımdan (Wikipedia, teknik siteler vb. Temel materyalleri okuyarak) İşletim Sisteminin, programların ve uygulamaların donanımla etkin ve güvenli bir şekilde etkileşime girmesini sağlayan bir program olduğunu öğrendim. Ancak, işletim sisteminin kendisi çalıştırılması gerektiğinde bilgisayarın çalışmasını nasıl denetlediğiyle ilgili kafam karıştı. Ne demek istiyorum? Bir İşletim Sisteminin çalışmasını hayal …

3
“Yumuşak” gerçek zamanlı işletim sistemlerinin sağladığı garantiler aslında
Sanırım "zor" gerçek zamanlı bir işletim sisteminin ne olduğunu biliyorum. Uygulama programcısı ile sözleşme sağlayan bir programlayıcıya sahip bir işletim sistemidir. Bir uygulama, her kaynak ayırma isteği için bir son tarih sağlar. Eğer son başvuru isteklerdir uygulanabilir , zamanlayıcı her kaynak tarihinden önce istekte bulunan uygulamaya tahsis edileceğini garanti eder. …

2
Mikro çekirdeğin ve monolitik çekirdeğin performansı
Bir mikro çekirdek, tüm sürücüleri kullanıcı-alanı programları olarak uygular ve IPC gibi temel özellikleri çekirdeğin içine uygular. Bununla birlikte, monolitik bir çekirdek, sürücüleri çekirdeğin bir parçası olarak uygular (örneğin çekirdek modunda çalışır). Mikro çekirdeğin monolitik çekirdeklerden daha yavaş olduğu iddialarını okudum, çünkü kullanıcı alanındaki sürücüler arasında iletiyi işlemek zorundalar. Bu …

2
Yönetilen kod çalıştıran minimal bir çekirdeğe sahip olmanın potansiyel tuzakları nelerdir?
Yönetilen bir kod yorumlayıcı / çalışma zamanı ve yerel olmayan bir makine diline (Java bayt kodu, CIL, vb.) Derlenmiş daha büyük bir üst çekirdeğe dayanan çok küçük bir yerel alt çekirdeğe dayalı bir işletim sistemi oluşturmak istediğinizi varsayalım. Benzer işletim sistemlerine örnek olarak Singularity ve Cosmos verilebilir . Tamamen doğal …

6
Bir aralıkta iki sayının maksimum XOR değerini bulma: ikinci dereceden daha iyisini yapabilir miyiz?
İki ve sayısı verildiğini ve l \ le i, \, j \ le r için bulmak istediğimizi varsayalım .lllrrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)}l≤i,j≤rl≤i,j≤rl\le i,\,j\le r Saf algoritma tüm olası çiftleri kontrol eder; örneğin yakutta: def max_xor(l, r) max = 0 (l..r).each do |i| (i..r).each do |j| if (i ^ j > max) max …

1
İşletim sisteminde bellek balonlaması
Bazı hipervizörler, balon adı verilen bir yöntem kullanarak bellek kullanımını optimize eder (en azından KVM bunu çağırır), bu yöntem VM'ler arasındaki belleği tekilleştirir ve yazma sırasında kopyalamayla ortak sayfaları salt okunur olarak ayarlar. Bu bir çatal çağrısının tersidir. İşlemler için bir işletim sistemi düzeyinde uygulamak mümkün mü (esas olarak aynı …

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.