The recent discussion at the pub was of course about
the bits and bytes but this time with view on historical
facts. Someone remembers the bootdisk and the rootdisk?
When it was not possible to boot from CD-ROM it was
necessary to dd a bootdisk and a rootdisk image to floppy
disks. After a few installs, one of them was always fscked.
So why were we using Linux at all? Wasn't it a funny time
with TurboPascal at school? Or even better with BorlandC++
which I got hands on in '94 or so on a low-price
(b/c outdated-)version. For a price of just 80 DM
which was still high enough at that time one also got the incredible TurboDebugger and there the fun starts.
While I am not going to explain for what reason exactly
TurboDebugger was cool (I know the even more cool guys
used SoftIce :) it showed you the hard way why
RealMode really sucked in particular if there is a ProtectedMode
since years. So isnt there any good OS utilizing that?
Whats this "Linux" ...?
Thursday, December 16, 2010
Monday, December 6, 2010
Monday, November 15, 2010
Happy Birthday to .no
Special greetings and congratulations to Uschluh today
where the one and only root is celebrating his BD.
May be the force with you to withstand all evil of life
in whatever shape it will appear: users, bosses, women,
burning switches or Fedora 14.
You've got the power. Looking forward to a new Gewaltmarsch. :)
where the one and only root is celebrating his BD.
May be the force with you to withstand all evil of life
in whatever shape it will appear: users, bosses, women,
burning switches or Fedora 14.
You've got the power. Looking forward to a new Gewaltmarsch. :)
Monday, November 1, 2010
New sshttp feature trickery
sshttp is now able to hide SSH inside HTTPS as well.
SSH behind HTTP was possible before, and so was HTTPS,
but now it is "official" :)
You cannot mix HTTP and HTTPS in the same instance,
but you can run multiple sshttpd's.
I also added multicore support (basically the same
as for lophttpd, see earlier postings) AND support
for Linux capabilities. It runs as nobody in a chroot now
and only keeps CAP_NET_ADMIN and CAP_NET_BIND_SERVICE.
SSH behind HTTP was possible before, and so was HTTPS,
but now it is "official" :)
You cannot mix HTTP and HTTPS in the same instance,
but you can run multiple sshttpd's.
I also added multicore support (basically the same
as for lophttpd, see earlier postings) AND support
for Linux capabilities. It runs as nobody in a chroot now
and only keeps CAP_NET_ADMIN and CAP_NET_BIND_SERVICE.
Saturday, October 30, 2010
Multicore support for lophttpd
lophttpd (in version 0.86), which is my private research
project for high performance web servers, now comes
with support for multiple cores (Linux only for now).
Unless specified otherwise, one thread per CPU core sleeps
in a accept() loop. Increasing load of the cores will then
result in more and more connections passed to the accept()
sleeping on yet unused cores.
This works since the kernel wakeup's all threads sleeping
in the accept() but only one will actually get the
connection (all others get EAGAIN).
In OS engineering this is known as the thundering herd problem
if you have thousands of processes woken up at once.
However this does not apply here since the number of cores
is small compared to what would "thunder a herd".
So basically we take the good parts of that "problem" but do not
run into the problem itself.
If it turns out to work well, I will also add multicore
support to sshttp. And it is by far more fun to code it
than the OS classes at university discovering scheduling theoretically.
project for high performance web servers, now comes
with support for multiple cores (Linux only for now).
Unless specified otherwise, one thread per CPU core sleeps
in a accept() loop. Increasing load of the cores will then
result in more and more connections passed to the accept()
sleeping on yet unused cores.
This works since the kernel wakeup's all threads sleeping
in the accept() but only one will actually get the
connection (all others get EAGAIN).
In OS engineering this is known as the thundering herd problem
if you have thousands of processes woken up at once.
However this does not apply here since the number of cores
is small compared to what would "thunder a herd".
So basically we take the good parts of that "problem" but do not
run into the problem itself.
If it turns out to work well, I will also add multicore
support to sshttp. And it is by far more fun to code it
than the OS classes at university discovering scheduling theoretically.
Saturday, October 16, 2010
Death of a great mathematican
I just read that the great Mathematican BenoƮt Mandelbrot
died on Oct 14th.
His Mandelbrot-set fractales were one reason for me to start programming back in the days. Beside its beauty its likely
that all your mobile internet wont work without fractales
since (almost all?) antennas inside small wifi/GSM/UMTS
are self-similar to have maximum gain/space ratio. A lot of other technical and scientific
equipment would be NULL without that too, and I bet the
distribution signature of self replicating code also has to
be self-similar if it wants to be optimal. :-)
died on Oct 14th.
His Mandelbrot-set fractales were one reason for me to start programming back in the days. Beside its beauty its likely
that all your mobile internet wont work without fractales
since (almost all?) antennas inside small wifi/GSM/UMTS
are self-similar to have maximum gain/space ratio. A lot of other technical and scientific
equipment would be NULL without that too, and I bet the
distribution signature of self replicating code also has to
be self-similar if it wants to be optimal. :-)
Monday, October 11, 2010
New sshttp available
I switched the I/O engine inside sshttpd from blocking to
non-blocking sockets. Blocking I/O is by far easier,
but disappearing IPs could hang all other connections.
This should be fixed now.
Non-blocking socket state engines are really worth
a PhD thesis. :-)
Anything else is as before, just setup nf-setup
and run sshttpd.
Available for download here.
non-blocking sockets. Blocking I/O is by far easier,
but disappearing IPs could hang all other connections.
This should be fixed now.
Non-blocking socket state engines are really worth
a PhD thesis. :-)
Anything else is as before, just setup nf-setup
and run sshttpd.
Available for download here.
Friday, October 8, 2010
Hiding a sshd inside a httpd trickery
If you always asked yourself how you could run both a sshd and
an apache (or a lophttpd!) on the same TCP port 80
without patching any client or server software and still
getting always the right service, you should
have a look at sshttp.
an apache (or a lophttpd!) on the same TCP port 80
without patching any client or server software and still
getting always the right service, you should
have a look at sshttp.
Saturday, September 18, 2010
743C mails
Every now and then I check my 7-4-3-C mailbox and I was quite surprised that in the days
quite a lot of mails arrived. Please dont take it as arrogance if I am not answering, unless there are specific questions regarding
license or such.
The amount of mail is just too much and most of them do not
contain really urgent/important questions.
So please accept this post as a reply. Thanks for
the mails and the offers you made.
Continuing 743C does not depend on the amount of donations
(which has been asked for) since it was not meant to
be a commercial success-project. Nevertheless thanks to the people who did a donation.
To those familar with 4-digit hex numbers, I had to name it
743C for a certain reason. I am not dead, I am just focusing
on different projects to stay sharp. :-)
quite a lot of mails arrived. Please dont take it as arrogance if I am not answering, unless there are specific questions regarding
license or such.
The amount of mail is just too much and most of them do not
contain really urgent/important questions.
So please accept this post as a reply. Thanks for
the mails and the offers you made.
Continuing 743C does not depend on the amount of donations
(which has been asked for) since it was not meant to
be a commercial success-project. Nevertheless thanks to the people who did a donation.
To those familar with 4-digit hex numbers, I had to name it
743C for a certain reason. I am not dead, I am just focusing
on different projects to stay sharp. :-)
Friday, September 10, 2010
updated crypto tools available
I submitted new versions of crash and psc mainly
to honor even more strict GCC behavior.
A lot of my own tools dont build anymore because of some
tricky type conversion which I always thought would be
plain ANSI. Well.
It seems to me that type conversion is not a possible
thing anymore today.
GCC folks told me to use memcpy() instead of *(int *)&buf[0] = 0x73;
Time to fix.
to honor even more strict GCC behavior.
A lot of my own tools dont build anymore because of some
tricky type conversion which I always thought would be
plain ANSI. Well.
It seems to me that type conversion is not a possible
thing anymore today.
GCC folks told me to use memcpy() instead of *(int *)&buf[0] = 0x73;
Time to fix.
Subscribe to:
Posts (Atom)
