|
[20080331]
|
Catching up: portability, mult, Freescale i.mx31, fortunes, growfs, SMP, IIJ SEIL/X
I've had a bunch of things sit here, some a bit dated, some brand
new. I'll put them all into one item here due to lazyness:
- Following Wikipedia, Portability is
``the general characteristic of being readily transportable from one location to another'', and it's also
a major goal of NetBSD.
Things start to get interesting when looking into details, e.g.
Wikipedia also
states that ``Software is portable when the cost of porting it to a new platform is less than the cost of writing it from scratch. The lower the cost of porting software, relative to its implementation cost, the more portable it is said to be.''
So there's some room for interpretation when defining what is
portable and what is not, and to what extent.
Besides my essay on
What makes an operating system portable,
there was a
posting
to the netbsd-advocacy mailing-list that goes into a few
details on NetBSD's current state of portability.
The posting lists a number of reasons why the author considers
NetBSD to be portable, including the low effort to start new
projects, central maintenance in one source tree, and the efforts
from machine-independent changes to all ports.
After reading about people doing research on how to
assess "security" of operating systems by counting number
of exploits and how quick they are patched, I wonder if
there are some metrics out there to also put "portability"
into numbers.
- I've mentioned
the mult project
some time ago. In one of their latest recordings, there's also
a interview with its creator,
Kristaps Dzonsons, on it on
BSDtalk, available in
mp3
and
ogg formats. Thanks to Mark Weinem for the hint!
- Following some
discussion on NetBSD on the
Freescale i.mx31 board,
Matt Thomas has posted a dmesg output.
Mentioned here for all the fans of dmesg pr0n. :-)
- To give new users hints on how to use NetBSD, Jeremy C. Reed has
started
a netbsd-tips fortune database. It's part of NetBSD-current
and can be run from .login/.profile by running "fortune netbsd-tips".
There's also a
wiki page that allows easy submitting of
new entries. Feel free to contribute your special NetBSD gems!
- NetBSD's handling of harddisks and file systems is pretty static
right now - while one can add additional disks to a system,
and even span them using RAIDframe and ccd(4), extending the
filesystem on top of it is a problem. This is being mitigated
by Juan Romero Pardines' port of growfs(8): ``I've just adapted growfs(8) from OpenBSD (they adapted the FreeBSD code),
which is able to grow FFSv1 and FFSv2 filesystems.
I tested growing a partition in FFSv1 and FFSv2 from 1GB to 4GB and the
process was smooth (and fast); after this I ran 'fsck_ffs -yf /fs' and it
found one error that was fixed correctly.''
For more information, including where to get the code and what
to test, see Juan's posting.
There were a few attempts to get logical volume management (LVM)
onto NetBSD, which were not successful so far. This may change
in the future, and when flexible handling of storage volumes,
with growfs(8) will be useful to manage FFS/UFS file system
sitting on top of them.
- Andrew Doran has continued his hacking to improve NetBSD on
SMP machines, and he has posted about
making the socket code and the Unix domain communication
running fine-grained, and about
speeding up device detection during booting by running
device configuration in a number of concurrent kernel threads.
If someone has actual numbers on boot time before/after
that patch, please post them to the list!
- When needing sources for some Open Source package, I've used
"make extract NO_DEPENDS=1" with pkgsrc in the past. It
seems that was removed without further notice, and
Obata Akio was kind enough to
point out
that this can be done now by using SKIP_DEPENDS=yes.
Mmm, interface stability...
- Last but not least a note from the "products based on NetBSD"
department:
Saitoh Masanobu from
IIJ, Japan, has
notified us that
the SEIL/X series that IIJ unveils at AsiaBSDCon 2008 is based on NetBSD.
There's a
brochure on SEIL/X that mentions a long
list of features supported by the machine, including all
state of chw art in routing, bridging, VPN, firewalling,
quality of service and more.
This is made possible by the "SEIL Engine", a software
architecture that's based on NetBSD that allows porting
the application stack to a number of hardware platforms
easily, while offering flexibility to add support for
custom hardware and software modules:
For more information on the SEIL Engine, see IIJ/SEIL's
homepage (Japanese).
and
PDF brochude (English).
Also, for some impression of the SEIL/X machine on the geek
level, there's
dmesg output of the machine available.
That's all for today. To get your very latest copy of NetBSD,
use our
daily builds
and
anoncvs.
[Tags: arm, dmesg, embedded, fortunes, freescale, growfs, iij, mult, portability, Products, seil, smp]
|
|
[20050807]
|
Of course it runs NetBSD?
This slogan isn't probably no longer as true as it used to be,
but in his
article about the current state of the Linux kernel,
Geoff Broadwell writes
``Linux now supports more devices on more platforms than any other operating system ever (Linux passed NetBSD last year, an impressive achievement)''.
My question in that context is: What is that "Linux" that's supporting
all these devices? Is it what everyone can grab on kernel.org? Or is
it just a term for a set of operating system kernels that behave
roughly the same on all platforms they run? Or do they really all
run kernels from the same sources? Reminds me of my
musing about portability some time ago...
is Linux (the kernel) really there were NetBSD is today? (serious question!)
Of course things look even more different in the userland, I guess,
with NetBSD's crosscompiling framework for userland and X...
[Tags: portability, rants]
|
|
[20050726]
|
Article: Best practices for portable patches
An article at NewsForge describes
how to keep software portable across various operating systems.
Good to see some "not all the world is Linux" propaganda!
[Tags: Articles, portability]
|
|
[20050402]
|
Article: Making Packager-Friendly Software
In this OnLAMP article,
Julio M. Merino Vidal describes many traps and pitfalls that
authors of Free/Open Source Software can make. Assuming their software
is good, it will be included in various packages collections (like
pkgsrc) sooner or later. The software author can make the package
creater's job a lot easier following the guidelines given here.
Topics covered include what to include into and how to handle
distribution files (tar archives, ...), documentation, offer
hooks for easy configuration as well as discussing several ways
for automating and tunig that process.
[Tags: Articles, portability]
|
|
[20050320]
|
Making NetBSD's (a)sh pass regression test with 0 errors
David Laight has changed NetBSD's (a)sh
to pass all the IFS tests in this regression test. For comparison, here are a few numbers
from various sh(compatible) shells (sorted best to worst):
sh NetBSD-current: # tests 6856 passed 6856 failed 0
bash 2.05b.0(1): # tests 6856 passed 5408 failed 1448
bash 3.00.16(1): # tests 6856 passed 5408 failed 1448
ksh Solaris 9/x86: # tests 6856 passed 4456 failed 2400
ksh NetBSD 2.0_STABLE: # tests 6856 passed 2584 failed 4272
sh NetBSD 2.0_STABLE: # tests 6856 passed 1176 failed 5680 ordered 1336
sh Solaris 9/x86: aborts with "bad substitution"
[Tags: portability, sh]
|
|
|
Tags: ,
2bsd,
3com,
501c3,
64bit,
acl,
acls,
acm,
acorn,
acpi,
acpitz,
adobe,
Advocacy,
advocacy,
advogato,
aes,
afs,
aiglx,
aio,
airport,
alereon,
alex,
alix,
alpha,
altq,
am64t,
amazon,
amd64,
anatomy,
ansible,
apache,
apm,
apple,
arkeia,
arla,
arm,
art,
Article,
Articles,
ascii,
asiabsdcon,
asterisk,
asus,
atf,
ath,
atheros,
atmel,
audio,
audiocodes,
autoconf,
avocent,
avr32,
aws,
axigen,
backup,
banners,
basename,
bash,
bc,
benchmark,
bigip,
bind,
blackmouse,
bldgblog,
blog,
blogs,
blosxom,
bluetooth,
bonjour,
books,
boot,
boot-z,
bootprops,
bozohttpd,
bs2000,
bsd,
bsdca,
bsdcan,
bsdcertification,
bsdcg,
bsdforen,
bsdfreak,
bsdmac,
bsdmagazine,
bsdnexus,
bsdstats,
bsdtalk,
bsdtracker,
bug,
build.sh,
busybox,
buttons,
bzip,
c-jump,
c99,
cafepress,
callweaver,
camera,
candy,
capabilities,
card,
carp,
cars,
cauldron,
ccc,
ccd,
cd,
cddl,
cdrom,
cdrtools,
cebit,
centrino,
cephes,
cert,
certification,
cfs,
cgd,
cgf,
checkpointing,
china,
cisco,
cloud,
clt,
cobalt,
coccinelle,
codian,
colossus,
common-criteria,
community,
compat,
compiz,
compsci,
concept04,
config,
console,
contest,
copyright,
core,
cortina,
coverity,
cpu,
cradlepoint,
cray,
crosscompile,
crunchgen,
cryptography,
csh,
cu,
cuneiform,
curses,
curtain,
cuwin,
cvs,
cvs-digest,
cvsup,
cygwin,
daemon,
daemonforums,
danger,
darwin,
data,
date,
dd,
debian,
debugging,
dell,
desktop,
devd,
devfs,
devotionalia,
df,
dfd_keeper,
dhcp,
dhcpcd,
dhcpd,
dhs,
diezeit,
digest,
digests,
dilbert,
dirhash,
disklabel,
distcc,
dmesg,
Docs,
donations,
draco,
dracopkg,
dragonflybsd,
dreamcast,
dri,
driver,
drivers,
drm,
dsl,
dst,
dtrace,
dvb,
ec2,
eclipse,
eeepc,
eeepca,
ehci,
ehsm,
eifel,
elf,
em64t,
Embedded,
embedded,
emips,
emulate,
encoding,
envsys,
eol,
espresso,
etcupdate,
etherip,
euca2ools,
eucalyptus,
eurobsdcon,
eurosys,
Events,
exascale,
ext3,
f5,
facebook,
falken,
fan,
fatbinary,
features,
fefe,
ffs,
filesystem,
fileysstem,
firefox,
firewire,
fireworks,
flag,
flash,
flashsucks,
flickr,
flyer,
fmslabs,
force10,
fortunes,
fosdem,
fpga,
freebsd,
freedarwin,
freescale,
freex,
freshbsd,
friendlyAam,
friendlyarm,
fritzbox,
froscamp,
fsck,
fss,
fstat,
ftp,
ftpd,
fujitsu,
fun,
fundraising,
funds,
funny,
fuse,
fusion,
g4u,
g5,
galaxy,
games,
gcc,
gdb,
gentoo,
geode,
getty,
gimstix,
git,
gnome,
google,
google-soc,
gpio,
gpl,
gprs,
gracetech,
gre,
groff,
groupwise,
growfs,
grub,
gumstix,
guug,
gzip,
hackathon,
hackbench,
hal,
hanoi,
happabsd,
Hardware,
haze,
hdaudio,
heat,
heimdal,
hf6to4,
hfblog,
hfs,
history,
hosting,
hp,
hp700,
hpcarm,
hpcsh,
hpux,
html,
httpd,
hubertf,
hurd,
i18n,
i386,
i386pkg,
ia64,
ian,
ibm,
ids,
ieee,
ifwatchd,
igd,
iij,
image,
images,
information,
init,
initrd,
install,
intel,
interix,
internet2,
io,
ioccc,
iostat,
ipbt,
ipfilter,
ipmi,
ipsec,
ipv6,
irbsd,
irc,
irix,
iscsi,
isdn,
iso,
isp,
itojun,
jail,
jails,
java,
javascript,
jibbed,
jihbed,
jobs,
jokes,
journaling,
kame,
kauth,
kde,
kerberos,
kergis,
kernel,
keyboardcolemak,
kitt,
kmod,
kolab,
kylin,
l10n,
landisk,
laptop,
laptops,
law,
ld.so,
ldap,
lehmanns,
lenovo,
lfs,
libc,
license,
licensing,
links,
linksys,
linux,
linuxtag,
live-cd,
lkm,
localtime,
locate.updatedb,
logfile,
logging,
logo,
logos,
lom,
lte,
lvm,
m68k,
macmini,
macppc,
macromedia,
magicmouse,
mahesha,
mail,
makefs,
malo,
mame,
manpages,
marvell,
matlab,
maus,
mbr95,
mbuf,
mca,
mdns,
mediant,
mediapack,
meetbsd,
mercurial,
mesh,
meshcube,
mfs,
mhonarc,
microkernel,
microsoft,
midi,
mini2440,
miniroot,
minix,
mips,
mirbsd,
missile,
mit,
mobile-ip,
modula3,
modules,
mouse,
mp3,
mpls,
mtftp,
mult,
multics,
multilib,
multimedia,
music,
mysql,
named,
nas,
nat,
ncode,
ndis,
nec,
nemo,
neo1973,
netbook,
netboot,
netbsd,
netbsd.se,
nethack,
nethence,
netksb,
netstat,
networking,
neutrino,
nforce,
nfs,
nis,
npf,
npwr,
nroff,
nslu2,
nspluginwrapper,
ntfs-3f,
nullfs,
numa,
nvi,
nvidia,
nycbsdcon,
office,
ofppc,
ohloh,
olimex,
olpc,
onetbsd,
openat,
openbgpd,
openblocks,
openbsd,
opencrypto,
opengrok,
openmoko,
openoffice,
openpam,
opensolaris,
openssl,
oracle,
oreilly,
oscon,
osf1,
osjb,
packages,
pad,
pae,
pam,
pan,
panasonic,
parallels,
pascal,
patch,
patents,
pax,
paypal,
pc532,
pc98,
pcc,
pci,
pdf,
pegasos,
penguin,
performance,
pexpect,
pf,
pfsync,
pgx32,
php,
pike,
pinderkent,
pkg_install,
pkg_select,
pkgin,
pkglint,
pkgmanager,
pkgsrc,
pkgsrc.se,
pkgsrcCon,
pkgsrccon,
plathome,
pocketsan,
podcast,
pofacs,
politics,
polls,
polybsd,
portability,
posix,
postinstall,
power3,
powernow,
powerpc,
powerpf,
pppoe,
precedence,
preemption,
prep,
presentations,
prezi,
Products,
products,
proplib,
protectdrive,
proxy,
ps,
ps3,
psp,
pthread,
ptp,
ptyfs,
Publications,
puffs,
pxe,
qemu,
qnx,
qos,
qt,
quality-management,
quine,
quote,
quotes,
r-project,
radio,
radiotap,
raid,
raidframe,
rants,
raptor,
raq,
raspberrypi,
rc.d,
readahead,
realtime,
record,
refuse,
reiserfs,
Release,
releases,
releng,
reports,
resize,
restore,
ricoh,
rijndael,
rip,
riscos,
rng,
roadmap,
robopkg,
robot,
robots,
roff,
rootserver,
rotfl,
rox,
rs6k,
rss,
ruby,
rump,
rzip,
sa,
safenet,
san,
savin,
sbsd,
scampi,
scheduling,
sco,
screen,
script,
sdf,
sdtemp,
secmodel,
Security,
security,
sed,
segvguard,
seil,
sendmail,
sfu,
sge,
sgi,
sgimips,
sh,
sha2,
shark,
sharp,
shisa,
shutdown,
sidekick,
size,
slackware,
slashdot,
slit,
smbus,
smp,
sockstat,
soekris,
softdep,
software,
solaris,
sony,
source,
source-changes,
spanish,
sparc,
sparc64,
spider,
spreadshirt,
squid,
ssh,
sshfs,
ssp,
stereostream,
stickers,
studybsd,
subfile,
sudbury,
sudo,
summit,
sun,
sun2,
sun3,
sunfire,
sunpci,
support,
sus,
suse,
sushi,
susv3,
svn,
swcrypto,
symlinks,
sysbench,
sysinst,
sysjail,
syslog,
syspkg,
systat,
systrace,
sysupdate,
t-shirt,
tabs,
tanenbaum,
tape,
tcp,
tcp/ip,
tcpdrop,
tcpmux,
tcsh,
teamasa,
teredo,
termcap,
terminfo,
testdrive,
testing,
tetris,
tex,
TeXlive,
thecus,
theopengroup,
thin-client,
thinkgeek,
thorpej,
threads,
time,
time_t,
timecounters,
tip,
tme,
tmp,
tmpfs,
tnf,
toaster,
todo,
toolchain,
top,
torvalds,
toshiba,
touchpanel,
training,
tso,
ttyrec,
tulip,
tun,
tuning,
uboot,
udf,
ufs,
ukfs,
ums,
unetbootin,
unicos,
unix,
updating,
upnp,
uptime,
usb,
usenix,
useradd,
userconf,
userfriendly,
usermode,
usl,
utc,
utf8,
uucp,
uvc,
uvm,
valgrind,
vax,
vcfe,
vcr,
veriexec,
vesa,
video,
videos,
virtex,
vm,
vmware,
vnd,
vobb,
voip,
voltalinux,
vpn,
vpnc,
vulab,
w-zero3,
wallpaper,
wapbl,
wargames,
wasabi,
webcam,
webfwlog,
wedges,
wgt624v3,
wiki,
willcom,
wimax,
window,
windows,
winmodem,
wireless,
wizd,
wlan,
wordle,
wpa,
wscons,
wstablet,
x.org,
x11,
x2apic,
xbox,
xcast,
xen,
xfree,
xfs,
xgalaxy,
xilinx,
xkcd,
xlockmore,
xmms,
xmp,
xorg,
xscale,
youos,
youtube,
zaurus,
zdump,
zfs,
zlib
'nuff.
Grab the RSS-feed,
index,
or go back to my regular NetBSD page
Disclaimer: All opinion expressed here is purely my own.
No responsibility is taken for anything.