|
|
|
@ -14,6 +14,7 @@
|
|
|
|
#include "arch/ioapic.h"
|
|
|
|
#include "arch/ioapic.h"
|
|
|
|
#include "user/app1/appl.h"
|
|
|
|
#include "user/app1/appl.h"
|
|
|
|
#include "sync/ticketlock.h"
|
|
|
|
#include "sync/ticketlock.h"
|
|
|
|
|
|
|
|
|
|
|
|
TextStream kout = TextStream(0, 80, 0, 10, true);
|
|
|
|
TextStream kout = TextStream(0, 80, 0, 10, true);
|
|
|
|
|
|
|
|
|
|
|
|
//TextStream dout[8] = {
|
|
|
|
//TextStream dout[8] = {
|
|
|
|
@ -26,6 +27,7 @@ TextStream kout = TextStream(0, 80, 0, 10, true);
|
|
|
|
// TextStream(0 ,0 ,0, 0,false),
|
|
|
|
// TextStream(0 ,0 ,0, 0,false),
|
|
|
|
// TextStream(0 ,0 ,0, 0,false),
|
|
|
|
// TextStream(0 ,0 ,0, 0,false),
|
|
|
|
//};
|
|
|
|
//};
|
|
|
|
|
|
|
|
|
|
|
|
TextStream dout[Core::MAX] = {
|
|
|
|
TextStream dout[Core::MAX] = {
|
|
|
|
{0, 40, 10, 14},
|
|
|
|
{0, 40, 10, 14},
|
|
|
|
{40, 80, 10, 14},
|
|
|
|
{40, 80, 10, 14},
|
|
|
|
@ -47,6 +49,7 @@ CopyStream copystream[Core::MAX]{
|
|
|
|
{&dout[6], &sout},
|
|
|
|
{&dout[6], &sout},
|
|
|
|
{&dout[7], &sout},
|
|
|
|
{&dout[7], &sout},
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
Ticketlock ticketlock;
|
|
|
|
Ticketlock ticketlock;
|
|
|
|
|
|
|
|
|
|
|
|
OutputStream* copyout[Core::MAX]{
|
|
|
|
OutputStream* copyout[Core::MAX]{
|
|
|
|
@ -112,10 +115,9 @@ extern "C" int main_ap() {
|
|
|
|
<< static_cast<int>(LAPIC::getID()) << " in main_ap()" << endl;
|
|
|
|
<< static_cast<int>(LAPIC::getID()) << " in main_ap()" << endl;
|
|
|
|
Core::Interrupt::enable();
|
|
|
|
Core::Interrupt::enable();
|
|
|
|
|
|
|
|
|
|
|
|
DBG << "test\n" << flush;
|
|
|
|
DBG << "App CPU " << static_cast<int>(Core::getID()) << endl << flush;
|
|
|
|
DBG << static_cast<int>(LAPIC::getID()) << endl << flush;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
assert(Core::getID() != 1);
|
|
|
|
//assert(Core::getID() != 1);
|
|
|
|
Application{}.action();
|
|
|
|
Application{}.action();
|
|
|
|
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
return 0;
|
|
|
|
|