std::sys ব্যবহার নির্দেশিকা
std::sys হল উচ্চ-স্তরের মডিউলের নিচে OS বিমূর্ততা স্তর।
std(high-level)
-> sys dispatcher
-> sys/linux or sys/macos
-> syscall
প্রাথমিক প্রোটোকল
- বেশিরভাগ ফাংশন মূল syscall মান ফেরত দেয়।
>= 0সফল,< 0ব্যর্থতা(-errno)।- উচ্চ-স্তরের অ্যাপ কোডে সম্ভব হলে
std::sysএর পরিবর্তেstd::net,std::time,std::envপ্রথমে ব্যবহার করুন।
1. ফাইল পড়ার উদাহরণ (std::sys::fs)।
import("std::sys::fs");
fun main() {
var fd: i64 = open("/etc/hosts", 0, 0);
if (fd < 0) {
return;
}
var buf: array<u8, 256>;
var n: i64 = read(fd, &buf[0], 256);
close(fd);
}
2. সকেট উদাহরণ (std::sys::socket)।
import("std::sys::socket");
fun main() {
var fd: i64 = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (fd < 0) {
return;
}
shutdown(fd, SHUT_RDWR);
}
3. মেমরি উদাহরণ (std::sys::memory)।
import("std::sys::memory");
fun main() {
var p: ptr<u8> = sys_alloc(4096);
if (p == null) {
return;
}
sys_free(p, 4096);
}
