프로그래밍 QnA + 설치 및 활용 QnA

익명 사용자의 이미지

질문 c++ 스레드로 함수 호출

안녕하세요 c++ thread를 공부하는 중에 막혀서 질문드립니다.

<목적> 아래 코드에서 foo함수는 바꾸지 않은채로 main에서 thread를 사용해서 foo함수를 정상적으로 호출하고싶습니다.

근데 자꾸 C2672, C2893, C2780이 뜨는데 어떻게 고쳐야 할 지 모르겠습니다.

foo함수에서 int *a, int *b를 그냥 int a, int b로 고치면 잘 되는건 알고있습니다.

근데 사정이 있어서 함수는 저대로 써야합니다...

도와주세요

---------------------------------- 코드 ----------------------------

#include
#include

using namespace std;

void foo(int *a, int *b);

int main() {

int num1 = 100;
int num2 = 200;

standalon의 이미지

하나의 프로그램에서 사용할 수 있는 메모리의 최대 크기가 있나요?

하나의 프로그램에서 활용할 수 있는 메모리의 한계가 있는 것 같은데, 검색해도 관련 내용을 찾을 수 없어서 여기에 질문을 드립니다.

우분투 18.04에서 C++ 프로그램을 개발 중인데, 배열 사이즈를 일정 크기 이상 선언하면 처음 부분에서 프로그램이 종료됩니다. (프로그램이 거이 대부분 thread가 실행하는 부분에서 메모리를 선언하고 실행됩니다.)

ytt123의 이미지

grep 실행 후 표시되는 파일 리스트를 날짜 순서로 sorting?

grep 으로 특정 문자가 들어있는 파일을 화면에 출력할 때, 파일을 파일 생성 날짜 순서 또는 역순으로 나열되게 할 수 있나요?

감사합니다.

kks07082의 이미지

VirtualBox로 CentOS9설치 시 설치가 무한반복됩니다..

VirtualBox를 이용하여 CentOS 9 설치를 완료한 뒤, 시스템을 재부팅 해야 사용이 가능하다는 메세지를 읽고 '시스템 재부팅'을 눌렀으나, 설치 화면이 다시 나오면서 설치 과정이 반복됩니다... 그래서 다시 설치 과정을 시도해 봤습니다. 그러나 설치 요약 화면의 '설치 목적지' 아이콘을 눌렀을 때, 처음 설치 시 지정해놓았던 용량이 충분한 광디스크의 용량이 부족하다는 메세지가 뜨는 것을 보면 분명 이전 설치 시도에서 CentOS 9이 설치된 것 같은데, 이를 실행하는 방법을 찾지 못하고 있습니다. 해당 CentOS 9 삭제, VirtualBox 삭제 후 재설치, 컴퓨터 포맷까지 시도했으며, Bios에서 SVM MODE도 ENABLE로 변경했으나 계속해서 증상이 반복됩니다. 혹시 이에 대한 해결책을 아시는 분이 계실까요?

8926pgg의 이미지

c언어 replit 질문입니다

replit에 코드를 넣고 실행을 했더니 오른쪽에
make -s
/nix/store/v8imx1nvyz0hgvx9cbcmh6gp4ngw3ffj-binutils-2.35.1/bin/ld: ./Q3.o: in function `main':
/home/runner/s/Q3.c:5: multiple definition of `main'; ./main.o:/home/runner/s/main.c:6: first defined here
/nix/store/v8imx1nvyz0hgvx9cbcmh6gp4ngw3ffj-binutils-2.35.1/bin/ld: ./Q3.o: in function `main':
/home/runner/s/Q3.c:9: undefined reference to `prinf'
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:8: main] Error 1
exit status 2
 ^C

익명 사용자의 이미지

ssh 명령어 쉘 스크립트 활용

안녕하세요. 초보적인 수준으로 단순 노가다 작업이 있을 때마다 코드를 이용해서 작업을 수행하는 학생입니다.

node로 로그인 이후, 쉘 스크립트가 진행이 안되는 현상으로 질문이 있어 올려봅니다.

"총 24개의 node가 있는 HPC에서 각 node 별로 scratch 폴더를 들어가서 작업을 하고자 합니다."

따라서 다음과 같은 쉘 스크립트를 작성했습니다.

#!/bin/bash
 
node="n001 n002 n003 n004 n005 n006 n007 n008 n009 n010 n011 n012 n013 n014 n015 n016 n017 n018 n019 n020 n021 n022 n023 n024"
 
for i in $node
do
	ssh ${i}
	cd /scratch
	rm -f Gau*
done

그랬더니

gorogong의 이미지

쉘 스크립트 조언 부탁드립니다.

아래와 같이 찾는 값이 없는 경우 "could not found available IP"를 출력 해보려 하는데 조언좀 부탁드립니다.

ertos12의 이미지

timer_create()와 SIGEV_THREAD 사용시 생성되는 thread관련

timer_create()와 SIGEV_THREAD를 이용해서 아래와 같이 각각 5초와 10초 간격으로 실행되도록 thread를 만들과 실행했습니다. 그런데, 어떤 경우에 실행된 thread가 종료되지 않고, wait하고 있는 경우를 만들기 위해서, test2()에 1회 실행후 while(1)으로 loop를 실행했습니다. 원래 의도는 thread가 이미 실행되고 있다면, 다시 생성하지 않아야 할텐데, compile후 실행해 보면, 항상 새로운 thread가 생성됩니다. 이전에 생성한 thread가 아직 실행중이거나 종료되지 않았다면, 새로운 thread를 생성하지 않도록 할수는 없는지 문의 드립니다.

compile은 linux 환경에서 "gcc -Wall -lpthread -lrt -o tmtest tmtest.c"로 했습니다.

세벌의 이미지

리눅스 설치한 컴에서 행정 업무 가능?

https://zdnet.co.kr/view/?no=20220221163011
읽어보니 엠에스 윈도 아니고 리눅스 설치한 노트북 컴퓨터를 보급하고,
그 컴퓨터로 행정업무를 하겠다는 얘긴데요.
행정업무 시스템 중 엠에스 윈도 전용 시스템이 많은 것으로 알고 있는데.
어떻게 가능할까요?

익명 사용자의 이미지

[리눅스 커널] 128번을 제외한 외부 인터럽트 핸들러를 do_IRQ()로 통일한 이유?

리눅스 커널 내부구조라는 책을 보며 공부하고있는 학생입니다.
128번 인터럽트(system call)을 제외한 나머지 인터럽트의 핸들러를 do_IRQ()로 통일시키고, irq_table을 따로 만들어서 처리를 하던데, 굳이 irq_table을 따로 만들 필요가 있나요?

인터럽트 핸들러는 등록할 수 있는 갯수가 정해져있어서 아무거나 등록하면 안되고, 동적으로 할당 및 해제할 수 있다고는 하는데 이게 irq_table을 따로 만들어야 할 이유가 되는지는 모르겠습니다.
IDT_table은 수정이 안되나요?

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기