linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sergiy Lozovsky <serge_lozovsky@yahoo.com>
To: Timothy Miller <miller@techsource.com>
Cc: John Stoffel <stoffel@lucent.com>,
	Helge Hafting <helgehaf@aitel.hist.no>,
	linux-kernel@vger.kernel.org
Subject: Re: kernel stack challenge
Date: Mon, 5 Apr 2004 16:27:55 -0700 (PDT)	[thread overview]
Message-ID: <20040405232755.93075.qmail@web40504.mail.yahoo.com> (raw)
In-Reply-To: <4071DBBB.4010704@techsource.com>

I wanted something higher level than C. Forth looks
like C to me. I wanted something with build in support
of complex structures and automatic memory management.

I see no reason to replace one C with another.

> Did you separate out the parser out into a
> user-space daemon?

I didn't. It's possible optimization, but it will not
give any good. The syntax of LISP is much simpler than
Forth (this another reason I chose LISP :-), so parser
is very small.

> >>Why do you choose LISP?  Don't you want to use a
> >>language that sysadmins 
> >>will actually KNOW?

At the start of the project I tried to design my own
small language (just for security system). At this
point I understood that I didn't want to settle with
anything less than universal language. The idea to
invent some language and write VM for it didn't appeal
to me. I wanted to make a security system, not a new
language. I wanted language to be as simple as
possible. LISP had the simpliest syntax from all
languages. So I found small lisp interpreter (kind of
real time - without garbage collector which stops
execution) added string and bit operations, modified
it to be placed in the kernel.

Ok, it was my marketing claim about sysadmins :-)
Sysadmins use web interface to configure polices and
don't deal with LISP at all.

LISP is for those who want to change security Models
only.

Serge.

--- Timothy Miller <miller@techsource.com> wrote:
> 
> 
> Sergiy Lozovsky wrote:
> > --- Timothy Miller <miller@techsource.com> wrote:
> > 
> >>
> >>Sergiy Lozovsky wrote:
> >>
> >>
> >>>
> >>>All LISP errors are incapsulated within LISP VM.
> >>> 
> >>
> >>
> >>A LISP VM is a big, giant, bloated.... *CHOKE*
> >>*COUGH* *SPUTTER* 
> >>*SUFFOCATE* ... thing which SHOULD NEVER be in the
> >>kernel.
> > 
> > 
> > It is a smallest interpreter (of all purpose
> language)
> > I was able to find. My guess is that you refer to
> the
> > Common Lisp. it is huge and I don't use it.
> 
> Did you separate out the parser out into a
> user-space daemon?
> 
> Also, if you want a regular programming language
> with an extremely small 
> interpreter, try Forth.
> 
> Learning Forth should be at LEAST as much fun as
> learning LISP.
> 
> > 
> > 
> >>If you want to use a more abstract language for
> >>describing kernel 
> >>security policies, fine.  Just don't use LISP.
> > 
> > 
> > Point me to ANy langage with VM around 100K.
> 
> I bet a Forth interpreter would be smaller.
> 
> And for something specialized like security policy,
> you could probably 
> develop your own language and interpreter for it,
> and it would be 
> smaller (and faster) still.
> 
> > 
> > 
> >>The right way to do it is this:
> >>
> >>- A user space interpreter reads text-based config
> >>files and converts 
> >>them into a compact, easy-to-interpret code used
> by
> >>the kernel.
> >>
> >>- A VERY TINY kernel component is fed the security
> >>policy and executes it.
> > 
> > 
> > it is exactly the way it is implemented. Not
> everyone
> > need to create their own security model (that VERY
> > TINY kernel component you refer to). But even for
> > those who want to modify or create their own VERY
> TINY
> > kernel component - they don't need to do that in C
> and
> > debug it in th kernel crashing it.
> 
> You misunderstand.  When I say "VERY TINY kernel
> component", I'm 
> referring to the interpreter.  Done properly, the
> pcode for the policy 
> itself would be microscopic.
> 
> > 
> > 
> >>Move as much of the processing as reasonable into
> >>user space.  It's 
> >>absolutely unnecessary to have the parser into the
> >>kernel, because 
> >>parsing of the config files is done only when the
> >>ASCII text version 
> >>changes.
> >>
> >>It's absolutely unnecessary to have something as
> >>complex as LISP to 
> >>interpret it, when something simple and compact
> >>could do just as well.
> >>
> >>Why do you choose LISP?  Don't you want to use a
> >>language that sysadmins 
> >>will actually KNOW?
> > 
> > 
> > It was is) the smallest VM I know of.
> 
> Forth.
> 
> 


__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/

  reply	other threads:[~2004-04-05 23:28 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-04  6:48 kernel stack challenge Sergiy Lozovsky
2004-04-05  9:39 ` Helge Hafting
2004-04-05 17:05   ` Sergiy Lozovsky
2004-04-05 18:06     ` Timothy Miller
2004-04-05 17:59       ` Sergiy Lozovsky
2004-04-05 19:27         ` Valdis.Kletnieks
2004-04-05 21:14           ` Timothy Miller
2004-04-05 20:09         ` John Stoffel
2004-04-05 20:54           ` Sergiy Lozovsky
2004-04-05 21:08             ` Chris Wright
2004-04-05 21:40               ` Sergiy Lozovsky
2004-04-05 21:53                 ` Chris Wright
2004-04-05 22:22                 ` Timothy Miller
2004-04-05 23:49                   ` Sergiy Lozovsky
2004-04-06 13:25                     ` Jesse Pollard
     [not found]                     ` <20040406132750$3d4e@grapevine.lcs.mit.edu>
     [not found]                       ` <mit.lcs.mail.linux-kernel/20040406132750$3d4e@grapevine.lcs.mit.edu>
2004-04-06 16:40                         ` Patrick J. LoPresti
2004-04-06 19:10                           ` Timothy Miller
2004-04-06 20:53                             ` Patrick J. LoPresti
2004-04-06 21:24                               ` Timothy Miller
2004-04-07 14:36                           ` Jesse Pollard
2004-04-05 21:28             ` Timothy Miller
2004-04-05 21:21               ` Stephen Smoogen
2004-04-05 22:25                 ` Timothy Miller
2004-04-05 21:30               ` Sergiy Lozovsky
2004-04-05 21:45                 ` Kevin Fox
2004-04-05 21:59                 ` Robin Rosenberg
2004-04-05 22:52                   ` Sergiy Lozovsky
2004-04-06  0:46                     ` Robin Rosenberg
2004-04-06  0:55                     ` Robin Rosenberg
2004-04-06  3:02                       ` Sergiy Lozovsky
2004-04-06  3:04                         ` Randy.Dunlap
2004-04-05 22:20                 ` Timothy Miller
2004-04-05 23:27                   ` Sergiy Lozovsky [this message]
2004-04-06 20:16                 ` Horst von Brand
2004-04-06 20:58                   ` Timothy Miller
2004-04-06 22:05                     ` Sergiy Lozovsky
2004-04-06 22:56                       ` Timothy Miller
2004-04-06 23:17                         ` Sergiy Lozovsky
2004-04-08 13:11                           ` Martin Waitz
2004-04-08 22:33                             ` Sergiy Lozovsky
2004-04-07  2:44                       ` Horst von Brand
2004-04-07 17:54                         ` Sergiy Lozovsky
2004-04-08  2:43                           ` Horst von Brand
2004-04-08  4:07                             ` Sergiy Lozovsky
2004-04-08  4:29                               ` Horst von Brand
2004-04-08 22:51                                 ` Sergiy Lozovsky
2004-04-08 15:44                               ` Valdis.Kletnieks
2004-04-08 22:22                                 ` Sergiy Lozovsky
2004-04-09 15:27                                   ` Jesse Pollard
2004-04-05 21:12         ` Timothy Miller
2004-04-06 13:32     ` Helge Hafting
2004-04-06 17:44       ` Sergiy Lozovsky
2004-04-07  1:02         ` Horst von Brand
2004-04-07  1:34           ` Sergiy Lozovsky
2004-04-07  8:57             ` David Weinehall
2004-04-07 13:38               ` Chris Friesen
2004-04-07 17:12                 ` Sergiy Lozovsky
2004-04-07 17:16               ` Sergiy Lozovsky
2004-04-07  2:30           ` viro
2004-04-06 18:33       ` Jamie Lokier
2004-04-06 18:51         ` Sergiy Lozovsky
     [not found] <1H9LV-5Jb-1@gated-at.bofh.it>
2004-04-04 11:27 ` Andi Kleen
2004-04-04 18:24   ` Sergiy Lozovsky
2004-04-04 18:38     ` Muli Ben-Yehuda
     [not found] <200404052043.i35KhDvS020176@turing-police.cc.vt.edu>
2004-04-05 21:06 ` Sergiy Lozovsky
     [not found] <200404052026.i35KQh5g004342@eeyore.valparaiso.cl>
2004-04-05 21:21 ` Sergiy Lozovsky
2004-04-06 20:01   ` Horst von Brand
     [not found] <200404061606.i36G6YLE003375@eeyore.valparaiso.cl>
2004-04-06 18:04 ` Sergiy Lozovsky
2004-04-06 18:28   ` John Stoffel
2004-04-06 18:48     ` Sergiy Lozovsky
2004-04-06 18:57   ` Richard B. Johnson
2004-04-06 21:15     ` Sergiy Lozovsky
2004-04-06 22:44       ` Timothy Miller
2004-04-06 22:57         ` viro
2004-04-06 23:32           ` Sergiy Lozovsky
2004-04-06 23:45             ` Robin Rosenberg
2004-04-07  2:25       ` Horst von Brand
     [not found] <200404061618.i36GIHgW003419@eeyore.valparaiso.cl>
2004-04-06 18:16 ` Sergiy Lozovsky
2004-04-06 20:01   ` Valdis.Kletnieks
2004-04-06 21:38     ` Sergiy Lozovsky
2004-04-06 22:46       ` Timothy Miller
     [not found] <24DA9B48-8827-11D8-87A5-000A9585C204@able.es>
2004-04-07  0:27 ` Sergiy Lozovsky
     [not found] <58907794@toto.iv>
2004-04-07  4:29 ` Peter Chubb
     [not found] <20040409182517.330.qmail@web40508.mail.yahoo.com>
2004-04-10  4:17 ` Horst von Brand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040405232755.93075.qmail@web40504.mail.yahoo.com \
    --to=serge_lozovsky@yahoo.com \
    --cc=helgehaf@aitel.hist.no \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miller@techsource.com \
    --cc=stoffel@lucent.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).