Page 2 of 19

Re:Working on the OS FAQ

Posted: Wed Feb 11, 2004 12:18 am
by BI lazy
yes.

It shall grow.

The visitor shall then pick out the information he needs.

Just my 2 cents

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 4:43 am
by Solar
Transfer of content from the old FAQ to the new one is complete as far as I can see.

:)

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 6:03 am
by Solar
One thing I saw happening in the Wiki is the addition of many pages consisting of nothing more but a single sentence - like a Glossary, but with only one term per page. (For example "Mutual Exclusion".)

I feel that this, in the long run, could ruin readability and maintainability of the Wiki. It also makes it much more difficult to, one day, compile a printable version of the FAQ.

I think we would be better off to keep the "link depth" of the Wiki limited to only one level (i.e., every page is linked directly from HomePage, and after clicking through each of the HomePage links you've read the whole FAQ). This cannot be enforced by PhpWiki, only encouraged (for example, by posting it here ;-) ).

As for a Glossary, here's a tip: PhpWiki can handle intra-page linking (as in http://www.example.com/index.php#chapter with static HTML):
#[Link] sets the anchor, and
[#Link] (or [Page#Link] if on a different page) links to it.

(And, PS: Would it be possible to make this thread sticky?)

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 6:31 am
by Pype.Clicker
well ... i have myself created a few glossary links (ProtectedMode and RealMode, for instance). i was hoping it would rather help to have small -- but sufficient -- informations about one topic at one place, and that those pages could be a placeholder for 'external links about ...'. Keeping them appart from the rest was mainly because i didn't exactly see where the information i submit could fit in the FAQ.

If we ever had to make a printable version of the FAQ, all that would be required would be to collate those info in a separate "glossary" section. Btw, i have to admit that "Mutual Exclusion" is certainly a deviation of this as it is soo lacking content and so small that it probably have been a better option to keep it in a parenthese within the base page about semaphores ...

And ... You're sticky, now :-)

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 7:22 am
by Solar
Hm... I see the point.

One possible solution would be the "Category" feature of PhpWiki: add a link "CategoryGlossary" at the bottom of each such glossary page. That way, it is possible to list all "glossary" pages on the "CategoryGlossary" page (by using a feature of PhpWiki allowing to list all pages linking the current one); linking the Category page without showing up in the list (i.e., from HomePage) would be possible by writing Category:Glossary (note the colon). For that setup to work would require a minor adjustment by df (changing a locked page), but it could help somewhat.

Would that be satisfying?

(Sorry, df, for messing so much with the admin side of things, but with you gone hi[k|d]ing and me knowing PhpWiki rather well... 8) )

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 8:03 am
by Pype.Clicker
Also, i guess it would be good practice if people that perform page merges could put a banner like

Code: Select all

----
   This page is about to be merged down into <collecting page URL>
----
before you start the merge and

Code: Select all

----
   This page has been merged down into <collecting page URL>
----
when you're done, so that other people do not start editting that page in the meantime ...

Re:Working on the OS FAQ

Posted: Fri Feb 13, 2004 12:50 pm
by Solar
He, sorry about that - your ext2fs edits are now where they belong. ;-)

I don't expect much "merging" to happen now that the old FAQ is... well, merged. And PhpWiki handles concurent edits to the same page quite well. But you're right, after doing something radical you should check out the RecentEdits about an hour later to see if someone else was "around" the same time...

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 6:20 am
by Pype.Clicker
http://www.osdev.org/osfaq2/index.php/C ... 0kernel%3F

looks a bit weird to me ... i was expecting some informations like 'what kind of magic should i write to have new and delete ?' for instance assuming that we have a

Code: Select all

Object Pool[MAX_OBJECTS]
, how can one write a operator that returns

Code: Select all

Pool[i++]
as the result of new Object ?
And if one has a kmalloc() implemetation done, how can (s)he create a generic new operator that will call kmalloc regardless of which object is to be created -- and possibly without having to make all the objects sub-classes of class Kmalloc_allocated ...

Btw, do we included informations about constructor lists ? i think there's some info about this in the tutorial from www.InvalidSoftware.something ...

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 12:10 pm
by Solar
Pype.Clicker wrote: i was expecting some informations like 'what kind of magic should i write to have new and delete ?'...
Yes... I'll write that as soon as I tested it in FirstStep. ;-)
...assuming that we have a

Code: Select all

Object Pool[MAX_OBJECTS]
, how can one write a operator that returns

Code: Select all

Pool[i++]
as the result of new Object ?
Uh... not sure what you mean, here. Unless I'm mistaken, declaring Object Pool[MAX_OBJECTS] does not call constructors... and... writing an operator? [me=Solar]is confused.[/me]
And if one has a kmalloc() implemetation done, how can (s)he create a generic new operator that will call kmalloc regardless of which object is to be created -- and possibly without having to make all the objects sub-classes of class Kmalloc_allocated ...
I think the solution there is very easy, but I don't want to post stuff I haven't verified to work.
Btw, do we included informations about constructor lists ?
Not yet, and those I have working. Will write to FAQ Wiki ASAP.

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 12:31 pm
by Adek336
've put working code examples for new, new[], delete and delete[].

I think there was a way to pass multiple arguments to new, but can't remember how. Perhpaps someone?

Code: Select all

char *ch = new char [0x100] "allocating buffer for scanf...";
Cheers,
Adrian

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 1:18 pm
by Tim
I think the syntax goes like this:

Code: Select all

char *ch = new("allocating buffer for scanf...") char [0x100];
// ...
void *new(size_t bytes, const char *message)
{
    return my_malloc(bytes, message);
}

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 3:53 pm
by Pype.Clicker
doh ? the small hints in the bottom of the Wiki Edit page says that <code> and <tt> html tags are allowed, but it doesn't look like being interpreted at all ... is there a working way to fontify code as code rather as plain text ?

Re:Working on the OS FAQ

Posted: Mon Feb 16, 2004 10:45 pm
by Solar
For inline code (like, writing about malloc() and wanting malloc() to be in monospace) use enclosing "=", as in =malloc()=.

For code blocks, use either <pre> or <verbatim>. <pre> allows you to use Wiki markup in the code (like, making a certain statement inline), while <verbatim> suppresses all further markup.

When using <pre>, beware of FunctionNames() as they are Wiki words and are rendered as links. Use Preview! ;-)

Re:Working on the OS FAQ

Posted: Tue Feb 17, 2004 2:29 am
by Pype.Clicker
weird ... that works @work but not @home ... my xfsTrueType server definitely needs a revision ...

Re:Working on the OS FAQ

Posted: Tue Feb 17, 2004 6:14 am
by Candy
Solar wrote: For code blocks, use either <pre> or <verbatim>. <pre> allows you to use Wiki markup in the code (like, making a certain statement inline), while <verbatim> suppresses all further markup.
<verbatim> isn't html.