mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-09-10 02:33:49 +00:00
Make improvements
- Emulator can now test the αcτµαlly pδrταblε εxεcµταblε bootloader - Whipped up a webserver named redbean. It services 150k requests per second on a single core. Bundling assets inside zip enables extremely fast serving for two reasons. The first is that zip central directory lookups go faster than stat() system calls. The second is that both zip and gzip content-encoding use DEFLATE, therefore, compressed responses can be served via the sendfile() system call which does an in-kernel copy directly from the zip executable structure. Also note that red bean zip executables can be deployed easily to all platforms, since these native executables work on Linux, Mac, BSD, and Windows. - Address sanitizer now works very well
This commit is contained in:
parent
7327c345f9
commit
416fd86676
230 changed files with 9835 additions and 5682 deletions
|
@ -1,2 +1,2 @@
|
|||
.include "o/libc/sysv/macros.inc"
|
||||
.scall getdents 0x00630110ffff004e globl hidden
|
||||
.scall getdents 0x00630110ffff00d9 globl hidden
|
||||
|
|
|
@ -1313,6 +1313,18 @@ syscon ex EX_CONFIG 78 78 78 78 78 # unix consensus & force NT
|
|||
syscon ex EX__BASE 64 64 64 64 64 # unix consensus & force NT
|
||||
syscon ex EX__MAX 78 78 78 78 78 # unix consensus & force NT
|
||||
|
||||
# getdents() constants
|
||||
#
|
||||
# group name GNU/Systemd XNU's Not UNIX FreeBSD OpenBSD XENIX Commentary
|
||||
syscon dt DT_UNKNOWN 0 0 0 0 0 # consensus
|
||||
syscon dt DT_FIFO 1 1 1 1 1 # unix consensus & faked nt
|
||||
syscon dt DT_CHR 2 2 2 2 2 # unix consensus & faked nt
|
||||
syscon dt DT_DIR 4 4 4 4 4 # unix consensus & faked nt
|
||||
syscon dt DT_BLK 6 6 6 6 6 # unix consensus & faked nt
|
||||
syscon dt DT_REG 8 8 8 8 8 # unix consensus & faked nt
|
||||
syscon dt DT_LNK 10 10 10 10 10 # unix consensus & faked nt
|
||||
syscon dt DT_SOCK 12 12 12 12 12 # unix consensus & faked nt
|
||||
|
||||
# msync() flags
|
||||
#
|
||||
# group name GNU/Systemd XNU's Not UNIX FreeBSD OpenBSD XENIX Commentary
|
||||
|
@ -1382,6 +1394,10 @@ syscon msg MSG_SYN 0x0400 0 0 0 0
|
|||
|
||||
syscon sol SOL_IP 0 0 0 0 0 # consensus
|
||||
syscon sol SOL_SOCKET 1 0xffff 0xffff 0xffff 0xffff # bsd+nt consensus
|
||||
syscon sol SOL_TCP 6 6 6 6 6
|
||||
syscon sol SOL_UDP 17 17 17 17 17
|
||||
syscon sol SOL_IPV6 41 41 41 41 41
|
||||
syscon sol SOL_ICMPV6 58 58 58 58 0
|
||||
syscon sol SOL_AAL 265 0 0 0 0
|
||||
syscon sol SOL_ALG 279 0 0 0 0
|
||||
syscon sol SOL_ATM 264 0 0 0 0
|
||||
|
@ -1389,8 +1405,6 @@ syscon sol SOL_BLUETOOTH 274 0 0 0 0
|
|||
syscon sol SOL_CAIF 278 0 0 0 0
|
||||
syscon sol SOL_DCCP 269 0 0 0 0
|
||||
syscon sol SOL_DECNET 261 0 0 0 0
|
||||
syscon sol SOL_ICMPV6 58 0 0 0 0
|
||||
syscon sol SOL_IPV6 41 0 0 0 0
|
||||
syscon sol SOL_IRDA 266 0 0 0 0
|
||||
syscon sol SOL_IUCV 277 0 0 0 0
|
||||
syscon sol SOL_KCM 281 0 0 0 0
|
||||
|
@ -1404,9 +1418,7 @@ syscon sol SOL_PPPOL2TP 273 0 0 0 0
|
|||
syscon sol SOL_RAW 255 0 0 0 0
|
||||
syscon sol SOL_RDS 276 0 0 0 0
|
||||
syscon sol SOL_RXRPC 272 0 0 0 0
|
||||
syscon sol SOL_TCP 6 0 0 0 0
|
||||
syscon sol SOL_TIPC 271 0 0 0 0
|
||||
syscon sol SOL_UDP 17 0 0 0 0
|
||||
syscon sol SOL_X25 262 0 0 0 0
|
||||
|
||||
syscon in IN_LOOPBACKNET 127 127 127 127 0 # unix consensus
|
||||
|
@ -1656,15 +1668,6 @@ syscon misc BLKSECTGET 0x1267 0 0 0 0
|
|||
syscon misc BLKSECTSET 0x1266 0 0 0 0
|
||||
syscon misc BLKSSZGET 0x1268 0 0 0 0
|
||||
|
||||
syscon misc DT_UNKNOWN 0 0 0 0 0 # consensus
|
||||
syscon misc DT_BLK 6 6 6 6 0 # unix consensus
|
||||
syscon misc DT_CHR 2 2 2 2 0 # unix consensus
|
||||
syscon misc DT_DIR 4 4 4 4 0 # unix consensus
|
||||
syscon misc DT_FIFO 1 1 1 1 0 # unix consensus
|
||||
syscon misc DT_LNK 10 10 10 10 0 # unix consensus
|
||||
syscon misc DT_REG 8 8 8 8 0 # unix consensus
|
||||
syscon misc DT_SOCK 12 12 12 12 0 # unix consensus
|
||||
|
||||
syscon misc TH_FIN 1 1 1 1 1 # consensus
|
||||
syscon misc TH_SYN 2 2 2 2 2 # consensus
|
||||
syscon misc TH_RST 4 4 4 4 4 # consensus
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_BLK 6 6 6 6 0
|
||||
.syscon dt DT_BLK 6 6 6 6 6
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_CHR 2 2 2 2 0
|
||||
.syscon dt DT_CHR 2 2 2 2 2
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_DIR 4 4 4 4 0
|
||||
.syscon dt DT_DIR 4 4 4 4 4
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_FIFO 1 1 1 1 0
|
||||
.syscon dt DT_FIFO 1 1 1 1 1
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_LNK 10 10 10 10 0
|
||||
.syscon dt DT_LNK 10 10 10 10 10
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_REG 8 8 8 8 0
|
||||
.syscon dt DT_REG 8 8 8 8 8
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_SOCK 12 12 12 12 0
|
||||
.syscon dt DT_SOCK 12 12 12 12 12
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon misc DT_UNKNOWN 0 0 0 0 0
|
||||
.syscon dt DT_UNKNOWN 0 0 0 0 0
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon sol SOL_ICMPV6 58 0 0 0 0
|
||||
.syscon sol SOL_ICMPV6 58 58 58 58 0
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon sol SOL_IPV6 41 0 0 0 0
|
||||
.syscon sol SOL_IPV6 41 41 41 41 41
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon sol SOL_TCP 6 0 0 0 0
|
||||
.syscon sol SOL_TCP 6 6 6 6 6
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon sol SOL_UDP 17 0 0 0 0
|
||||
.syscon sol SOL_UDP 17 17 17 17 17
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
.include "libc/sysv/consts/syscon.inc"
|
||||
.syscon ioctl TIOCOUTQ 0x5411 0x40047473 0x40047473 0x40047473 -1
|
||||
.syscon termios TIOCOUTQ 0x5411 0x40047473 0x40047473 0x40047473 -1
|
||||
|
|
|
@ -1,28 +1,28 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_SYSV_CONSTS_DT_H_
|
||||
#define COSMOPOLITAN_LIBC_SYSV_CONSTS_DT_H_
|
||||
#include "libc/runtime/symbolic.h"
|
||||
|
||||
#define DT_BLK SYMBOLIC(DT_BLK)
|
||||
#define DT_CHR SYMBOLIC(DT_CHR)
|
||||
#define DT_DIR SYMBOLIC(DT_DIR)
|
||||
#define DT_FIFO SYMBOLIC(DT_FIFO)
|
||||
#define DT_LNK SYMBOLIC(DT_LNK)
|
||||
#define DT_REG SYMBOLIC(DT_REG)
|
||||
#define DT_SOCK SYMBOLIC(DT_SOCK)
|
||||
#define DT_UNKNOWN SYMBOLIC(DT_UNKNOWN)
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
hidden extern const long DT_BLK;
|
||||
hidden extern const long DT_UNKNOWN;
|
||||
hidden extern const long DT_FIFO;
|
||||
hidden extern const long DT_CHR;
|
||||
hidden extern const long DT_DIR;
|
||||
hidden extern const long DT_FIFO;
|
||||
hidden extern const long DT_LNK;
|
||||
hidden extern const long DT_BLK;
|
||||
hidden extern const long DT_REG;
|
||||
hidden extern const long DT_LNK;
|
||||
hidden extern const long DT_SOCK;
|
||||
hidden extern const long DT_UNKNOWN;
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
|
||||
#define DT_UNKNOWN LITERALLY(0)
|
||||
#define DT_FIFO LITERALLY(1)
|
||||
#define DT_CHR LITERALLY(2)
|
||||
#define DT_DIR LITERALLY(4)
|
||||
#define DT_BLK LITERALLY(6)
|
||||
#define DT_REG LITERALLY(8)
|
||||
#define DT_LNK LITERALLY(10)
|
||||
#define DT_SOCK LITERALLY(12)
|
||||
|
||||
#endif /* COSMOPOLITAN_LIBC_SYSV_CONSTS_DT_H_ */
|
||||
|
|
|
@ -243,7 +243,7 @@ scall lookup_dcookie 0xffffffffffff00d4 globl
|
|||
scall epoll_create 0xffffffffffff00d5 globl
|
||||
scall epoll_wait 0xffffffffffff00e8 globl
|
||||
scall epoll_ctl 0xffffffffffff00e9 globl
|
||||
scall getdents 0x00630110ffff004e globl hidden
|
||||
scall getdents 0x00630110ffff00d9 globl hidden # getdents64 on linux
|
||||
scall set_tid_address 0xffffffffffff00da globl
|
||||
scall restart_syscall 0xffffffffffff00db globl
|
||||
scall semtimedop 0xffffffffffff00dc globl
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue