मुझे kgdb-gdb रिमोट कनेक्शन के लिए सीरियल पोर्ट सॉकेट बनाने की आवश्यकता है।टाइप सॉकेट की विशेष फाइलें कैसे बनाएं?
जैसे mkfifo
आपके सिस्टम पर एक फीफो बनाता है, हम सॉकेट फ़ाइलों को कैसे बना सकते हैं?
मुझे kgdb-gdb रिमोट कनेक्शन के लिए सीरियल पोर्ट सॉकेट बनाने की आवश्यकता है।टाइप सॉकेट की विशेष फाइलें कैसे बनाएं?
जैसे mkfifo
आपके सिस्टम पर एक फीफो बनाता है, हम सॉकेट फ़ाइलों को कैसे बना सकते हैं?
@cidermonkey द्वारा स्वीकृत उत्तर में लिंक शानदार है यदि आप सॉकेट का उपयोग करने वाले ऐप को लिखने का प्रयास कर रहे हैं। , जीसीसी
#include <fcntl.h>
#include <sys/un.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
int main(int argc, char **argv)
{
// The following line expects the socket path to be first argument
char * mysocketpath = argv[1];
// Alternatively, you could comment that and set it statically:
//char * mysocketpath = "/tmp/mysock";
struct sockaddr_un namesock;
int fd;
namesock.sun_family = AF_UNIX;
strncpy(namesock.sun_path, (char *)mysocketpath, sizeof(namesock.sun_path));
fd = socket(AF_UNIX, SOCK_DGRAM, 0);
bind(fd, (struct sockaddr *) &namesock, sizeof(struct sockaddr_un));
close(fd);
return 0;
}
फिर स्थापित यह संकलन, और टा: यदि आप सचमुच सिर्फ एक बनाना चाहते हैं आप अजगर में कर सकते हैं:
~]# python -c "import socket as s; sock = s.socket(s.AF_UNIX); sock.bind('/tmp/somesocket')"
~]# ll /tmp/somesocket
srwxr-xr-x. 1 root root 0 Mar 3 19:30 /tmp/somesocket
या with a tiny C program, जैसे, create-a-socket.c
के लिए निम्न बचाने दा:
~]# gcc -o create-a-socket create-a-socket.c
~]# ./create-a-socket mysock
~]# ll mysock
srwxr-xr-x. 1 root root 0 Mar 3 17:45 mysock
महान उत्तर @rsaw! बहुत ही निर्देशक के अलावा, यह भी बताता है कि क्यों पाइथन कभी-कभी पसंदीदा प्रोग्रामिंग भाषा है। –
@rsaw ग्रेट पायथन जवाब। इसके लिए शुक्रिया। = :) –
सी https://stackoverflow.com/questions/20171747/how-to-create-unix-domain-socket-with-a- विशिष्ट- पैरामिशन | खोल https://serverfault.com/questions/358866/create-unix-named-socket-from-the-command-line इसके अलावा मैंने किसी भी सॉकेट मैन्युअल रूप से बनाए बिना केजीडीबी जीडीबी प्रबंधित किया: https://stackoverflow.com/a/44226360/895245 –
नीचे दिए गए अंक को @rsaw अंक देने के उत्तर के रूप में चिह्नित करने पर विचार करें। –