«c» 태그된 질문

C는 운영 체제, 게임 및 기타 고성능 작업에 사용되는 범용 컴퓨터 프로그래밍 언어이며 C ++과 분명히 다릅니다. 1972 년 Dennis Ritchie가 Unix 운영 체제와 함께 사용하도록 개발했습니다.

4
CBSD / LLVM을 선호하여 FreeBSD가 GCC를 더 이상 사용하지 않는 이유는 무엇입니까?
그래서 나는 인터넷을 서핑 하고이 기사를 우연히 발견했다 . 기본적으로 버전 10 이상부터 FreeBSD 는 Clang / LLVM 을 위해 GCC 를 더 이상 사용하지 않을 것이라고 명시하고 있습니다. 내가 지금까지 인터넷에서 본 것에서 Clang / LLVM 은 상당히 야심 찬 프로젝트이지만 신뢰성 측면에서 GCC 와 일치 할 수 없습니다 …
241 freebsd  compiling  gcc  c  llvm 

10
왜 argv에 프로그램 이름이 포함됩니까?
일반적인 Unix / Linux 프로그램은 명령 행 입력을 인수 개수 ( int argc) 및 인수 벡터 ( char *argv[]) 로 받아들 입니다. 의 첫 번째 요소 argv는 프로그램 이름이며 실제 인수가 뒤에옵니다. 프로그램 이름이 실행 파일에 인수로 전달되는 이유는 무엇입니까? 자신의 이름을 사용하는 프로그램의 예가 exec있습니까?

7
스레드는 Linux에서 프로세스로 구현됩니까?
Mark Mitchell, Jeffrey Oldham 및 Alex Samuel의 Advanced Linux Programming 이 책을 보겠습니다 . 2001 년부터 시작 됐습니다. 그러나 어쨌든 나는 그것을 아주 좋아합니다. 그러나 리눅스가 쉘 출력에서 ​​생성하는 것과 다른 시점에 도달했습니다. 92 페이지 (뷰어에서 116)에서 4.5 장 GNU / 리눅스 스레드 구현은이 문장을 포함하는 단락으로 시작합니다. GNU / …

4
fork ()가있는 프로그램이 때때로 출력을 여러 번 인쇄하는 이유는 무엇입니까?
프로그램 1에서 Hello world한 번만 인쇄되지만 제거 \n하고 실행하면 (프로그램 2) 출력이 8 번 인쇄됩니다. 누군가 나에게 \n여기서 의 중요성 과 그것이 어떻게 영향을 미치는지 설명해 주 fork()시겠습니까? 프로그램 1 #include <sys/types.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> int main() { printf("hello world...\n"); fork(); fork(); fork(); } 출력 1 : …
50 c  fork 

6
시스템에서 어떤 C 라이브러리 버전을 사용합니까?
시스템에서 어떤 유저 랜드 C 라이브러리를 사용하는지 어떻게 알 수 있습니까? 이 정보가 필요한 이유는 다음과 같습니다. 다운로드를 고려하고있는 거대한 소스 패키지가 있습니다. 올바른 확인을 수행하고 최소 라이브러리 버전을 나열 할 것이지만 먼저 작동하는지 먼저 확인하여 잠재적 인 번거 로움을 덜어줍니다. 시스템 패키지 관리 시스템 외부에 설치하려는 일부 타사 바이너리와의 …

5
UID를 사용하여 모든 사용자 프로세스를 종료하는 방법
Linux 시스템의 쉘 스크립트 또는 기본 코드에서 특정 사용자의 모든 실행중인 프로세스를 종료하고 싶습니다. / proc 디렉토리를 읽고 이것들을 찾아야합니까? 어떤 아이디어? Linux의 UID에서 pid의 동적 매핑이 있습니까? 이 과정에서 그렇지 않습니까? 그렇지 않은 경우이 목록은 어디에 유지됩니까? 내가 읽어야 할까? 또한 시스템에있는 모든 UID의 정적 목록이 어디에 있습니까? 그래서이 …
41 c  linux  proc 

6
바이너리 파일을 C / C ++ 문자열 리터럴로 덤프하는 방법은 무엇입니까?
C 소스 코드에 포함하고 싶은 바이너리 파일이 있는데 (임시 테스트 목적으로) 파일 내용을 다음과 같이 C 문자열로 얻고 싶습니다. \x01\x02\x03\x04 od또는 hexdump유틸리티 를 사용하여 가능 합니까? 필요하지는 않지만 문자열이 16 입력 바이트마다 다음 줄로 줄 바꿈되고 각 줄의 시작과 끝에 큰 따옴표를 포함하면 훨씬 좋습니다! 문자열에 null ( \x00) 이 …
39 c  hexdump  xxd 


2
pthread의 기본 스택 크기
내가 이해하는 것처럼 Linux에서 pthread의 기본 스택 크기는 16K입니다. 64 비트 Ubuntu 설치에서 이상한 결과가 나타납니다. $ ulimit -s 8192 또한: pthread_attr_init(&attr); pthread_attr_getstacksize(&attr, &stacksize); printf("Thread stack size = %d bytes \n", stacksize); Prints Thread stack size = 8388608 bytes 스택 크기가 "8388608"이 아니라고 확신합니다. 무엇이 잘못 될 수 있습니까?
24 c  multithreading 

3
fork ()의 ​​COW (복사시 복사)는 여러 개의 포크를 어떻게 처리합니까?
Wikipedia에 따르면 (잘못 될 수 있음) fork () 시스템 호출이 발행되면, 상위 프로세스에 해당하는 모든 페이지의 사본이 작성되고 하위 프로세스의 OS에 의해 별도의 메모리 위치에로드됩니다. 그러나 특정 경우에는 필요하지 않습니다. 자식이 " exec"시스템 호출 (C 프로그램 내에서 실행 파일을 실행하는 데 사용됨)을 실행하거나을 종료 한 직후에 종료되는 경우를 고려하십시오 fork(). …
23 linux  c  fork 

2
POSIX는 표준 유틸리티에 대한 경로를 보장합니까?
C에서 표준 유틸리티 (예 : ps)를 실행하는 가장 쉬운 방법은 무엇입니까? 예를 들어, 표준,합니까 POSIX 보증 ps에 /bin/ps또는 내가 함께 무엇을 얻을에 PATH 환경 변수를 재설정해야 confstr(_CS_PATH, pathbuf, n);하고 PATH 검색을 통해 유틸리티를 실행?
22 path  c  posix  exec 

4
로그 파일을 만들다
리눅스에서 c 언어로 된 라이브러리 함수 또는 시스템 호출의 도움으로 / var / log /에 일부 데이터를 유지하기 위해 로그 파일을 만드는 방법이 있습니까? 또한 로그를 작성하고 처리하기 위해 따라야하는 표준을 알고 싶습니다. 감사
22 linux  logs  c  syslog 

4
fork () 후에 자식은 어디에서 실행을 시작합니까?
유닉스 프로그래밍을 배우려고하는데 fork ()에 관한 질문이 나왔습니다. fork ()가 현재 실행중인 프로세스와 동일한 프로세스를 생성한다는 것을 알고 있지만 어디에서 시작합니까? 예를 들어 코드가 있다면 int main (int argc, char **argv) { int retval; printf ("This is most definitely the parent process\n"); fflush (stdout); retval = fork (); printf ("Which …
22 process  c  fork  api 



당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.