«c» etiketlenmiş sorular

C, işletim sistemleri, oyunlar ve diğer yüksek performanslı işler için kullanılan genel amaçlı bir bilgisayar programlama dilidir ve C ++ 'dan açıkça farklıdır. 1972 yılında Dennis Ritchie tarafından Unix işletim sistemi ile kullanılmak üzere geliştirilmiştir.

4
FreeBSD neden GCC'yi Clang / LLVM lehine kaldırıyor?
Böylece internette dolaşıyordum ve bu yazıya rastladım . Temel olarak , Sürüm 10 ve sonrasında başlayan FreeBSD’nin CCC / LLVM lehine GCC’nin kullanımdan kaldırılacağını belirtir . Şu ana kadar gördüğüm kadarıyla, Clang / LLVM oldukça iddialı bir proje, ancak güvenilirlik açısından GCC ile eşleşemiyor . FreeBSD'nin derleyici altyapısı olarak LLVM'yi …
241 freebsd  compiling  gcc  c  llvm 

10
Argv neden program adını içeriyor?
Tipik Unix / Linux programları komut satırı girişlerini argüman sayımı ( int argc) ve argüman vektörü ( char *argv[]) olarak kabul eder. İlk öğe argvprogramın adıdır - bunu asıl argümanlar izler. Program adı neden yürütülebilir dosyaya bir argüman olarak aktarılıyor? Kendi adlarını kullanan herhangi bir program örneği var mı (belki …

7
İş parçacığı Linux'ta işlemler olarak uygulanır mı?
Mark Mitchell, Jeffrey Oldham ve Alex Samuel'in Gelişmiş Linux Programcılığı kitabını okuyorum . 2001'den beri, biraz eski. Ama ben zaten onu oldukça iyi buluyorum. Ancak Linux'un kabuk çıktısında ürettiğinden farklılaştığı bir noktaya geldim. 92. sayfada (izleyicide 116), 4.5 GNU / Linux Thread Uygulaması bölümü bu cümleyi içeren paragrafla başlamaktadır: GNIX …

4
Neden fork () bulunan bir program bazen çıktısını defalarca yazdırıyor?
Program 1'de Hello worldyalnızca bir kez basılır, ancak kaldırıp \nçalıştırdığımda (Program 2), çıktı 8 kez basılır. Birisi lütfen bana \nburada önemini ve bunun nasıl etkilendiğini açıklayabilir fork()mi? Program 1 #include <sys/types.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> int main() { printf("hello world...\n"); fork(); fork(); fork(); } Çıkış 1: hello world... …
50 c  fork 

6
Sistemim hangi C kütüphanesi sürümünü kullanıyor?
Sistemimin hangi userland C kütüphanesini kullandığından nasıl emin olabilirim? Bu bilgiye ihtiyaç duymanın olası sebepleri arasında şunlar bulunmaktadır: Uygun kontroller yapıp, bir mininum kütüphanesi sürümü listeleyeceğinden emin olduğum, indirmeyi düşündüğüm dev bir kaynak paketi var, ancak çalışıp çalışmadığını kontrol ederek kendimi potansiyel bir güçlükten kurtarmayı tercih ederim. Sistemin paket yönetim …

5
Kullanıcı kimliklerini kullanıcı kimliklerini kullanarak nasıl öldürebilirim
Belirli bir kullanıcının tüm çalışan işlemlerini Linux sistemindeki bir kabuk komut dosyasından veya yerel koddan öldürmek istiyorum. / Proc dizinini okumak ve bunları aramak zorunda mıyım? Herhangi bir fikir? Linux'ta UID'lerin altındaki çağrıların dinamik bir eşlemesi var mı? Bu işlemde değil mi? Eğer değilse, o zaman bu liste nerede tutulur? …
41 c  linux  proc 

6
Bir ikili dosyayı C / C ++ string değişmez olarak nasıl atabilirim?
C kaynak koduma dahil etmek istediğim (geçici olarak test amaçlı) bir ikili dosyam var, böylece dosya içeriğini C dizesi olarak elde etmek istiyorum, bunun gibi bir şey: \x01\x02\x03\x04 Bu, belki odveya hexdumpyardımcı programları kullanarak mümkün mü ? Zorunlu olmamakla birlikte, dize her 16 giriş baytında bir sonraki satıra sarabilir ve …
39 c  hexdump  xxd 


2
Pthreads için varsayılan yığın boyutu
Anladığım kadarıyla, Linux'ta bir pthread için varsayılan yığın boyutu 16K'dır. 64-bit Ubuntu kurulumumda garip sonuçlar alıyorum. $ ulimit -s 8192 Ayrıca: pthread_attr_init(&attr); pthread_attr_getstacksize(&attr, &stacksize); printf("Thread stack size = %d bytes \n", stacksize); Prints Thread stack size = 8388608 bytes Yığın boyutunun "8388608" olmadığından eminim. Neyin yanlış olabilir?
24 c  multithreading 

3
Çatal üzerine yazma üzerine kopya () çoklu çatal nasıl işler?
Wikipedia'ya göre (yanlış olabilir) Bir fork () sistem çağrısı yapıldığında, ana işleme karşılık gelen tüm sayfaların bir kopyası yaratılır ve alt işlem için işletim sistemi tarafından ayrı bir hafıza konumuna yüklenir. Ancak bazı durumlarda buna gerek yoktur. Bir çocuğun bir " exec" sistem çağrısı yürütmesi durumunda (bu, bir C programının …
23 linux  c  fork 

2
POSIX herhangi bir standart yardımcı programın yolunu garanti ediyor mu?
C'den, standart bir yardımcı program çalıştırmanın en kolay yolu nedir (örneğin, ps) ve başka bir şey yok? Örneğin bir standart mu POSIX garanti psolduğunu /bin/psveya ben ile ne elde etmek PATH ortam değişkeni sıfırlamak gerekir confstr(_CS_PATH, pathbuf, n);ve ardından YOL-arama üzerinden hizmet programını çalıştırın?
22 path  c  posix  exec 

4
günlük dosyası yap
/ Var / log / içindeki bazı verileri, bazı kütüphane işlevleriyle ya da linux’deki c dilinde sistem çağrısı yardımıyla korumak için bir günlük dosyası oluşturmanın bir yolu var mı? Ayrıca log yazmak ve işlemek için izlememiz gereken standartları bilmek istiyorum. Teşekkürler
22 linux  logs  c  syslog 

4
Çataldan sonra () çocuk idamına nerede başlar?
UNIX programlamasını öğrenmeye çalışıyorum ve fork () ile ilgili bir soru ile karşılaştım. Ben fork () şu anda çalışan sürecin özdeş bir işlem oluşturduğunu anlıyorum, ama nerede başlıyor? Örneğin, kodum varsa int main (int argc, char **argv) { int retval; printf ("This is most definitely the parent process\n"); fflush (stdout); …
22 process  c  fork  api 



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.